DocumentCode
884212
Title
Formal verification of algorithms for critical systems
Author
Rushby, John M. ; Henke, Friedrich Von
Author_Institution
SRI Int., Menlo Park, CA, USA
Volume
19
Issue
1
fYear
1993
fDate
1/1/1993 12:00:00 AM
Firstpage
13
Lastpage
23
Abstract
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
Keywords
fault tolerant computing; formal specification; formal verification; safety; software reliability; synchronisation; Byzantine fault-tolerant algorithm; EHDM system; critical systems; digital flight control system; fault-tolerant synchronization; formal specification; machine-checked verification; Aerospace control; Aircraft; Application software; Clocks; Control systems; Fault tolerance; Fault tolerant systems; Formal specifications; Formal verification; Synchronization;
fLanguage
English
Journal_Title
Software Engineering, IEEE Transactions on
Publisher
ieee
ISSN
0098-5589
Type
jour
DOI
10.1109/32.210304
Filename
210304
Link To Document