Behavioral equivalence in the polymorphic pi-calculus

We investigate parametric polymorphism in message-based concurrent programming, focusing on behavioral equivalences in a typed process calculus analogous to the polymorphic lambda-calculus of Girard and Reynolds.Polymorphism constrains the power of observers by preventing them from directly manipulating data values whose types are abstract, leading to notions of equivalence much coarser than the standard untyped ones. We study the nature of these constraints through simple examples of concurrent abstract data types and develop basic theoretical machinery for establishing bisimilarity of polymorphic processes.We also observe some surprising interactions between polymorphism and aliasing, drawing examples from both the polymorphic pi-calculus and ML.

[1]  John C. Reynolds,et al.  Towards a theory of type structure , 1974, Symposium on Programming.

[2]  John C. Reynolds,et al.  Types, Abstraction and Parametric Polymorphism , 1983, IFIP Congress.

[3]  Kim G. Larsen A Context Dependent Equivalence Between Processes , 1987, Theor. Comput. Sci..

[4]  John C. Mitchell,et al.  Abstract types have existential type , 1988, TOPL.

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

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

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

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

[9]  Kohei Honda,et al.  Types for Dynamic Interaction , 1993 .

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

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

[12]  Andrew M. Pitts Reasoning about local variables with operationally-based logical relations , 1996, Proceedings 11th Annual IEEE Symposium on Logic in Computer Science.

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

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

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

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

[17]  I. Stark,et al.  Operational reasoning for functions with local state , 1999 .