Bandera: extracting finite-state models from Java source code
Proceedings of the 22nd international conference on Software engineering
An axiomatic basis for computer programming
Communications of the ACM
A Discipline of Programming
Refinement of Safety-Related Hazards into Verifiable Code Assertions
SAFECOMP '98 Proceedings of the 17th International Conference on Computer Safety, Reliability and Security
Hi-index | 0.00 |
In this paper we describe an Assertion Checking Environment (ACE) for compositional verification of programs which are written in an industrially sponsored safe sub-set of C programming language called MISRA C [1]. The theory is based on Hoare logic [2] and the C programs are verified using static assertion checking technique. First the functional specifications of the program, captured in the form of preand post-conditions for each C function, are derived from the specifications. These pre- and post-conditions are then introduced as assertions( annotations or formal comments) in the program code. The assertions are then proved formally using ACE and theorem proving tool called Stanford Temporal Prover(STeP) [3]. ACE has been developed by us and consists of a translator c2spl, a GUI and some utility programs. The technique and tools developed are targeted towards verification of embedded software.