Formal Verification of algorithms for critical systems

16Citations
Citations of this article
1Readers
Mendeley users who have this article in their library.
Get full text

Abstract

We describe our 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. First, we explain the problems encountered in unsynchronized systems and the necessity, and criticality, of fault-tolerant synchronization. We give an overview of one such algorithm, and of the arguments for its correctness. Next, we describe a verification of the algorithm that we performed using our EHDM system for formal specification and verification. We indicate the errors we found in the published analysis of the algorithm, and other benefits that we derived from the verification. Based on our experience, we derive some key requirements for a formal specification and verification system adequate to the task of verifying algorithms of the type considered. Finally, we summarize our conclusions regarding the benefits of formal verification in this domain, and the capabilities required of verification systems in order to realize those benefits.

Cite

CITATION STYLE

APA

Rushby, J., & Von Henke, F. (1991). Formal Verification of algorithms for critical systems. In Proceedings of the Conference on Software for Citical Systems, SIGSOFT 1991 (pp. 1–15). Association for Computing Machinery, Inc. https://doi.org/10.1145/125083.123044

Register to see more suggestions

Mendeley helps you to discover research relevant for your work.

Already have an account?

Save time finding and organizing research with Mendeley

Sign up for free