Graph Types for Monadic Mobile Processes

While types for name passing calculi have been studied extensively in the context of sorting of polyadic π-calculus [5, 34, 9, 28, 32, 19, 33, 10, 17], the same type abstraction is not possible in the monadic setting, which was left as an open issue by Milner [21]. We solve this problem with an extension of sorting which captures dynamic aspects of process behaviour in a simple way. Equationally this results in the full abstraction of the standard encoding of polyadic π-calculus into the monadic one: the sorted polyadic π-terms are equated by a basic behavioural equality in the polyadic calculus if and only if their encodings are equated in a basic behavioural equality in the typed monadic calculus. This is the first result of this kind we know of in the context of the encoding of polyadic name passing, which is a typical example of translation of high-level communication structures into π-calculus. The construction is general enough to be extendable to encodings of calculi with more complex operational structures.

[1]  Martin Odersky,et al.  Applying pi: towards a basis for concurrent imperative programming , 1996 .

[2]  Davide Sangiorgi,et al.  On the bisimulation proof method , 1998, Mathematical Structures in Computer Science.

[3]  Kohei Honda,et al.  Composing processes , 1996, POPL '96.

[4]  Grzegorz Rozenberg,et al.  Linear Time, Branching Time and Partial Order in Logics and Models for Concurrency , 1988, Lecture Notes in Computer Science.

[5]  Simon J. Gay,et al.  A sort inference algorithm for the polyadic π-calculus , 1993, POPL '93.

[6]  Marco Pistore,et al.  Concurrent Semantics for the π-calculus1 1Work supported in part by Esprit Basic Research project CONFER and working group COMPUGRAPH II and by Progetto Speciale CNR “Specifica ad Alto Livelloe Verifica Formale di Sistemi Digitali”. , 1995 .

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

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

[9]  Nobuko Yoshida Graph Notation for Concurrent Combinators , 1994, Theory and Practice of Parallel Programming.

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

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

[12]  Kohei Honda,et al.  Types for Dyadic Interaction , 1993, CONCUR.

[13]  Glynn Winskel,et al.  An Introduction to Event Structures , 1989 .

[14]  Yves Lafont,et al.  Interaction nets , 1989, POPL '90.

[15]  David Walker,et al.  Objects in the pi-Calculus , 1992, Inf. Comput..

[16]  本田 耕平 A study of ν-calculus and its combinatory representation , 1994 .

[17]  Rajagopal Nagarajan,et al.  A typed calculus of synchronous processes , 1995, Proceedings of Tenth Annual IEEE Symposium on Logic in Computer Science.

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

[19]  Jean-Yves Girard,et al.  Linear Logic , 1987, Theor. Comput. Sci..

[20]  Vasco Thudichum Vasconcelos,et al.  Principal Typing Schemes in a Polyadic pi-Calculus , 1993, CONCUR.

[21]  Kohei Honda Notes on P-Algebra 1: Process Structure , 1994, Theory and Practice of Parallel Programming.

[22]  R. K. Shyamasundar,et al.  Combinatory formulations of concurrent languages , 1995, TOPL.

[23]  John C. Mitchell,et al.  Type Systems for Programming Languages , 1991, Handbook of Theoretical Computer Science, Volume B: Formal Models and Sematics.

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

[25]  Cliff B. Jones A pi-Calculus Semantics for an Object-Based Design Notation , 1993, CONCUR.

[26]  Nobuko Yoshida,et al.  Replication in Concurrent Combinators , 1994, TACS.

[27]  Davide Sangiorgi,et al.  Expressing mobility in process algebras : first-order and higher-order paradigms , 1993 .

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

[29]  David Walker,et al.  A Polymorphic Type System for the Polyadic pi-calculus , 1995, CONCUR.

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

[31]  Benjamin C. Pierce,et al.  Linearity and the pi-calculus , 1996, POPL '96.

[32]  Cédric Fournet,et al.  The reflexive CHAM and the join-calculus , 1996, POPL '96.

[33]  Nobuko Yoshida,et al.  Combinatory representation of mobile processes , 1994, POPL '94.

[34]  Samson Abramsky,et al.  Computational Interpretations of Linear Logic , 1993, Theor. Comput. Sci..

[35]  Robin Milner,et al.  Functions as processes , 1990, Mathematical Structures in Computer Science.

[36]  吉田 展子 A study of behavioural semantics for concurrent calculi , 1996 .

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

[38]  Brian A. Davey,et al.  An Introduction to Lattices and Order , 1989 .

[39]  Cliff B. Jones,et al.  Process algebraic foundations for an object-based design notation , 1993 .