On the Implementation of Concurrent Calculi in Net Calculi: Two Case Studies

Concurrent calculi, such as CCS, are defined in terms of labelled transition system; similarly, here we introduce the notion of net (or distributed) calculus, which is defined through a place/transition Petri net. As a first case study, a simple calculus of nets, called SCONE, is proposed. Relationships between SCONE and the subset of CCS without restriction and relabelling, called RCCS, are studied by showing that RCCS can be implemented in SCONE through a suitable mapping from the transition system for RCCS to net for SCONE. In particular, the complex CCS operation of global choice is implemented in terms of the SCONE finer grained operation of local choice, making explicit the fact that certain CCS transition are implemented as SCONE computations to be executed atomically. The result is a finite net implementation for RCCS agents. By making the quotient of the RCCS transition system w.r.t. the implementation mapping, we induce a truly concurrent semantics for RCCS. The second case study is then concerned with an extension dealing with restriction and relabelling. The resulting net calculus, called SCONE+, is exploited as an implementation language for full CCS. The truly concurrent semantics induced by the implementation mapping is proved to coincide with the so-called “permutation-of-transitions” sematics.

[1]  Ugo Montanari,et al.  Axiomatizing net computations and processes , 1989, [1989] Proceedings. Fourth Annual Symposium on Logic in Computer Science.

[2]  David Park,et al.  Concurrency and Automata on Infinite Sequences , 1981, Theoretical Computer Science.

[3]  Gian Luigi Ferrari,et al.  Towards the Unification of Models for Concurrency , 1990, CAAP.

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

[5]  J. Meseguer Rewriting as a unified model of concurrency , 1990, OOPSLA/ECOOP '90.

[6]  Ilaria Castellani,et al.  Three Equivalent Semantics for CCS , 1990, Semantics of Systems of Concurrent Processes.

[7]  S. Lane Categories for the Working Mathematician , 1971 .

[8]  Gian Luigi Ferrari,et al.  Unifying models of concurrency , 1990 .

[9]  Robert M. Keller,et al.  Formal verification of parallel programs , 1976, CACM.

[10]  Roberto Gorrieri,et al.  Distributed Conflicts in Communicating Systems , 1994, ECOOP Workshop.

[11]  Daniel Le Métayer,et al.  Programming by multiset transformation , 1993, CACM.

[12]  Gian Luigi Ferrari,et al.  Transition Systems with Algebraic Structure as Models of Computations , 1990, Semantics of Systems of Concurrent Processes.

[13]  Gérard Berry,et al.  The chemical abstract machine , 1989, POPL '90.

[14]  Ursula Goltz On Representing CCS Programs by Finite Petri Nets , 1988, MFCS.

[15]  José Meseguer,et al.  Petri Nets Are Monoids , 1990, Inf. Comput..

[16]  Ugo Montanari,et al.  An Algebraic View of Interleaving and Distributed Operational Semantics for CCS , 1989, Category Theory and Computer Science.

[17]  Arend Rensink,et al.  Finite Petri Nets as Models for Recursive Causal Behaviour , 1994, Theor. Comput. Sci..

[18]  Vincenzo Manca,et al.  Equational Type Logic , 1990, Theor. Comput. Sci..

[19]  Nicholas Carriero,et al.  Linda in context , 1989, CACM.

[20]  Roberto Gorrieri,et al.  Distributed Implementation of CCS , 1991, Applications and Theory of Petri Nets.

[21]  Raymond R. Devillers,et al.  Sequential and Concurrent Behaviour in Petri Net Theory , 1987, Theor. Comput. Sci..

[22]  Ugo Montanari,et al.  Partial ordering derivations for CCS , 1985, FCT.

[23]  Jean-Pierre Banâtre,et al.  Parallel Program Design , 1991, Research Directions in High-Level Parallel Programming Languages.

[24]  Glynn Winskel,et al.  Petri Nets, Algebras, Morphisms, and Compositionality , 1987, Inf. Comput..

[25]  Roberto Gorrieri,et al.  SCONE: A Simple Calculus of Nets , 1990, CONCUR.

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

[27]  Ilaria Castellani,et al.  Permutation of transitions: An event structure semantics for CCS and SCCS , 1988, REX Workshop.

[28]  Robin Milner,et al.  A Complete Inference System for a Class of Regular Behaviours , 1984, J. Comput. Syst. Sci..

[29]  Roberto Gorrieri,et al.  A2CCKS: Atomic Actions for CCS , 1990, Theor. Comput. Sci..

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

[31]  Rocco De Nicola,et al.  A Partial Ordering Semantics for CCS , 1990, Theor. Comput. Sci..

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

[33]  Roberto Gorrieri,et al.  An Exercise in Concurrency: a CSP Process as a Condition/ event System , 1988, European Workshop on Applications and Theory of Petri Nets.

[34]  Vadim E. Kotov,et al.  An Algebra for Parallelism Based on Petri Nets , 1978, MFCS.