DocumentCode
1852832
Title
Proving refinement transformations for deriving high-assurance software
Author
Winter, Victor L. ; Boyle, James M.
Author_Institution
Sandia Nat. Labs., USA
fYear
1996
fDate
21-22 Oct 1996
Firstpage
68
Lastpage
77
Abstract
The construction of a high-assurance system requires some evidence, ideally a proof, that the system as implemented will behave as required. Direct proofs of implementations do not scale up well as systems become more complex and therefore are of limited value. In recent years, refinement-based approaches have been investigated as a means to manage the complexity inherent in the verification process. In a refinement-based approach, a high-level specification is converted into an implementation through a number of refinement steps. The hope is that the proofs of the individual refinement steps will be easier than a direct proof of the implementation. However, if stepwise refinement is performed manually, the number of steps is severly limited, implying that the size of each step is large. If refinement steps are large, then proofs of their correctness will not be much easier than a direct proof of the implementation. We describe an approach to refinement-based software development that is based on automatic application of refinements, expressed as program transformations. This automation has the desirable effect that the refinement steps can be extremely small and, thus, easy to prove correct. We give an overview of the TAMPR transformation system that we use for automated refinement. We then focus on some aspects of the semantic framework that we have been developing to enable proofs that TAMPR transformations are correctness preserving. With this framework proofs of correctness for transformations can be obtained with the assistance of an automated reasoning system
Keywords
computer aided software engineering; formal specification; inference mechanisms; knowledge based systems; program verification; software engineering; software reliability; software tools; TAMPR transformation system; automated reasoning system; automated refinement; high-assurance software engineering; high-level specification; program transformations; program verification; refinement transformation proving; refinement-based approach; semantic framework; stepwise refinement; Automation; Contracts; Hardware; Laboratories; Missiles; Power generation economics; Programming; Software engineering; Software safety; Software tools;
fLanguage
English
Publisher
ieee
Conference_Titel
High-Assurance Systems Engineering Workshop, 1996. Proceedings., IEEE
Conference_Location
Niagara on the Lake, Ont.
Print_ISBN
0-8186-7629-9
Type
conf
DOI
10.1109/HASE.1996.618567
Filename
618567
Link To Document