Abstract

Consistency enforcement provides an alternative to common program verification within formal program specification languages. The existing approach uses a partial order on semantic equivalence classes of program specifications, called specialization, and aims to replace a given specification S by the greatest consistent specialization SI which is provably consistent with respect to the given static invariant I.The underlying logic is arithmetic logic which allows computability and decidability issues in connection with the constructive generation of SI to be investigated.In this paper we justify the axiomatic approach to Dijkstra's calculus with respect to arithmetic logic and develop a new theory on top of that basis for which the construction problem of the greatest consistent specialization of a complex specification can be reduced to the involved basic commands and the investigation of a precondition. In addition, we are now even able to show that this construction is computable under mild restrictions concerning recursive program specifications and that the occuring precondition is decidable for common classes of invariants.

Full Text
Published version (Free)

Talk to us

Join us for a 30 min session where you can share your feedback and ask us any queries you have

Schedule a call