Heuristically Increasing the Axiomatization Coverage of
Program Verification Systems
Bernhard Beckert, Thorsten Bormer, and Markus Wagner
The correctness of program verification systems is of great
importance, as they are used to formally prove that safety- and
security-critical programs follow their specification. This
correctness needs to be checked and demonstrated to users and
certification agencies. One of the contributing factors to the
correctness of the whole verification system is the correctness of the
background axiomatization, which captures the semantics of the program
language. We present an optimisation framework for the maximization of
the proportion of the axiomatization that is used ("covered") during
testing. As the creation of test cases is a very time consuming
process, we show how to increase the coverage for this critical
real-world application. Compared to regular testing, our experimental
results show that the combination of different heuristics leads to
significantly higher axiomatization coverage, This translates into a
significant increase in trust in the program verification system.