Typing Confluence

We investigate con uence properties for concurrent systems of message-passing processes, because such properties have proved to be useful for a variety of applications, ranging from reasoning about concurrent objects to mobile and high-speed telecommunication protocols. Roughly, con uence means that for every two computations starting from a common system state, it is possible to continue the computations, so to reach a common state again. In order to prove con uence for a given system, we are required to demonstrate that for all states reachable by computation from the starting state, the ` owing together' of possible computations is possible. In this paper, we aim at proving con uence properties for concurrent systems without having to generate all reachable states. Instead, we use a type system that supports a static analysis of possible sources of non-con uence. In message-passing systems, conuence is invalidated whenever two processes compete for communication with another process. We may statically check the occurrence of such situations by reducing them to the concurrent access on a shared communication port. For the technical development, we focus on the setting of a polarized -calculus, where we formalize the notion of portuniqueness by means of overlapping-free context-redex decompositions. We then present a type system for port-uniqueness that, taking advantage of a subject reduction property, yields a su cient criterion for guaranteeing con uence. This work was started while both authors were staying at the Universitat Erlangen-N urnberg, Germany. The main results and proofs have appeared previously in the rst authors PhD thesis [Nes96]. Corresponding author: INRIA Rocquencourt, Projet PARA, Domaine de Voluceau, Rocquencourt, B.P. 105, F-78153 Le Chesnay Cedex (France). Email: Uwe.Nestmann@INRIA.fr Supported by an ERCIM fellowship and a grant of the DAAD-program HSPII-AUFE. Supported by the DFG, Sonderforschungsbereich 182, project C2.

[1]  Ilaria Castellani,et al.  A non-interleaving semantics for CCS based on proved transitions , 1988 .

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

[3]  D. Walker,et al.  A Calculus of Mobile Processes, Part Ii , 1989 .

[4]  Chris M. N. Tofts,et al.  Proof methods and pragmatics for parallel programming , 1990 .

[5]  Ugo Montanari True Concurrency: Theory and Practice , 1992, MPC.

[6]  Robin Milner,et al.  Barbed Bisimulation , 1992, ICALP.

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

[8]  Davide Sangiorgi,et al.  Typing and subtyping for mobile processes , 1993, [1993] Proceedings Eighth Annual IEEE Symposium on Logic in Computer Science.

[9]  Kohei Honda,et al.  An Interaction-based Language and its Typing System , 1994, PARLE.

[10]  Akinori Yonezawa,et al.  Static Analysis of Communication for Asynchronous Concurrent Programming Languages , 1995, SAS.

[11]  Nobuko Yoshida,et al.  On Reduction-Based Process Semantics , 1995, Theor. Comput. Sci..

[12]  David Walker,et al.  On Sharing and Determinacy in Concurrent Systems , 1995, CONCUR.

[13]  Martin Odersky,et al.  Polarized Name Passing , 1995, FSTTCS.

[14]  David Walker,et al.  Confluence of Processes and Systems of Objects , 1995, TAPSOFT.

[15]  Nobuko Yoshida,et al.  Graph Types for Monadic Mobile Processes , 1996, FSTTCS.

[16]  J. F. Groote,et al.  Connuence for Process Veriication , 1996 .

[17]  Uwe Nestmann,et al.  On determinacy and nondeterminacy in concurrent programming , 1996 .

[18]  Naoki Kobayashi,et al.  A partially deadlock-free typed process calculus , 1997, Proceedings of Twelfth Annual IEEE Symposium on Logic in Computer Science.

[19]  Roberto M. Amadio An Asynchronous Model of Locality, Failurem and Process Mobility , 1997, COORDINATION.

[20]  Naoki Kobayashi A partially deadlock-free typed process calculus , 1998, TOPL.

[21]  Davide Sangiorgi The Name Discipline of Uniform Receptiveness , 1999, Theor. Comput. Sci..

[22]  Benjamin C. Pierce,et al.  Linearity and the pi-calculus , 1999, TOPL.