University of Sussex
Browse

File(s) under permanent embargo

Nested Hoare Triples and Frame Rules for Higher-order Store

journal contribution
posted on 2023-06-07, 23:04 authored by Jan Schwinghammer, Lars Birkedal, Bernhard ReusBernhard Reus, Hongseok Yang
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.

History

Publication status

  • Published

Journal

Logical Methods in Computer Science

ISSN

1860-5974

Issue

3

Volume

7

Page range

1-42

Department affiliated with

  • Informatics Publications

Full text available

  • No

Peer reviewed?

  • Yes

Legacy Posted Date

2012-02-06

Usage metrics

    University of Sussex (Publications)

    Categories

    No categories selected

    Exports

    RefWorks
    BibTeX
    Ref. manager
    Endnote
    DataCite
    NLM
    DC