Label-Dependent Session Types

11/02/2019
by   Peter Thiemann, et al.
0

Session types have emerged as a typing discipline for communication protocols. Existing calculi with session types come equipped with many different primitives that combine communication with the introduction or elimination of the transmitted value. We present a foundational session type calculus with a lightweight operational semantics. It fully decouples communication from the introduction and elimination of data and thus features a single communication reduction, which acts as a rendezvous between senders and receivers. We achieve this decoupling by introducing label-dependent session types, a minimalist value-dependent session type system with subtyping. The system is sufficiently powerful to simulate existing functional session type systems. Compared to such systems, label-dependent session types place fewer restrictions on the code. We further introduce primitive recursion over natural numbers at the type level, thus allowing to describe protocols whose behaviour depends on numbers exchanged in messages. An algorithmic type checking system is introduced and proved equivalent to its declarative counterpart. The new calculus showcases a novel lightweight integration of dependent types and linear typing, with has uses beyond session type systems.

READ FULL TEXT

page 1

page 2

page 3

page 4

research
10/16/2020

Relating Functional and Imperative Session Types

Imperative session types provide an imperative interface to session-type...
research
08/08/2019

Intrinsically-Typed Mechanized Semantics for Session Types

Session types have emerged as a powerful paradigm for structuring commun...
research
01/24/2018

Depending on Session-Typed Processes

This work proposes a dependent type theory that combines functions and s...
research
02/04/2019

A Session Type System for Asynchronous Unreliable Broadcast Communication

Session types are formal specifications of communication protocols, allo...
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
07/31/2018

Multiparty Dependent Session Types (Extended Abstract)

Programs are more distributed and concurrent today than ever before, and...
research
04/02/2019

Value-Dependent Session Design in a Dependently Typed Language

Session Types offer a typing discipline that allows protocol specificati...

Please sign up or login with your details

Forgot password? Click here to reset