Less is more: multiparty session types revisited

Alceste Scalas, Nobuko Yoshida

Research output: Contribution to journalArticle

Abstract

Multiparty Session Types (MPST) are a typing discipline ensuring that a message-passing process implements a multiparty session protocol, without errors. In this paper, we propose a new, generalised MPST theory.

Our contribution is fourfold. (1) We demonstrate that a revision of the theoretical foundations of MPST is necessary: classic MPST have a limited subject reduction property, with inherent restrictions that are easily overlooked, and in previous work have led to flawed type safety proofs; our new theory removes such restrictions and fixes such flaws. (2) We contribute a new MPST theory that is less complicated, and yet more general, than the classic one: it does not require global multiparty session types nor binary session type duality — instead, it is grounded on general behavioural type-level properties, and proves type safety of many more protocols and processes. (3) We produce a detailed analysis of type-level properties, showing how, in our new theory, they allow to ensure decidability of type checking, and statically guarantee that processes enjoy, , deadlock-freedom and liveness at run-time. (4) We show how our new theory can integrate type and model checking: type-level properties can be expressed in modal µ-calculus, and verified with well-established tools.
Original languageEnglish
Article number30
Number of pages29
JournalProceedings of the ACM on Programming Languages
Volume3
Issue numberPOPL
DOIs
Publication statusPublished - 2 Jan 2019

Bibliographical note

This work is licensed under a Creative Commons Attribution 4.0 International License.
© 2019 Copyright held by the owner/author(s).

Fingerprint Dive into the research topics of 'Less is more: multiparty session types revisited'. Together they form a unique fingerprint.

  • Profiles

    No photo of Alceste Scalas

    Alceste Scalas

    Person: Academic

    Cite this

    Scalas, A., & Yoshida, N. (2019). Less is more: multiparty session types revisited. Proceedings of the ACM on Programming Languages, 3(POPL), [30]. https://doi.org/10.1145/3302515