Validating Labelled State Transition and Message Production Systems: A Theory for Modelling Faulty Distributed Systems
Vlad Zamfir, Mihai Calancea, Denisa Diaconescu, Wojciech Ko{\l}owski,, Brandon Moore, Karl Palmskog, Traian Florin \c{S}erb\u{a}nu\c{t}\u{a},, Michael Stay, Dafina Trufa\c{s}, Jan Tu\v{s}il

TL;DR
This paper introduces VLSMs, a formal framework for modeling and verifying faulty distributed systems, focusing on equivocation, and demonstrates how equivocating components can replace Byzantine ones without changing system analysis.
Contribution
The paper develops a formal theory of VLSMs for modeling faults, especially equivocation, and shows their equivalence to Byzantine faults in validator systems, validated in Coq.
Findings
Equivocation can be formally modeled and reasoned about in distributed systems.
Replacing Byzantine components with equivocating ones does not alter fault analysis.
All results are formalized and verified in the Coq proof assistant.
Abstract
Modeling and formally reasoning about distributed systems with faults is a challenging task. To address this problem, we propose the theory of Validating Labeled State transition and Message production systems (VLSMs). The theory of VLSMs provides a general approach to describing and verifying properties of distributed protocols whose executions are subject to faults, supporting a correct-by-construction system development methodology. The central focus of our investigation is equivocation, a mode of faulty behavior that we formally model, reason about, and then show how to detect from durable evidence that may be available locally to system components. Equivocating components exhibit behavior that is inconsistent with single-trace system executions, while also only interacting with other components by sending and receiving valid messages. Components of system are called validators for…
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.
Code & Models
Videos
No videos yet. Explain this paper in a talk, walkthrough, or lecture? Add one.
Taxonomy
TopicsDistributed systems and fault tolerance · Service-Oriented Architecture and Web Services · Advanced Software Engineering Methodologies
