Minimal Session Types (Extended Version)

06/10/2019
by   Alen Arslanagić, et al.
0

Session types are a type-based approach to the verification of message-passing programs. They have been much studied as type systems for the pi-calculus and for languages such as Java. A session type specifies what and when should be exchanged through a channel. Central to session-typed languages are constructs in types and processes that specify sequencing in protocols. Here we study minimal session types, session types without sequencing. This is arguably the simplest form of session types. By relying on a core process calculus with sessions and higher-order concurrency (abstraction passing), we prove that every process typable with usual (non minimal) session types can be compiled down into a process typed with minimal session types. This means that having sequencing constructs in both processes and session types is redundant; only sequentiality in processes is indispensable, as it can precisely codify sequentiality in types. Our developments draw inspiration from work by Parrow on behavior-preserving decompositions of untyped processes. By casting Parrow's results in the realm of typed processes, our results reveal a conceptually simple formulation of session types and a principled avenue to the integration of session types into languages without sequencing in types.

READ FULL TEXT
research
01/12/2023

A Minimal Formulation of Session Types

Session types are a type-based approach to the verification of message-p...
research
07/22/2021

Minimal Session Types for the π-calculus (Extended Version)

Session types enable the static verification of message-passing programs...
research
01/24/2018

Depending on Session-Typed Processes

This work proposes a dependent type theory that combines functions and s...
research
10/31/2022

Polymorphic Typestate for Session Types

Session types provide a principled approach to typed communication proto...
research
08/02/2023

Termination in Concurrency, Revisited

Termination is a central property in sequential programming models: a te...
research
11/11/2020

Session Coalgebras: A Coalgebraic View on Session Types and Communication Protocols

Compositional methods are central to the development and verification of...
research
04/29/2021

Assuming Just Enough Fairness to make Session Types Complete for Lock-freedom

We investigate how different fairness assumptions affect results concern...

Please sign up or login with your details

Forgot password? Click here to reset