🤖 AI Summary
Existing asynchronous multiparty session types lack a formal denotational semantics, making it difficult to verify the correctness of communication optimizations such as message reordering. This work presents the first denotational semantic model for asynchronous multiparty session types that supports precise asynchronous subtyping, by integrating graded type systems with computational effects. Building upon a call-by-value asynchronous message-passing calculus, the approach models asynchronous communication as graded computational effects, thereby providing formal guarantees of safety, deadlock-freedom, and liveness for non-blocking communication systems. The framework successfully validates the correctness of representative communication optimizations, including message reordering, demonstrating its effectiveness in reasoning about realistic asynchronous protocols.
📝 Abstract
We provide the first denotational semantics for asynchronous multiparty session types with precise asynchronous subtyping. Our semantics enables us to reason about asynchronous message-passing, in which message-sending is non-blocking. It enables us to prove the correctness of communication optimisations, in particular, those involving reordering of messages. Our development crucially relies on modelling message-passing as a computational effect. We apply grading, a paradigm for tracking computational effects, to asynchronous message-passing, demonstrating that multiparty session typing can be viewed as an instance of grading. We demonstrate the utility of our model by showing that it forms an adequate denotational semantics for a call-by-value asynchronous message-passing calculus, that ensures communication safety, deadlock-freedom and liveness in the presence of communication optimisations.