A Very Gentle Introduction to Multiparty Session Types

  title={A Very Gentle Introduction to Multiparty Session Types},
  author={N. Yoshida and Lorenzo Gheri},
Multiparty session types (MPST) are a formal specification and verification framework for message-passing protocols without central control: the desired interactions at the scale of the network itself are specified into a session (called global type). Global types are then projected onto local types (one for each participant), which describe the protocol from a local point of view. These local types are used to validate an application through type-checking, monitoring, and code generation… Expand
Implementing Multiparty Session Types in Rust
A simplified Amazon Prime Video Streaming protocol is implemented using a library for both shared and distributed communication transports, and an existing library for binary session types is extended to MPST. Expand
Metadata of the chapter that will be visualized in SpringerLink
Multiparty Session Types (MPST) is a typing discipline for distributed protocols, which ensures communication safety and deadlock-freedom for more than two participants. This paper reports on ourExpand
Communicating Finite State Machines and an Extensible Toolchain for Multiparty Session Types
Multiparty session types (MPST) provide a typing discipline for message passing concurrency, ensuring deadlock freedom for distributed processes. This paper first summarises the relationship betweenExpand
Assuming Just Enough Fairness to make Session Types Complete for Lock-freedom
It is shown that, by using a general merge operator in an otherwise standard approach to global session types, a session type system complete for the strongest amongst those notions of lock-freedom is obtained, which assumes only justness of execution paths. Expand
Safe Session-Based Asynchronous Coordination in Rust
This ongoing work uses multiparty session types to provide safety guarantees such as deadlock-freedom by coordinating message-passing processes in Rust, and incorporates asynchronous subtyping theory, which allows program optimisation through reordering input and output actions. Expand
Safe Sessions of Channel Actions in Clojure: A Tour of the Discourje Project
This paper gives a tour of the current state of Discourje, by example; it is intended to serve both as a general overview for readers who are unfamiliar with previous work on the project, and as an introduction to new features for Readers who are familiar. Expand
Multiparty motion coordination: from choreographies to robotics programs
The model encompasses both synchronisation through message passing and continuous-time dynamic motion primitives in physical space and can model and statically verify quite complex manoeuvres involving multiple manipulators and mobile robots---such examples are beyond the scope of previous approaches. Expand
Coordination Models and Languages: 22nd IFIP WG 6.1 International Conference, COORDINATION 2020, Held as Part of the 15th International Federated Conference on Distributed Computing Techniques, DisCoTec 2020, Valletta, Malta, June 15–19, 2020, Proceedings
This presentation will explore how an interactive formal specification tool using SAT and SMT to find counterexamples could look like, using the service API as an anchor point of such a tool, allowing larger specifications that could still be proven. Expand
A Decentralized Analysis of Multiparty Protocols
This work proposes a decentralized analysis of multiparty session protocols for asynchronous processes with recursion and rests upon APCP, a new type system that ensures protocol conformance and deadlock freedom with respect to binary protocols. Expand


Parameterised Multiparty Session Types
A dependent type theory for multiparty sessions which can statically guarantee type-safe, deadlock-free multiparty interactions among processes whose specifications are parameterised by indices is proposed. Expand
Less is more: multiparty session types revisited
A new MPST theory is proposed that is less complicated, and yet more general, than the classic one, and does not require global multiparty session types nor binary session type duality, and proves type safety of many more protocols and processes. Expand
A Gentle Introduction to Multiparty Asynchronous Session Types
This article provides a gentle introduction to multiparty session types, a class of behavioural types specifically targeted at describing protocols in distributed systems based on asynchronousExpand
Multiparty Asynchronous Session Types
The theory introduces a new notion of types in which interactions involving multiple peers are directly abstracted as a global scenario, and the fundamental properties of the session type discipline, such as communication safety, progress, and session fidelity, are established. Expand
Globally Governed Session Semantics
A bisimulation theory based on multiparty session types where a choreography specification governs the behaviour of session typed processes and their observer is proposed and its usage is demonstrated by a thread transformation governed under multiple sessions in a real usecase in the large-scale cyberinfrustracture. Expand
Subtyping Supports Safe Session Substitution
  • S. Gay
  • Computer Science
  • A List of Successes That Can Change the World
  • 2016
This work explains this point in more detail, and shows how to unify the two views of session types, which are based on safe substitutability of channels and processes. Expand
Subtyping for session types in the pi calculus
The syntax, operational semantics and typing rules of an extended pi calculus are formalized, it is proved that typability guarantees absence of run-time communication errors, and the typing rules are transformed into a practical typechecking algorithm. Expand
Precise subtyping for synchronous multiparty sessions
The novelty of this paper is the introduction of characteristic global types to prove the operational completeness of the subtyping for a synchronous multiparty session calculus. Expand
Types for Dyadic Interaction
A typed formalism for concurrency where types denote freely composable structure of dyadic interaction in the symmetric scheme is formulated and it is shown that typed β-equality has a clean embedding in the bisimilarity. Expand
Scribbling Interactions with a Formal Foundation
The proposed methodology promotes a formally founded, and highly structured, development framework for modelling and building distributed applications, from high-level models to design and implementation to static checking to runtime validation. Expand