Superimposition for Interacting Processes

The paper defines an operator for superimposition, in contrast to previous transformational views. It does so in the context of the multiparty interaction as the primitive for synchronization and interprocess communication in distributed programs. The operator is given a (structured) operational semantics, and some aspects of its methodological importance are discussed. The papers distills the essentials of superimposition, in contrast to other approaches where its role is mixed with other programming aspects. A simple example of its use is provided. Large design examples and more details are presented elsewhere.

[1]  Nissim Francez,et al.  Distributed Termination , 1980, TOPL.

[2]  Leslie Lamport,et al.  Distributed snapshots: determining global states of distributed systems , 1985, TOCS.

[3]  Pierre A. Humblet A Distributed Algorithm for Minimum Weight Directed Spanning Trees , 1983, IEEE Trans. Commun..

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

[5]  Nir Shavit,et al.  A New Approach to Detection of Locally Indicative Stability , 1986, ICALP.

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

[7]  Abraham Silberschatz,et al.  An Effective Implementation for the Generalized Input-Output Construct of CSP , 1983, TOPL.

[8]  Pierre A. Humblet,et al.  A Distributed Algorithm for Minimum-Weight Spanning Trees , 1983, TOPL.

[9]  C. A. R. Hoare,et al.  Communicating Sequential Processes (Reprint) , 1983, Commun. ACM.

[10]  Nissim Francez,et al.  Fair termination of communicating processes , 1984, PODC '84.

[11]  Shay Kutten,et al.  A modular technique for the design of efficient distributed leader finding algorithms , 1985, PODC 1985.

[12]  Benoit Caillaud The superimposition of ESTELLE programs : a tool for the implementation of observation and control algorithms , 1989 .

[13]  Eli Gafni,et al.  Perspectives on Distributed Network Protocols: A Case for Building Blocks , 1986, MILCOM 1986 - IEEE Military Communications Conference: Communications-Computers: Teamed for the 90's.

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

[15]  Ira R. Forman,et al.  Conflict propagation , 1990, Proceedings. 1990 International Conference on Computer Languages.

[16]  Edsger W. Dijkstra,et al.  Guarded commands, nondeterminacy and formal derivation of programs , 1975, Commun. ACM.

[17]  Edsger W. Dijkstra,et al.  Termination Detection for Diffusing Computations , 1980, Inf. Process. Lett..

[18]  Shmuel Katz,et al.  Appraising fairness in distributed languages , 1987, POPL '87.

[19]  Willem P. de Roever,et al.  A Correctness Proof of a Distributed Minimum-Weight Spanning Tree Algorithm (extended abstract) , 1987, ICDCS.

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

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

[22]  Nissim Francez,et al.  Fairness and hyperfairness in multi-party interactions , 1989, POPL '90.

[23]  Gordon Plotkin,et al.  An Operational Semantics for CSP. , 1982 .

[24]  Ira R. Forman,et al.  Language Constructs for Distributed Systems , 1990, Programming Concepts and Methods.

[25]  Nissim Francez Cooperating Proofs for Distributed Programs with Multiparty Interactions , 1989, Inf. Process. Lett..

[26]  Nissim Francez,et al.  Decomposition of Distributed Programs into Communication-Closed Layers , 1982, Sci. Comput. Program..