Synchronizing clocks in the presence of faults
Journal of the ACM (JACM)
The MAFT Architecture for Distributed Fault Tolerance
IEEE Transactions on Computers - Fault-Tolerant Computing
A computational logic handbook
A computational logic handbook
Towards a computation system based on set theory
Theoretical Computer Science
The Z notation: a reference manual
The Z notation: a reference manual
Specification case studies
A Practical Decision Procedure for Arithmetic with Function Symbols
Journal of the ACM (JACM)
Reaching Agreement in the Presence of Faults
Journal of the ACM (JACM)
The Byzantine Generals Problem
ACM Transactions on Programming Languages and Systems (TOPLAS)
Formal Techniques in Real-Time and Fault-Tolerant Systems
Formal Techniques in Real-Time and Fault-Tolerant Systems
Mechanical Verification of a Generalized Protocol for Byzantine Fault Tolerant Clock Synchronization
Proceedings of the Second International Symposium on Formal Techniques in Real-Time and Fault-Tolerant Systems
Proceedings of the Second International Symposium on Formal Techniques in Real-Time and Fault-Tolerant Systems
PVS: A Prototype Verification System
CADE-11 Proceedings of the 11th International Conference on Automated Deduction: Automated Deduction
Understanding Protocols for Byzantine Clock Synchronization
Understanding Protocols for Byzantine Clock Synchronization
Verifying the Interactive Convergence Clock Synchronization algorithm Using the Boyer-Moore Theorem Prover
ACM SIGSOFT Software Engineering Notes
A formally verified algorithm for clock synchronization under a hybrid fault model
PODC '94 Proceedings of the thirteenth annual ACM symposium on Principles of distributed computing
Formal Verification for Fault-Tolerant Architectures: Prolegomena to the Design of PVS
IEEE Transactions on Software Engineering
Completeness and Consistency in Hierarchical State-Based Requirements
IEEE Transactions on Software Engineering - Special issue: best papers of the 17th International Conference on Software Engineering (ICSE-17)
Report Dagstuhl Seminar on Time Services SchloßDagstuhl, March 11. – March 15. 1996
Real-Time Systems - Special issue on global time in large scale distributed real-time systems, part III
Formally Verified On-Line Diagnosis
IEEE Transactions on Software Engineering
An Application of Formal Analysis to Software in a Fault-Tolerant Environment
IEEE Transactions on Computers
Systematic Formal Verification for Fault-Tolerant Time-Triggered Algorithms
IEEE Transactions on Software Engineering
Verifying a Logic-Synthesis Algorithm and Implementation: A Case Study in Software Verification
IEEE Transactions on Software Engineering
An Overview of Formal Verification for the Time-Triggered Architecture
FTRTFT '02 Proceedings of the 7th International Symposium on Formal Techniques in Real-Time and Fault-Tolerant Systems: Co-sponsored by IFIP WG 2.2
Proof-assistants using dependent type systems
Handbook of automated reasoning
Automotive electronics: present state and future prospects
FTCS'95 Proceedings of the Twenty-Fifth international conference on Fault-tolerant computing
Generating verifiable java code from verified PVS specifications
NFM'12 Proceedings of the 4th international conference on NASA Formal Methods
Hi-index | 0.01 |
The authors describe their experience with formal, machine-checked verification of algorithms for critical applications, concentrating on a Byzantine fault-tolerant algorithm for synchronizing the clocks in the replicated computers of a digital flight control system. The problems encountered in unsynchronized systems and the necessity, and criticality, of fault-tolerant synchronization are described. An overview of one such algorithm and of the arguments for its correctness are given. A verification of the algorithm performed using the authors' EHDM system for formal specification and verification is described. The errors found in the published analysis of the algorithm and benefits derived from the verification are indicated. Based on their experience, the authors derive some key requirements for a formal specification and verification system adequate to the task of verifying algorithms of the type considered. The conclusions regarding the benefits of formal verification in this domain and the capabilities required of verification systems in order to realize those benefits are summarized.