Specifying concurrent programs in separation logic: morphisms and simulations
Loading...
Download
Official URL
Full text at PDC
Publication date
2019
Advisors (or tutors)
Editors
Journal Title
Journal ISSN
Volume Title
Publisher
Citation
Nanevski A, Banerjee A, Delbianco GA, Fábregas I (2019) Specifying concurrent programs in separation logic: morphisms and simulations. Proc ACM Program Lang 3(OOPSLA):1–30. https://doi.org/10.1145/3360587
Abstract
In addition to pre- and postconditions, program specifications in recent separation logics for concurrency have employed an algebraic structure of resourcesÐa form of state transition systemsÐto describe the state-based program invariants that must be preserved, and to record the permissible atomic changes to program state. In this paper we introduce a novel notion of resource morphism, i.e. structure-preserving function on resources, and show how to effectively integrate it into separation logic, using an associated notion of morphism-specific simulation. We apply morphisms and simulations to programs verified under one resource, to compositionally adapt them to operate under another resource, thus facilitating proof reuse.