Asynchronous Box Calculus

The starting point of this paper is an algebraic Petri net framework allowing one to express net compositions, such as iteration and parallel composition, as well as transition synchronisation and restriction. We enrich the original model by introducing new constructs supporting asynchronous interprocess communication. Such a communication is made possible thanks to special 'buffer' places where different transitions (processes) may deposit and remove tokens. We also provide an abstraction mechanism, which hides buffer places, effectively making them private to the processes communicating through them. We then provide an algebra of process expressions, whose constants and operators directly correspond to those used in the Petri net framework. Such a correspondence is used to associate nets to process expressions in a compositional way. That the resulting algebra of expressions is consistent with the net algebra is demonstrated by showing that an expression and the corresponding net generate isomorphic transition systems. This results in the Asynchronous Box Calculus (or ABC), which is a coherent dual model, based on Petri nets and process expressions, suitable for modelling and analysing distributed systems whose components can interact using both synchronous and asynchronous communication.

[1]  Ugo Montanari,et al.  A distributed operational semantics for CCSbased on C/E systems , 1988 .

[2]  Wolfgang Reisig,et al.  Deterministic buffer synchronization of sequential processes , 1982, Acta Informatica.

[3]  Twan Basten,et al.  An Algebraic Semantics for Hierarchical P/T Nets , 1995, Application and Theory of Petri Nets.

[4]  Ilaria Castellani,et al.  Flow Models of Distributed Computations: Three Equivalent Semantics for CCS , 1994, Inf. Comput..

[5]  Raymond R. Devillers,et al.  The box calculus: a new causal algebra with multi-label communication , 1992, Advances in Petri Nets: The DEMON Project.

[6]  Ernst-Rüdiger Olderog,et al.  Nets, terms and formulas , 1991 .

[7]  Franck Pommereau FIFO buffers in tie sauce , 2000 .

[8]  Rob J. van Glabbeek,et al.  Petri Net Models for Algebraic Theories of Concurrency , 1987, PARLE.

[9]  Wolfgang Reisig Petri Nets: An Introduction , 1985, EATCS Monographs on Theoretical Computer Science.

[10]  C. A. R. Hoare,et al.  Communicating sequential processes , 1978, CACM.

[11]  Manfred Broy,et al.  Trace-Oriented Models of Concurrency , 2001, Handbook of Process Algebra.

[12]  Roy Fisher,et al.  It Follows That , 1994 .

[13]  Maciej Koutny,et al.  Operational and Denotational Semantics for the Box Algebra , 1999, Theor. Comput. Sci..

[14]  P. S. Thiagarajan,et al.  An Event Structure Semantics for General Petri Nets , 1996, Theor. Comput. Sci..

[15]  Richard P. Hopkins,et al.  B(PN)2 - a Basic Petri Net Programming Notation , 1993, PARLE.

[16]  Hanna Klaudel,et al.  A Concurrent and Compositional Petri Net Semantics of Preemption , 2000, IFM.

[17]  Roberto Gorrieri,et al.  On the Implementation of Concurrent Calculi in Net Calculi: Two Case Studies , 1995, Theor. Comput. Sci..

[18]  Ryszard Janicki,et al.  Specification and Analysis of Concurrent Systems: The Cosy Approach , 1992 .

[19]  Ugo Montanari,et al.  Combining CCS and Petri Nets Via Structural Axioms , 1994, Fundam. Informaticae.

[20]  W. F. Osgood Introduction to the calculus , 1922 .

[21]  Joachim Parrow,et al.  An Introduction to the π-Calculus , 2001, Handbook of Process Algebra.

[22]  Gordon D. Plotkin,et al.  A structural approach to operational semantics , 2004, J. Log. Algebraic Methods Program..

[23]  Maciej Koutny,et al.  A Unified Model for Nets and Process Algebras , 2001, Handbook of Process Algebra.

[24]  Hanna Klaudel Parameterized M-expression semantics of parallel procedures , 2000 .

[25]  Hanna Klaudel,et al.  Asynchronous Links in the PBC and M-Nets , 1999, ASIAN.

[26]  Dirk Taubner,et al.  Finite Representations of CCS and TCSP Programs by Automata and Petri Nets , 1989, Lecture Notes in Computer Science.

[27]  Rita Loogen,et al.  Modelling nondeterministic concurrent processes with event structures , 1991, Fundam. Informaticae.

[28]  Maciej Koutny,et al.  Operational Semantics for PBC with Asynchronous Communication , 2002 .

[29]  Robin Milner,et al.  Communication and concurrency , 1989, PHI Series in computer science.