A short counterexample property for safety and liveness verification of fault-tolerant distributed algorithms
From MaRDI portal
Publication:5370906
DOI10.1145/3009837.3009860zbMATH Open1380.68278OpenAlexW3100822217MaRDI QIDQ5370906FDOQ5370906
Authors:
Publication date: 20 October 2017
Published in: Proceedings of the 44th ACM SIGPLAN Symposium on Principles of Programming Languages (Search for Journal in Brave)
Abstract: Distributed algorithms have many mission-critical applications ranging from embedded systems and replicated databases to cloud computing. Due to asynchronous communication, process faults, or network failures, these algorithms are difficult to design and verify. Many algorithms achieve fault tolerance by using threshold guards that, for instance, ensure that a process waits until it has received an acknowledgment from a majority of its peers. Consequently, domain-specific languages for fault-tolerant distributed systems offer language support for threshold guards. We introduce an automated method for model checking of safety and liveness of threshold-guarded distributed algorithms in systems where the number of processes and the fraction of faulty processes are parameters. Our method is based on a short counterexample property: if a distributed algorithm violates a temporal specification (in a fragment of LTL), then there is a counterexample whose length is bounded and independent of the parameters. We prove this property by (i) characterizing executions depending on the structure of the temporal formula, and (ii) using commutativity of transitions to accelerate and shorten executions. We extended the ByMC toolset (Byzantine Model Checker) with our technique, and verified liveness and safety of 10 prominent fault-tolerant distributed algorithms, most of which were out of reach for existing techniques.
Full work available at URL: https://arxiv.org/abs/1608.05327
Recommendations
- On the refinement of liveness properties of distributed systems
- Guard Automata for the Verification of Safety and Liveness of Distributed Algorithms
- On Verifying Fault Tolerance of Distributed Protocols
- Local safety and local liveness for distributed systems
- Safety-liveness exclusion in distributed computing
- Ensuring liveness properties of distributed systems: open problems
- On a Verification Framework for Certifying Distributed Algorithms: Distributed Checking and Consistency
- scientific article; zbMATH DE number 177518
Specification and verification (program logics, model checking, etc.) (68Q60) Distributed algorithms (68W15)
Cited In (21)
- Characterizing Consensus in the Heard-Of Model
- Safety-liveness exclusion in distributed computing
- Reachability in parameterized systems: all flavors of threshold automata
- A case study on parametric verification of failure detectors
- A reduction theorem for randomized distributed algorithms under weak adversaries
- Eliminating message counters in synchronous threshold automata
- Accuracy of message counting abstraction in fault-tolerant distributed algorithms
- Coefficient synthesis for threshold automata
- Extracting Symbolic Transitions from TLA$$^{+}$$+ Specifications
- On the completeness of bounded model checking for threshold-based distributed algorithms: reachability
- Parity to safety in polynomial time for pushdown and collapsible pushdown systems
- Liveness in broadcast networks
- Detecting unrealizability of distributed fault-tolerant systems
- On the completeness of bounded model checking for threshold-based distributed algorithms: reachability
- On the refinement of liveness properties of distributed systems
- Survey on Parameterized Verification with Threshold Automata and the Byzantine Model Checker
- Title not available (Why is that?)
- What you always wanted to know about model checking of fault-tolerant distributed algorithms
- \(\text{Para}^2\): parameterized path reduction, acceleration, and SMT for reachability in threshold-guarded distributed algorithms
- Synthesis of distributed agreement-based systems with efficiently-decidable verification
- Synthesis of distributed algorithms with parameterized threshold guards
Uses Software
This page was built for publication: A short counterexample property for safety and liveness verification of fault-tolerant distributed algorithms
Report a bug (only for logged in users!)Click here to report a bug for this page (MaRDI item Q5370906)