Sharing memory robustly in message-passing systems
Journal of the ACM (JACM)
Better verification through symmetry
Formal Methods in System Design - Special issue on symmetry in automatic verification
Exploiting symmetry in temporal logic model checking
Formal Methods in System Design - Special issue on symmetry in automatic verification
ACM Transactions on Computer Systems (TOCS)
Practical Byzantine fault tolerance
OSDI '99 Proceedings of the third symposium on Operating systems design and implementation
SMC: a symmetry-based model checker for verification of safety and liveness properties
ACM Transactions on Software Engineering and Methodology (TOSEM)
The Byzantine Generals Problem
ACM Transactions on Programming Languages and Systems (TOPLAS)
Symbolic Model Checking for Self-Stabilizing Algorithms
IEEE Transactions on Parallel and Distributed Systems
Specifying Systems: The TLA+ Language and Tools for Hardware and Software Engineers
Specifying Systems: The TLA+ Language and Tools for Hardware and Software Engineers
Protocol Verification as a Hardware Design Aid
ICCD '92 Proceedings of the 1991 IEEE International Conference on Computer Design on VLSI in Computer & Processors
DSN '04 Proceedings of the 2004 International Conference on Dependable Systems and Networks
Symmetry and reduced symmetry in model checking
ACM Transactions on Programming Languages and Systems (TOPLAS)
Symmetry in temporal logic model checking
ACM Computing Surveys (CSUR)
Automatic Verification and Discovery of Byzantine Consensus Protocols
DSN '07 Proceedings of the 37th Annual IEEE/IFIP International Conference on Dependable Systems and Networks
A Tunable Add-On Diagnostic Protocol for Time-Triggered Systems
DSN '07 Proceedings of the 37th Annual IEEE/IFIP International Conference on Dependable Systems and Networks
Model Checking of Consensus Algorit
SRDS '07 Proceedings of the 26th IEEE International Symposium on Reliable Distributed Systems
Design, deployment, and use of the DETER testbed
DETER Proceedings of the DETER Community Workshop on Cyber Security Experimentation and Test on DETER Community Workshop on Cyber Security Experimentation and Test 2007
Using Bounded Model Checking to Verify Consensus Algorithms
DISC '08 Proceedings of the 22nd international symposium on Distributed Computing
Computer
Checking a multithreaded algorithm with +CAL
DISC'06 Proceedings of the 20th international conference on Distributed Computing
On efficient models for model checking message-passing distributed protocols
FMOODS'10/FORTE'10 Proceedings of the 12th IFIP WG 6.1 international conference and 30th IFIP WG 6.1 international conference on Formal Techniques for Distributed Systems
Hi-index | 0.00 |
Fault-tolerant (FT) distributed protocols (such as group membership, consensus, etc.) represent fundamental building blocks for many practical systems, e.g., the Google File System. Not only does one desire rigor in the protocol design but especially in its verification given the complexity and fallibility of manual proofs. The application of model checking (MC) for protocol verification is attractive with its full automation and rich property language. However, being an exhaustive exploration method, its scalable use is very much constrained by the overall number of different system states. We observe that, although FT distributed protocols usually display a very high degree of symmetry which stems from permuting different processes, MC efforts targeting their automated verification often disregard this symmetry. Therefore, we propose to leverage the framework of symmetry reduction and improve on existing applications of it by specifying so called role-based symmetries. Our secondary contribution is to define a high-level description language called FTDP to ease the symmetry aware specification of FT distributed protocols. FTDP supports synchronous as well as asynchronous protocols, a variety of fault types, and the specification of safety and liveness properties. Specifications written in FTDP can directly be analyzed by tools supporting symmetry reduction. We demonstrate the benefit of our approach using the example of well-known and complex distributed FT protocols, specifically Paxos and the Byzantine Generals.