On the preciseness of subtyping in session types

Tzu Chun Chen, Mariangiola Dezani-Ciancaglini, Alceste Scalas, Nobuko Yoshida

Research output: Contribution to journalArticlepeer-review

Abstract

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 largest 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 T ≤ S 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. Both the synchronous and the asynchronous calculus are first considered with linear channels only, and then they are extended with session initialisations and communications of expressions (including shared channels).

Original languageEnglish
Article number12
JournalLogical Methods in Computer Science
Volume13
Issue number2
DOIs
Publication statusPublished - 30 Jun 2017

Bibliographical note

© T. Chen, M. Dezani-Ciancaglini, A. Scalas, and N. Yoshida
CC Creative Commons

Keywords

  • Asynchronous message permutations
  • Completeness
  • Session types
  • Soundness
  • Subtyping
  • The π-calculus
  • Type safety

Fingerprint

Dive into the research topics of 'On the preciseness of subtyping in session types'. Together they form a unique fingerprint.

Cite this