Skip to Main content Skip to Navigation
Conference papers

A Generalized Program Verification Workflow Based on Loop Elimination and SA Form

Abstract : This paper presents a minimal model of the functioning of program verification and property checking tools based on (i) the encoding of loops as non-iterating programs, either conservatively, making use of invariants and assume/assert commands, or in a bounded way; and (ii) the use of an intermediate single-assignment (SA) form. The model captures the basic workflow of tools like Boogie, Why3, or CBMC, building on a clear distinction between operational and axiomatic semantics. This allows us to consider separately the soundness of program annotation, loop encoding, translation into SA form, and verification condition (VC) generation, as well as appropriate notions of completeness for each of these processes. To the best of our knowledge, this is the first formalization of a bounded model checking of software technique, including soundness and completeness proofs using Hoare logic; we also give the first completeness proof of a deductive verification technique based on a conservative encoding of invariant-annotated loops with assume/assert in SA form, as well as the first soundness proof based on a program logic.
Complete list of metadata

Cited literature [28 references]  Display  Hide  Download

https://hal.inria.fr/hal-02431769
Contributor : Cláudio Belo Lourenço <>
Submitted on : Wednesday, January 8, 2020 - 10:37:22 AM
Last modification on : Thursday, July 8, 2021 - 3:46:04 AM
Long-term archiving on: : Thursday, April 9, 2020 - 3:58:52 PM

File

main.pdf
Files produced by the author(s)

Identifiers

  • HAL Id : hal-02431769, version 1

Citation

Cláudio Belo Lourenço, Maria Frade, Jorge Sousa Pinto. A Generalized Program Verification Workflow Based on Loop Elimination and SA Form. FormaliSE 2019 - 7th International Conference on Formal Methods in Software Engineering, May 2019, Montreal, Canada. ⟨hal-02431769⟩

Share

Metrics

Record views

134

Files downloads

223