Modelling Distributed Applications with Mixed-Choice Stateful Typestates
Francisco Parrinha (NOVA LINCS, NOVA FCT, Lisbon, Portugal), Jo\~ao Mota (NOVA LINCS, NOVA FCT, Lisbon, Portugal), Ant\'onio Ravara (NOVA LINCS, NOVA FCT, Lisbon, Portugal)

TL;DR
This paper introduces a probabilistic runtime typestate model for distributed applications that captures concurrent actions, quantitative constraints, and expected ratios, enhancing static verification and runtime monitoring.
Contribution
It extends typestates with internal mutable state, mixed sessions, and expected ratios, enabling better modeling and verification of complex distributed protocols.
Findings
Successfully modeled acknowledgment and voting protocols
Demonstrated runtime detection of deviations from expected behaviour
Enhanced expressiveness over traditional typestates
Abstract
Distributed systems have become increasingly prevalent in the software industry. Due to their intrinsic complexity, much research has focused on the verification of their behaviour. An active research line is around behaviour models that capture these protocols - e.g., session types, or typestates - allowing their static verification. Correctly designing distributed protocols is not trivial. Their communication behaviour is typically implicitly defined via asynchronous message handlers, making errors harder to detect until execution. While typestates can ease the design process by explicitly defining correct sequences of operations, they struggle in two ways: they lack the expressiveness to define quantitative constraints that govern distributed protocols (i.e., number of acknowledgements for a quorum); and they assume strict sequencing of operations, failing to capture concurrent…
Peer Reviews
No public reviews on file for this paper yet. If you reviewed it on a platform where reviews are public (OpenReview, ICLR, NeurIPS, ICML), you can paste yours below so the community can read it here.
Videos
No videos yet. Explain this paper in a talk, walkthrough, or lecture? Add one.
