Flexible Subtyping Relations for Component-Oriented Formalisms
In the first part of this paper we present a new general component-oriented formalism, which has, among others, the following features: Concurrency, atomicity, synchronization between and inside components, and modularity. We give the inference rules which may be used to inductively build the semantics of composed components. The second part of the paper addresses the problem of substitutability and consists in the definition of a very general and flexible notion of subtyping; This notion of subtyping depends on a set of properties we are interested in preserving during the substitution and a special "observer" component which filters or adds behaviours to the components we are trying to substitute. The buffer example is used to illustrate the definitions.