scispace - formally typeset
Open AccessDissertation

An algebraic theory of componentised interaction

Chris Chilton
Reads0
Chats0
TLDR
This thesis provides a specification theory with strong algebraic and compositionality properties, allowing for the systematic construction of new components out of existing ones, while ensuring that given properties continue to hold at each stage of system development.
Abstract
This thesis provides a specification theory with strong algebraic and compositionality properties, allowing for the systematic construction of new components out of existing ones, while ensuring that given properties continue to hold at each stage of system development. The theory shares similarities with the interface automata of de Alfaro and Henzinger, but is linear-time in the style of Dill's trace theory, and is endowed with a richer collection of operators. Components are assumed to communicate with one another by synchronisation of input and output actions, with the component specifying the allowed sequences of interactions between itself and the environment. When the environment produces an interaction that the component is unwilling to receive, a communication mismatch occurs, which can correspond to run-time error or underspecification. These are modelled uniformly as inconsistencies. A linear-time refinement preorder corresponding to substitutivity preserves the absence of inconsistency under all environments, allowing for the safe replacement of components at run-time. To build complex systems, a range of compositional operators are introduced, including parallel composition, logical conjunction and disjunction, hiding, and quotient. These can be used to examine the structural behaviour of a system, combine independently developed requirements, abstract behaviour, and incrementally synthesise missing components, respectively. It is shown that parallel composition is monotonic under refinement, conjunction and disjunction correspond to the meet and join operations on the refinement preorder, and quotient is the adjoint of parallel composition. Full abstraction results are presented for the equivalence defined as mutual refinement, a consequence of the refinement being the weakest preorder capturing substitutivity. Extensions of the specification theory with progress-sensitivity (ensuring that refinement cannot introduce quiescence) and real-time constraints on when interactions may and may not occur are also presented. These theories are further complemented by assume-guarantee frameworks for supporting component-based reasoning, where contracts (characterising sets of components) separate the assumptions placed on the environment from the guarantees provided by the components. By defining the compositional operators directly on contracts, sound and complete assume-guarantee rules are formulated that preserve both safety and progress. Examples drawn from distributed systems are used to demonstrate how these rules can be used for mechanically deriving component-based designs.

read more

Content maybe subject to copyright    Report

Citations
More filters

Forward and backward simulations

TL;DR: In this article, a general automaton model for timing-based systems is presented and used as the context for developing a variety of simulation proof techniques for such systems, including refinements, forward and backward simulations, hybrid forward?backward and backward?forward simulations, and history and prophecy relations.
Journal ArticleDOI

An algebraic theory of interface automata

TL;DR: A trace-based linear-time refinement is provided, which is the weakest preorder preserving substitutivity of components, and is weaker than the classical alternating simulation defined on interface automata.
Journal ArticleDOI

Compositional Assume-Guarantee Reasoning for Input/Output Component Theories

TL;DR: A sound and complete assume-guarantee framework for reasoning compositionally about components modelled as a variant of interface automata, which supports dynamic reasoning about components and specications and includes rules for parallel composition, logical conjunction and disjunction corresponding to independent development, and quotient for incremental synthesis.
Journal ArticleDOI

Richer interface automata with optimistic and pessimistic compatibility

TL;DR: This paper repaired a compositional flaw of IOMTS-refinement and introduced a conjunction operator in interface theory MIA, and defines, for the first-time in a pessimistic, non-deterministic setting, conjunction and disjunction on interfaces.
Book ChapterDOI

Nondeterministic Modal Interfaces

TL;DR: This solution resolves the longstanding conflict between unspecified inputs being allowed in IA but forbidden in MTS, and achieves an associative parallel composition, a compositional preorder, a conjunction on interfaces with dissimilar alphabets supporting perspective-based specifications, and a quotienting operator for decomposing nondeterministic specifications in a single theory.
References
More filters
Journal ArticleDOI

Communicating sequential processes

TL;DR: It is suggested that input and output are basic primitives of programming and that parallel composition of communicating sequential processes is a fundamental program structuring method.
Journal ArticleDOI

A theory of timed automata

TL;DR: Alur et al. as discussed by the authors proposed timed automata to model the behavior of real-time systems over time, and showed that the universality problem and the language inclusion problem are solvable only for the deterministic automata: both problems are undecidable (II i-hard) in the non-deterministic case and PSPACE-complete in deterministic case.
Journal ArticleDOI

On the criteria to be used in decomposing systems into modules

TL;DR: In this paper, the authors discuss modularization as a mechanism for improving the flexibility and comprehensibility of a system while allowing the shortening of its development time, and the effectiveness of modularization is dependent upon the criteria used in dividing the system into modules.
Journal Article

An Axiomatic Basis for Computer Programming

Related Papers (5)