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

02/22/2023
by   Felix Stutz, et al.
0

Multiparty session types (MSTs) provide efficient means to specify and verify asynchronous message-passing systems. For a global type, which specifies all interactions between roles in a system, the implementability problem asks whether there are local specifications for all roles such that their composition is deadlock-free and generates precisely the specified executions. Decidability of the implementability problem is an open question. We answer it positively for global types with sender-driven choice, which allow a sender to send to different receivers upon branching and a receiver to receive from different senders. To achieve this, we generalise results from the domain of high-level message sequence charts (HMSCs). This connection also allows us to comprehensively investigate how HMSC techniques can be adapted to the MST setting. This comprises techniques to make the problem algorithmically more tractable as well as a variant of implementability that may open new design space for MSTs. Inspired by potential performance benefits, we introduce a generalisation of the implementability problem that we, unfortunately, prove to be undecidable.

READ FULL TEXT

page 1

page 2

page 3

page 4

research
07/08/2021

Generalising Projection in Asynchronous Multiparty Session Types

Multiparty session types (MSTs) provide an efficient methodology for spe...
research
04/02/2019

A Message-Passing Interpretation of Adjoint Logic

We present a system of session types based on adjoint logic which genera...
research
12/23/2021

Deadlock-free asynchronous message reordering in Rust with multiparty session types

Rust is a modern systems language focused on performance and reliability...
research
08/10/2022

Comparing Channel Restrictions of Communicating State Machines, High-level Message Sequence Charts, and Multiparty Session Types

Communicating state machines provide a formal foundation for distributed...
research
10/05/2018

Global Types for Open Systems

Global-type formalisms enable to describe the overall behaviour of distr...
research
06/07/2023

Monitoring Blackbox Implementations of Multiparty Session Protocols

We present a framework for the distributed monitoring of networks of com...
research
10/05/2018

Realisability of Pomsets via Communicating Automata

Pomsets are a model of concurrent computations introduced by Pratt. They...

Please sign up or login with your details

Forgot password? Click here to reset