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

08/10/2022
by   Felix Stutz, et al.
0

Communicating state machines provide a formal foundation for distributed computation. Unfortunately, they are Turing-complete and, thus, challenging to analyse. In this paper, we classify restrictions on channels which have been proposed to work around the undecidability of verification questions. We compare half-duplex communication, existential B-boundedness, and k-synchronisability. These restrictions do not prevent the communication channels from growing arbitrarily large but still restrict the power of the model. Each restriction gives rise to a set of languages so, for every pair of restrictions, we check whether one subsumes the other or if they are incomparable. We investigate their relationship in two different contexts: first, the one of communicating state machines, and, second, the one of communication protocol specifications using high-level message sequence charts. Surprisingly, these two contexts yield different conclusions. In addition, we integrate multiparty session types, another approach to specify communication protocols, into our classification. We show that multiparty session type languages are half-duplex, existentially 1-bounded, and 1-synchronisable. To show this result, we provide the first formal embedding of multiparty session types into high-level message sequence charts.

READ FULL TEXT

page 1

page 2

page 3

page 4

research
01/15/2021

Manifestly Phased Communication via Shared Session Types

Session types denote message protocols between concurrent processes, all...
research
10/31/2022

Polymorphic Typestate for Session Types

Session types provide a principled approach to typed communication proto...
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
01/12/2023

A Minimal Formulation of Session Types

Session types are a type-based approach to the verification of message-p...
research
10/15/2022

A Theory of Formal Choreographic Languages

We introduce a meta-model based on formal languages, dubbed formal chore...
research
06/30/2019

A Sound Algorithm for Asynchronous Session Subtyping (extended version)

Session types, types for structuring communication between endpoints in ...
research
09/24/2021

Automated Modular Verification for Race-Free Channels with Implicit and Explicit Synchronization

Ensuring the correctness of software for communication centric programs ...

Please sign up or login with your details

Forgot password? Click here to reset