Separation logic for sequential programs (functional pearl)
Arthur Charguéraud
Abstract
This paper presents a simple mechanized formalization of Separation Logic for sequential programs. This formalization is aimed for teaching the ideas of Separation Logic, including its soundness proof and its recent enhancements. The formalization serves as support for a course that follows the style of the successful Software Foundations series, with all the statement and proofs formalized in Coq. This course only assumes basic knowledge of lambda-calculus, semantics and logics, and therefore should be accessible to a broad audience.
Topics & Concepts
SoundnessComputer scienceProgramming languageMathematical proofSeparation logicPearlStatement (logic)Simple (philosophy)Proof theoryCalculus (dental)MathematicsEpistemologyPhilosophyMedicineTheologyDentistryGeometryLogic, programming, and type systemsFormal Methods in VerificationLogic, Reasoning, and Knowledge