English

Intrinsically-Typed Mechanized Semantics for Session Types

Programming Languages 2019-08-09 v1

Abstract

Session types have emerged as a powerful paradigm for structuring communication-based programs. They guarantee type soundness and session fidelity for concurrent programs with sophisticated communication protocols. As type soundness proofs for languages with session types are tedious and technically involved, it is rare to see mechanized soundness proofs for these systems. We present an executable intrinsically typed small-step semantics for a realistic functional session type calculus. The calculus includes linearity, recursion, and recursive sessions with subtyping. Asynchronous communication is modeled with an encoding. The semantics is implemented in Agda as an intrinsically typed, interruptible CEK machine. This implementation proves type preservation and a particular notion of progress by construction.

Keywords

Cite

@article{arxiv.1908.02940,
  title  = {Intrinsically-Typed Mechanized Semantics for Session Types},
  author = {Peter Thiemann},
  journal= {arXiv preprint arXiv:1908.02940},
  year   = {2019}
}

Comments

Appears in PPDP 2019

R2 v1 2026-06-23T10:42:42.387Z