On the Emergence of Properties in Component-Based Systems

When several components are interconnected to form a complex system, they may exhibit more properties (individually) than they had when considered in isolation. When we consider a category SPEC of component specifications taken as theories in some logic, properties are expressed as sentences of the underlying logic, and emergence of properties can be characterised by the fact that the morphisms that connect component specifications to the system specification are not conservative. Depending on the relationship that can be established between SPEC and a corresponding category PROG of programs, we show that such emergence phenomena can be interpreted in more than one way: (1) considering an individual component, the rest of the system is acting as a “regulator” for that component which, therefore, has a more constrained behaviour and exhibits more properties; (2) the overall good behaviour of the system requires cooperation of the components (some sort of sociability with regard to the rest of the system) which gives rise to the emergence of new properties. Some of these forms of sociability are characterised and related to well known properties of concurrent systems such as fairness and, more generally, to the assumptions that are made on the environment in rely-guarantee styles of specification.

[1]  Donald Sannella,et al.  Specifications in an Arbitrary Institution , 1988, Inf. Comput..

[2]  R. Kurki-Suonio,et al.  Action system approach to the specification and design of distributed systems , 1989, IWSSD '89.

[3]  Ira R. Forman,et al.  Superimposition for Interacting Processes , 1990, CONCUR.

[4]  Joseph A. Goguen,et al.  Institutions: abstract model theory for specification and programming , 1992, JACM.

[5]  K. Mani Chandy,et al.  Parallel program design - a foundation , 1988 .

[6]  Martín Abadi,et al.  Composing Specifications , 1989, REX Workshop.

[7]  Joseph A. Goguen,et al.  Putting Theories Together to Make Specifications , 1977, IJCAI.

[8]  José Luiz Fiadeiro,et al.  Interconnecting formalisms: supporting modularity, reuse and incrementality , 1995, SIGSOFT FSE.

[9]  Simon L. Peyton Jones,et al.  Imperative functional programming , 1993, POPL '93.

[10]  Shmuel Katz,et al.  A superimposition control construct for distributed systems , 1993, TOPL.

[11]  Joseph A. Goguen,et al.  Mathematical Representation of Hierarchically Organized Systems , 1970 .

[12]  R. Goldblatt Logics of Time and Computation , 1987 .

[13]  Yonghao Ma,et al.  CATEGORICAL APPROACH TO GENERAL SYSTEMS THEORY , 1992 .

[14]  Susanna Ginali,et al.  A Categorical Approach to General Systems , 1978 .

[15]  Zohar Manna,et al.  The Temporal Logic of Reactive and Concurrent Systems , 1991, Springer New York.

[16]  Donald Sannella,et al.  Building Specifications in an Arbitrary Institution , 1984, Semantics of Data Types.

[17]  José Luiz Fiadeiro,et al.  Categorical Semantics of Parallel Program Design , 1997, Sci. Comput. Program..

[18]  Pierre Collette,et al.  Application of the Composition Principle to Unity-like Specifications , 1993, TAPSOFT.

[19]  K. Mani Chandy Parallel program design , 1989 .

[20]  Nissim Francez,et al.  A compositional approach to superimposition , 1988, POPL '88.

[21]  Ralph-Johan Back,et al.  Distributed cooperation with action systems , 1988, TOPL.