A Program Construction and Verification Tool for Separation Logic [chapter]

Brijesh Dongol, Victor B. F. Gomes, Georg Struth
2015 Lecture Notes in Computer Science  
An algebraic approach to the design of program construction and verification tools is applied to separation logic. The control-flow level is modelled by power series with convolution as separating conjunction. A generic construction lifts resource monoids to assertion and predicate transformer quantales. The data domain is captured by concrete store-heap models. These are linked to the separation algebra by soundness proofs. Verification conditions and transformation or refinement laws are
more » ... ed by equational reasoning within the predicate transformer quantale. This separation of concerns makes an implementation in the Isabelle/HOL proof assistant simple and highly automatic. The resulting tool is itself correct by construction; it is explained on three simple examples.
doi:10.1007/978-3-319-19797-5_7 fatcat:o4cbszfqz5cxvfaj3v5sk4q2l4