Synthesising CCS bisimulation using graph rewriting

The paper presents a case study on the synthesis of labelled transition systems (ltss) for process calculi, choosing as testbed Milner's Calculus of Communicating System (ccs). The proposal is based on a graphical encoding: each ccs process is mapped into a graph equipped with suitable interfaces, such that the denotation is fully abstract with respect to the usual structural congruence. Graphs with interfaces are amenable to the synthesis mechanism proposed by Ehrig and Konig and based on borrowed contexts (bcs), an instance of relative pushouts originally introduced by Milner and Leifer. The bc mechanism allows the effective construction of an lts that has graphs with interfaces as both states and labels, and such that the associated bisimilarity is automatically a congruence. Our paper focuses on the analysis of the lts distilled by exploiting the encoding of ccs processes: besides offering major technical contributions towards the simplification of the bc mechanism, a key result of our work is the proof that the bisimilarity on processes obtained via bcs coincides with the standard strong bisimilarity for ccs.

[1]  Mario Tokoro,et al.  On Asynchronous Communication Semantics , 1991, Object-Based Concurrent Computing.

[2]  Robin Milner,et al.  Deriving Bisimulation Congruences for Reactive Systems , 2000, CONCUR.

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

[4]  Joost Engelfriet,et al.  Multisets and Structural Congruence of the pi-Calculus with Replication , 1999, Theor. Comput. Sci..

[5]  Julian Rathke,et al.  Deriving Structural Labelled Transitions for Mobile Ambients , 2008, CONCUR.

[6]  Björn Victor,et al.  The fusion calculus: expressiveness and symmetry in mobile processes , 1998, Proceedings. Thirteenth Annual IEEE Symposium on Logic in Computer Science (Cat. No.98CB36226).

[7]  Fabio Gadducci,et al.  Labeled Transitions for Mobile Ambients , 2008 .

[8]  Oscar Nierstrasz,et al.  Object-Based Concurrent Computing , 1991, Lecture Notes in Computer Science.

[9]  Robin Milner,et al.  Bigraphs and transitions , 2003, POPL '03.

[10]  Ugo Montanari,et al.  Saturated Semantics for Reactive Systems , 2006, 21st Annual IEEE Symposium on Logic in Computer Science (LICS'06).

[11]  Fabio Gadducci,et al.  An Algebraic Presentation of Term Graphs, via GS-Monoidal Categories , 1999, Appl. Categorical Struct..

[12]  Michael Barr,et al.  Category theory for computing science , 1995, Prentice Hall International Series in Computer Science.

[13]  Hartmut Ehrig,et al.  Deriving bisimulation congruences in the DPO approach to graph rewriting with borrowed contexts , 2006, Mathematical Structures in Computer Science.

[14]  Fabio Gadducci,et al.  An inductive view of graph transformation , 1997, WADT.

[15]  Philippa Gardner,et al.  Explicit fusions , 2000, Theor. Comput. Sci..

[16]  Pawel Sobocinski,et al.  Adhesive and quasiadhesive categories , 2005, RAIRO Theor. Informatics Appl..

[17]  Marino Miculan,et al.  Reactive Systems over Directed Bigraphs , 2007, CONCUR.

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

[19]  Mario Tokoro,et al.  An Object Calculus for Asynchronous Communication , 1991, ECOOP.

[20]  Reiko Heckel,et al.  A Bi-Categorical Axiomatisation of Concurrent Graph Rewriting , 1999, CTCS.

[21]  Fabio Gadducci,et al.  Term Graph Rewriting for the pi-Calculus , 2003, APLAS.

[22]  Hartmut Ehrig,et al.  Adhesive High-Level Replacement Categories and Systems , 2004, ICGT.

[23]  Hartmut Ehrig,et al.  Concurrent semantics of algebraic graph transformations , 1999 .

[24]  Hartmut Ehrig,et al.  Handbook of graph grammars and computing by graph transformation: vol. 3: concurrency, parallelism, and distribution , 1999 .

[25]  Francesco Zappa Nardelli,et al.  Behavioural Theory for Mobile Ambients , 2004, IFIP TCS.

[26]  Robin Milner,et al.  The Polyadic π-Calculus: a Tutorial , 1993 .

[27]  Hartmut Ehrig,et al.  Fundamentals of Algebraic Graph Transformation , 2006, Monographs in Theoretical Computer Science. An EATCS Series.

[28]  Peter Sewell,et al.  From rewrite rules to bisimulation congruences , 2002, Theor. Comput. Sci..

[29]  Vladimiro Sassone,et al.  Deriving Bisimulation Congruences using 2-categories , 2003, Nord. J. Comput..

[30]  Hartmut Ehrig,et al.  Deriving Bisimulation Congruences in the DPO Approach to Graph Rewriting , 2004, FoSSaCS.

[31]  Fabio Gadducci,et al.  A Concurrent Graph Semantics for Mobile Ambients , 2001, MFPS.

[32]  Fabio Gadducci,et al.  Process Bisimulation Via a Graphical Encoding , 2006, ICGT.

[33]  Robin Milner,et al.  Pure bigraphs: Structure and dynamics , 2006, Inf. Comput..

[34]  Michael Barr,et al.  Category theory for computing science (2. ed.) , 1995, Prentice Hall international series in computer science.

[35]  Fabio Gadducci,et al.  Graph Processes with Fusions: Concurrency by Colimits, Again , 2005, Formal Methods in Software and Systems Modeling.

[36]  Francesca Rossi,et al.  Graph Processes , 1996, Fundam. Informaticae.

[37]  Luca Cardelli,et al.  Mobile Ambients , 1998, FoSSaCS.

[38]  Hartmut Ehrig,et al.  Composition and Decomposition of DPO Transformations with Borrowed Context , 2006, ICGT.

[39]  Vladimiro Sassone,et al.  Reactive systems over cospans , 2005, 20th Annual IEEE Symposium on Logic in Computer Science (LICS' 05).

[40]  Gilles Dowek,et al.  Principles of programming languages , 1981, Prentice Hall International Series in Computer Science.

[41]  Hartmut Ehrig,et al.  Fundamentals of Algebraic Graph Transformation (Monographs in Theoretical Computer Science. An EATCS Series) , 1992 .