Abstraction and Subsumption in Modular Verification of C Programs
Author(s): Beringer, Lennart; Appel, Andrew W
DownloadTo refer to this page use:
http://arks.princeton.edu/ark:/88435/pr1b83f
Full metadata record
DC Field | Value | Language |
---|---|---|
dc.contributor.author | Beringer, Lennart | - |
dc.contributor.author | Appel, Andrew W | - |
dc.date.accessioned | 2021-10-08T19:44:46Z | - |
dc.date.available | 2021-10-08T19:44:46Z | - |
dc.date.issued | 2019 | en_US |
dc.identifier.citation | Beringer, Lennart, and Andrew W. Appel. "Abstraction and Subsumption in Modular Verification of C Programs." In International Symposium on Formal Methods (2019): pp. 573-590. doi:10.1007/978-3-030-30942-8_34 | en_US |
dc.identifier.issn | 0302-9743 | - |
dc.identifier.uri | https://www.cs.princeton.edu/~appel/papers/funspec_sub.pdf | - |
dc.identifier.uri | http://arks.princeton.edu/ark:/88435/pr1b83f | - |
dc.description.abstract | Representation predicates enable data abstraction in separation logic, but when the same concrete implementation may need to be abstracted in different ways, one needs a notion of subsumption. We demonstrate function-specification subtyping, analogous to subtyping, with a subsumption rule: if 𝜙 is a Open image in new window of 𝜓 , that is 𝜙<:𝜓 , then 𝑥:𝜙 implies 𝑥:𝜓 , meaning that any function satisfying specification 𝜙 can be used wherever a function satisfying 𝜓 is demanded. We extend previous notions of Hoare-logic sub-specification, which already included parameter adaption, to include framing (necessary for separation logic) and impredicative bifunctors (necessary for higher-order functions, i.e. function pointers). We show intersection specifications, with the expected relation to subtyping. We show how this enables compositional modular verification of the functional correctness of C programs, in Coq, with foundational machine-checked proofs of soundness. | en_US |
dc.format.extent | 573 - 590 | en_US |
dc.language.iso | en_US | en_US |
dc.relation.ispartof | International Symposium on Formal Methods | en_US |
dc.relation.ispartofseries | Lecture Notes in Computer Science; | - |
dc.rights | Author's manuscript | en_US |
dc.title | Abstraction and Subsumption in Modular Verification of C Programs | en_US |
dc.type | Conference Article | en_US |
dc.identifier.doi | 10.1007/978-3-030-30942-8_34 | - |
pu.type.symplectic | http://www.symplectic.co.uk/publications/atom-terms/1.0/conference-proceeding | en_US |
Files in This Item:
File | Description | Size | Format | |
---|---|---|---|---|
AbstractionSubsumptionCProgramVerification.pdf | 424.05 kB | Adobe PDF | View/Download |
Items in OAR@Princeton are protected by copyright, with all rights reserved, unless otherwise indicated.