Open Bisimulation for the Concurrent Constraint Pi-Calculus

The concurrent constraint pi-calculus (cc-pi-calculus) has been introduced as a model for concluding Service Level Agreements. The cc-pi calculus combines the synchronous communication paradigm of process calculi with the constraint handling mechanism of concurrent constraint programming. While in the original presentation of the calculus a reduction semantics has been proposed, in this work we investigate the abstract semantics of cc-pi processes. First, we define a labelled transition system of the calculus and a notion of open bisimilarity a la pi-calculus that is proved to be a congruence. Next, we give a symbolic characterisation of bisimulation and we prove that the two semantics coincide. Essentially, two processes are open bisimilar if they have the same stores of constraints - this can be statically checked - and if their moves can be mutually simulated. A key idea of the symbolic transition system is to have 'contextual' labels, i.e. labels specifying that a process can evolve only in presence of certain constraints. Finally, we show that the polyadic Explicit Fusions calculus introduced by Gardner and Wischik can be translated into monadic cc-pi and that such a transition preserves open bisimilarity. The mapping exploits fusions and tuple unifications as constraints.

[1]  Brian Campbell,et al.  Amortised Memory Analysis Using the Depth of Data Structures , 2009, ESOP.

[2]  Robin Milner,et al.  A Calculus of Mobile Processes, II , 1992, Inf. Comput..

[3]  Sergiu Rudeanu,et al.  Semirings in Operations Research and Computer Science: More Algebra , 2004, Fundam. Informaticae.

[4]  Camilo Rueda,et al.  Pi+- Calculus: A Calculus for Concurrent Processes with Constraints , 1998, CLEI Electron. J..

[5]  Robin Milner,et al.  Theories for the Global Ubiquitous Computer , 2004, FoSSaCS.

[6]  Philippa Gardner,et al.  Strong Bisimulation for the Explicit Fusion Calculus , 2004, FoSSaCS.

[7]  J. Frías,et al.  A calculus for concurrent processes with constraints , 1997 .

[8]  Robin Milner,et al.  A Calculus of Mobile Processes, II , 1992, Inf. Comput..

[9]  Rocco De Nicola,et al.  A Symbolic Semantics for the pi-Calculus , 1996, Inf. Comput..

[10]  Martín Abadi,et al.  Mobile values, new names, and secure communication , 2001, POPL '01.

[11]  Francesca Rossi,et al.  Semiring-based constraint satisfaction and optimization , 1997, JACM.

[12]  Matthew Hennessy,et al.  Symbolic Bisimulations , 1995, Theor. Comput. Sci..

[13]  Luís Moniz Pereira,et al.  Computational Logic — CL 2000 , 2000, Lecture Notes in Computer Science.

[14]  David R. Gilbert,et al.  Concurrent Constraint Programming with Process Mobility , 2000, Computational Logic.

[15]  Davide Sangiorgi,et al.  A theory of bisimulation for the π-calculus , 2009, Acta Informatica.

[16]  Prakash Panangaden,et al.  The semantic foundations of concurrent constraint programming , 1991, POPL '91.

[17]  Frank D. Valencia,et al.  A Temporal Concurrent Constraint Programming Calculus , 2001, CP.

[18]  Fabio Gadducci,et al.  Enhancing Constraints Manipulation in Semiring-Based Formalisms , 2006, ECAI.

[19]  Toby Walsh,et al.  Principles and Practice of Constraint Programming — CP 2001: 7th International Conference, CP 2001 Paphos, Cyprus, November 26 – December 1, 2001 Proceedings , 2001, Lecture Notes in Computer Science.

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

[21]  Maria Grazia Buscemi,et al.  Programming Languages and Systems, 16th European Symposium on Programming, ESOP 2007, Held as Part of the Joint European Conferences on Theory and Practics of Software, ETAPS 2007, Braga, Portugal, March 24 - April 1, 2007, Proceedings , 2007, European Symposium on Programming.

[22]  Vijay A. Saraswat,et al.  Concurrent constraint programming , 1989, POPL '90.