Semantic subtyping for the pi-calculus

Subtyping relations for the @p-calculus are usually defined in a syntactic way, by means of structural rules. We propose a semantic characterisation of channel types and use it to derive a subtyping relation. The type system we consider includes read-only and write-only channel types, as well as boolean combinations of types. A set-theoretic interpretation of types is provided, in which boolean combinations of types are interpreted as the corresponding set-theoretic operations. Subtyping is defined as inclusion of the interpretations. We prove decidability of the subtyping relation and sketch the subtyping algorithm. In order to fully exploit the type system, we define a variant of the @p-calculus where communication is subjected to pattern matching that performs dynamic typecase.

[1]  Giuseppe Castagna Semantic Subtyping: Challenges, Perspectives, and Open Problems , 2005, ICTCS.

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

[3]  R. Nicola,et al.  Semantic subtyping for the π-calculus , 2004 .

[4]  Daniele Varacca,et al.  Encoding CDuce in the Cpi-Calculus , 2006, CONCUR.

[5]  Rocco De Nicola,et al.  Types for access control , 2000, Theor. Comput. Sci..

[6]  Giuseppe Castagna,et al.  CDuce: an XML-centric general-purpose language , 2003, ICFP '03.

[7]  Nobuko Yoshida,et al.  Suptyping and Locality in Distributed Higher Order Processes (extended abstract) , 1999, CONCUR.

[8]  Alain Frisch,et al.  Théorie, conception et réalisation d'un langage de programmation adapté à XML , 2004 .

[9]  Matthew Hennessy Cogs Subtyping and Locality in Distributed Higher Order Processes , 1999 .

[10]  Daniele Varacca,et al.  Semantic subtyping for the /spl pi/-calculus , 2005, 20th Annual IEEE Symposium on Logic in Computer Science (LICS' 05).

[11]  Giuseppe Castagna,et al.  A gentle introduction to semantic subtyping , 2005, ICALP.

[12]  Cosimo Laneve,et al.  PiDuce - A project for experimenting Web services technologies , 2009, Sci. Comput. Program..

[13]  Giuseppe Castagna,et al.  Parametric polymorphism for XML , 2005, POPL '05.

[14]  Peter Sewell Global/Local Subtyping and Capability Inference for a Distributed pi-calculus , 1998, ICALP.

[15]  James Riely,et al.  Resource Access Control in Systems of Mobile Agents , 2002, HLCL.

[16]  C. K. R. T. Jones,et al.  The ϱ-Calculus , 1981, Math. Log. Q..

[17]  Lucia Acciai,et al.  XPi: A typed process calculus for XML messaging , 2008, Sci. Comput. Program..

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

[19]  Giuseppe Castagna,et al.  Semantic subtyping , 2002, Proceedings 17th Annual IEEE Symposium on Logic in Computer Science.