Nested Hoare Triples and Frame Rules for Higher-order Store

Schwinghammer, Jan, Birkedal, Lars, Reus, Bernhard and Yang, Hongseok (2011) Nested Hoare Triples and Frame Rules for Higher-order Store. Logical Methods in Computer Science, 7 (3). pp. 1-42. ISSN 1860-5974

[img] PDF
Restricted to SRO admin only

Download (452kB)


Separation logic is a Hoare-style logic for reasoning about programs with heap-allocated mutable data structures. As a step toward extending separation logic to high-level languages with ML-style general (higher-order) storage, we investigate the compatibility of nested Hoare triples with several variations of higher-order frame rules. The interaction of nested triples and frame rules can be subtle, and the inclusion of certain frame rules is in fact unsound. A particular combination of rules can be shown consistent by means of a Kripke model where worlds live in a recursively defined ultrametric space. The resulting logic allows us to elegantly prove programs involving stored code. In particular, using recursively defined assertions, it leads to natural specifications and proofs of invariants required for dealing with recursion through the store.

Item Type: Article
Schools and Departments: School of Engineering and Informatics > Informatics
Depositing User: Bernhard Reus
Date Deposited: 06 Feb 2012 19:29
Last Modified: 08 Mar 2017 08:53

View download statistics for this item

📧 Request an update