Loading…
A Mechanical Analysis of Program Verification Strategies
We analyze three proof strategies commonly used in deductive verification of deterministic sequential programs formalized with operational semantics. The strategies are (i) stepwise invariants , (ii) clock functions , and (iii) inductive assertions . We show how to formalize the strategies in the...
Saved in:
Published in: | Journal of automated reasoning 2008-05, Vol.40 (4), p.245-269 |
---|---|
Main Authors: | , , , |
Format: | Article |
Language: | English |
Subjects: | |
Citations: | Items that this one cites Items that cite this one |
Online Access: | Get full text |
Tags: |
Add Tag
No Tags, Be the first to tag this record!
|
Summary: | We analyze three proof strategies commonly used in deductive verification of deterministic sequential programs formalized with operational semantics. The strategies are (i)
stepwise invariants
, (ii)
clock functions
, and (iii)
inductive assertions
. We show how to formalize the strategies in the logic of the ACL2 theorem prover. Based on our formalization, we prove that each strategy is both
sound
and
complete
. The completeness result implies that given any proof of correctness of a sequential program one can derive a proof in each of the above strategies. The soundness and completeness theorems have been mechanically checked with ACL2. |
---|---|
ISSN: | 0168-7433 1573-0670 |
DOI: | 10.1007/s10817-008-9098-1 |