Generalising Projection in Asynchronous Multiparty Session Types

07/08/2021
by   Rupak Majumdar, et al.
0

Multiparty session types (MSTs) provide an efficient methodology for specifying and verifying message passing software systems. In the theory of MSTs, a global type specifies the interaction among the roles at the global level. A local specification for each role is generated by projecting from the global type on to the message exchanges it participates in. Whenever a global type can be projected on to each role, the composition of the projections is deadlock free and has exactly the behaviours specified by the global type. The key to the usability of MSTs is the projection operation: a more expressive projection allows more systems to be type-checked but requires a more difficult soundness argument. In this paper, we generalise the standard projection operation in MSTs. This allows us to model and type-check many design patterns in distributed systems, such as load balancing, that are rejected by the standard projection. The key to the new projection is an analysis that tracks causality between messages. Our soundness proof uses novel graph-theoretic techniques from the theory of message-sequence charts. We demonstrate the efficacy of the new projection operation by showing many global types for common patterns that can be projected under our projection but not under the standard projection operation.

READ FULL TEXT

page 5

page 7

page 9

page 13

page 15

page 23

page 31

page 35

research
02/22/2023

Asynchronous Multiparty Session Type Implementability is Decidable – Lessons Learned from Message Sequence Charts

Multiparty session types (MSTs) provide efficient means to specify and v...
research
09/17/2020

An Abstract Framework for Choreographic Testing

We initiate the development of a model-driven testing framework for mess...
research
02/03/2023

Hybrid Multiparty Session Types – Full Version

Multiparty session types (MPST) are a specification and verification fra...
research
11/23/2021

Deconfined Global Types for Asynchronous Sessions

Multiparty sessions with asynchronous communications and global types pl...
research
06/07/2023

Monitoring Blackbox Implementations of Multiparty Session Protocols

We present a framework for the distributed monitoring of networks of com...
research
05/26/2023

Complete Multiparty Session Type Projection with Automata

Multiparty session types (MSTs) are a type-based approach to verifying c...
research
05/08/2023

Behavioural Types for Local-First Software

Peer-to-peer systems are the most resilient form of distributed computin...

Please sign up or login with your details

Forgot password? Click here to reset