Timeout Asynchronous Session Types: Safe Asynchronous Mixed-Choice For Timed Interactions

Mixed-choice has long been barred from models of asynchronous communication since it compromises the decidability of key properties of communicating finite-state machines. Session types inherit this restriction, which precludes them from fully modelling timeouts -- a core property of web and cloud s...

Full description

Saved in:
Bibliographic Details
Published in:Logical methods in computer science Vol. 21, Issue 3
Main Authors: Pears, Jonah, Bocchi, Laura, Murgia, Maurizio, King, Andy
Format: Journal Article
Language:English
Published: Logical Methods in Computer Science e.V 01.01.2025
Subjects:
ISSN:1860-5974, 1860-5974
Online Access:Get full text
Tags: Add Tag
No Tags, Be the first to tag this record!
Description
Summary:Mixed-choice has long been barred from models of asynchronous communication since it compromises the decidability of key properties of communicating finite-state machines. Session types inherit this restriction, which precludes them from fully modelling timeouts -- a core property of web and cloud services. To address this deficiency, we present (binary) Timeout Asynchronous Session Types (TOAST) as an extension to (binary) asynchronous timed session types, that permits mixed-choice. TOAST deploys timing constraints to regulate the use of mixed-choice so as to preserve communication safety. We provide a new behavioural semantics for TOAST which guarantees progress in the presence of mixed-choice. Building upon TOAST, we provide a calculus featuring process timers which is capable of modelling timeouts using a receive-after pattern, much like Erlang, and capture the correspondence with TOAST specifications via a type system for which we prove subject reduction.
ISSN:1860-5974
1860-5974
DOI:10.46298/lmcs-21(3:6)2025