MobilityReadingGroup

π-calculus, Session Types research at Imperial College

On the Preciseness of Subtyping in Session Types
Tzu-Chun CHEN, Mariangiola DEZANI-CIANCAGLINI, Nobuko YOSHIDA
16th International Symposium on Principles and Practice of Declarative Programming (PPDP 2014). p. 135 - 146

Subtyping in concurrency has been extensively studied since early 1990s as one of the most interesting issues in type theory. The correctness of subtyping relations has been usually provided as the soundness for type safety. The converse direction, the completeness, has been largely ignored in spite of its usefulness to define the greatest subtyping relation ensuring type safety. This paper formalises preciseness (i.e. both soundness and completeness) of subtyping for mobile processes and studies it for the synchronous and the asynchronous session calculi. We first prove that the well-known session subtyping, the branching-selection subtyping, is sound and complete for the synchronous calculus. Next we show that in the asynchronous calculus, this subtyping is incomplete for type-safety: that is, there exist session types T and S such that T can safely be considered as a subtype of S, but this fact is not derivable by the subtyping. We then propose an asynchronous subtyping system which is sound and complete for the asynchronous calculus. The method gives a general guidance to design rigorous channel-based subtypings respecting desired safety properties.

@inproceedings{CDY2014,
  author = {Tzu-Chun Chen and Mariangiola Dezani-Ciancaglini and Nobuko Yoshida},
  title = {{On the Preciseness of Subtyping in Session Types}},
  booktitle = {16th International Symposium on Principles and Practice of Declarative Programming},
  pages = {135--146},
  publisher = {ACM},
  year = 2014
}
@inproceedings{CDY2014,
  author = {Tzu-Chun Chen and Mariangiola Dezani-Ciancaglini and Nobuko Yoshida},
  title = {{On the Preciseness of Subtyping in Session Types}},
  booktitle = {16th International Symposium on Principles and Practice of Declarative Programming},
  pages = {135--146},
  publisher = {ACM},
  doi = "10.1145/2643135.2643138",
  year = 2014
}