1,058 research outputs found
Reo + mCRL2: A Framework for Model-Checking Dataflow in Service Compositions
The paradigm of service-oriented computing revolutionized the field of software
engineering. According to this paradigm, new systems are composed of existing
stand-alone services to support complex cross-organizational business
processes. Correct communication of these services is not possible without a
proper coordination mechanism. The Reo coordination language is a channel-based
modeling language that introduces various types of channels and their
composition rules. By composing Reo channels, one can specify Reo connectors
that realize arbitrary complex behavioral protocols. Several formalisms have
been introduced to give semantics to Reo. In their most basic form, they
reflect service synchronization and dataflow constraints imposed by connectors.
To ensure that the composed system behaves as intended, we need a wide range of
automated verification tools to assist service composition designers. In this
paper, we present our framework for the verification of Reo using the mCRL2
toolset. We unify our previous work on mapping various semantic models for Reo,
namely, constraint automata, timed constraint automata, coloring semantics and
the newly developed action constraint automata, to the process algebraic
specification language of mCRL2, address the correctness of this mapping,
discuss tool support, and present a detailed example that illustrates the use
of Reo empowered with mCRL2 for the analysis of dataflow in service-based
process models
An extensive English language bibliography on graph theory and its applications, supplement 1
Graph theory and its applications - bibliography, supplement
DSA-aware multiple patterning for the manufacturing of vias: Connections to graph coloring problems, IP formulations, and numerical experiments
In this paper, we investigate the manufacturing of vias in integrated
circuits with a new technology combining lithography and Directed Self Assembly
(DSA). Optimizing the production time and costs in this new process entails
minimizing the number of lithography steps, which constitutes a generalization
of graph coloring. We develop integer programming formulations for several
variants of interest in the industry, and then study the computational
performance of our formulations on true industrial instances. We show that the
best integer programming formulation achieves good computational performance,
and indicate potential directions to further speed-up computational time and
develop exact approaches feasible for production
Defect tolerance: fundamental limits and examples
This paper addresses the problem of adding redundancy to a collection of physical objects so that the overall system is more robust to failures. In contrast to its information counterpart, which can exploit parity to protect multiple information symbols from a single erasure, physical redundancy can only be realized through duplication and substitution of objects. We propose a bipartite graph model for designing defect-tolerant systems, in which the defective objects are replaced by the judiciously connected redundant objects. The fundamental limits of this model are characterized under various asymptotic settings and both asymptotic and finite-size systems that approach these limits are constructed. Among other results, we show that the simple modular redundancy is in general suboptimal. As we develop, this combinatorial problem of defect tolerant system design has a natural interpretation as one of graph coloring, and the analysis is significantly different from that traditionally used in information redundancy for error-control codes.©201
Synthesizing Short-Circuiting Validation of Data Structure Invariants
This paper presents incremental verification-validation, a novel approach for
checking rich data structure invariants expressed as separation logic
assertions. Incremental verification-validation combines static verification of
separation properties with efficient, short-circuiting dynamic validation of
arbitrarily rich data constraints. A data structure invariant checker is an
inductive predicate in separation logic with an executable interpretation; a
short-circuiting checker is an invariant checker that stops checking whenever
it detects at run time that an assertion for some sub-structure has been fully
proven statically. At a high level, our approach does two things: it statically
proves the separation properties of data structure invariants using a static
shape analysis in a standard way but then leverages this proof in a novel
manner to synthesize short-circuiting dynamic validation of the data
properties. As a consequence, we enable dynamic validation to make up for
imprecision in sound static analysis while simultaneously leveraging the static
verification to make the remaining dynamic validation efficient. We show
empirically that short-circuiting can yield asymptotic improvements in dynamic
validation, with low overhead over no validation, even in cases where static
verification is incomplete
- …