Title :
Formal verification for fault-tolerant architectures: prolegomena to the design of PVS
Author :
Owre, Sam ; Rushby, John ; Shankar, Natarajan ; Von Henke, Friedrich
Author_Institution :
Comput. Sci. Lab., SRI Int., Menlo Park, CA, USA
fDate :
2/1/1995 12:00:00 AM
Abstract :
PVS is the most recent in a series of verification systems developed at SRI. Its design was strongly influenced, and later refined, by our experiences in developing formal specifications and mechanically checked verifications for the fault-tolerant architecture, algorithms, and implementations of a model “reliable computing platform” (RCP) for life-critical digital flight-control applications, and by a collaborative project to formally verify the design of a commercial avionics processor called AAMP5. Several of the formal specifications and verifications performed in support of RCP and AAMP5 are individually of considerable complexity and difficulty. But in order to contribute to the overall goal, it has often been necessary to modify completed verifications to accommodate changed assumptions or requirements, and people other than the original developer have often needed to understand, review, build on, modify, or extract part of an intricate verification. We outline the verifications performed, present the lessons learned, and describe some of the design decisions taken in PVS to better support these large, difficult, iterative, and collaborative verifications
Keywords :
aerospace control; computer architecture; fault tolerant computing; formal specification; formal verification; reliability; safety-critical software; AAMP5; PVS; collaborative project; collaborative verifications; commercial avionics processor; fault-tolerant architecture; fault-tolerant architectures; formal specifications; formal verification; life-critical digital flight-control applications; reliable computing platform; verification systems; Aerospace control; Aerospace electronics; Algorithm design and analysis; Application software; Collaboration; Computer architecture; Fault tolerance; Formal specifications; Formal verification; Redundancy;
Journal_Title :
Software Engineering, IEEE Transactions on