Title
Using invariants to optimize formal specifications before code synthesis
Abstract
Formal specifications of required system behavior can be analyzed, verified, and validated, giving high confidence that the specification captures the desired behavior. Trans- ferring this confidence to the system implementation de- pends on a formal link between requirements and imple- mentation. The automatic generation of provably correct code provides just such a link. While optimization is usu- ally performed on code to achieve efficiency, we propose to optimize the formal specification before generating code, thus providing optimization independent of the particular code generation method. This paper investigates the use of invariants in optimizing code generated from formal speci- fications in the Software Cost Reduction (SCR) tabular no- tation. We show that invariants (1) provide the basis for simplifying expressions that otherwise cannot be improved using traditional compiler optimization techniques, and (2) allow detection and elimination of parts of the specification that would lead to unreachable code.
Year
DOI
Venue
2004
10.1109/MEMCOD.2004.1459821
MEMOCODE
Keywords
Field
DocType
formal specification,optimising compilers,code generation,code optimization,code synthesis,formal specifications,invariants,software cost reduction
Program optimization,Dead code elimination,Unreachable code,Programming language,Computer science,Optimizing compiler,Compiler,Redundant code,Formal specification,Code generation,Theoretical computer science
Conference
ISBN
Citations 
PageRank 
0-7803-8509-8
0
0.34
References 
Authors
20
2
Name
Order
Citations
PageRank
Ralph D. Jeffords143434.88
Elizabeth I. Leonard21108.48