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

dc.contributor.author Belo Lourenco,C en
dc.contributor.author Maria João Frade en
dc.contributor.author Jorge Sousa Pinto en
dc.contributor.other 5605 en
dc.contributor.other 5595 en
dc.date.accessioned 2019-12-14T00:45:09Z
dc.date.available 2019-12-14T00:45:09Z
dc.date.issued 2019 en
dc.description.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 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. © 2019 IEEE. en
dc.identifier.uri http://repositorio.inesctec.pt/handle/123456789/10519
dc.identifier.uri http://dx.doi.org/10.1109/formalise.2019.00017 en
dc.language eng en
dc.rights info:eu-repo/semantics/openAccess en
dc.title A Generalized Program Verification Workflow Based on Loop Elimination and SA Form en
dc.type Publication en
dc.type conferenceObject en
Files
Original bundle
Now showing 1 - 1 of 1
Thumbnail Image
Name:
P-00R-277.pdf
Size:
383.14 KB
Format:
Adobe Portable Document Format
Description: