2012
DOI: 10.2168/lmcs-8(3:1)2012
|View full text |Cite
|
Sign up to set email alerts
|

The Relationship Between Separation Logic and Implicit Dynamic Frames

Abstract: Abstract. Separation logic is a concise method for specifying programs that manipulate dynamically allocated storage. Partially inspired by separation logic, Implicit Dynamic Frames has recently been proposed, aiming at first-order tool support. In this paper, we precisely connect the semantics of these two logics. We define a logic whose syntax subsumes both that of a standard separation logic, and that of implicit dynamic frames as sub-syntaxes. We define a total heap semantics for our logic, and, for the se… Show more

Help me understand this report
View preprint versions

Search citation statements

Order By: Relevance

Paper Sections

Select...
2
1
1
1

Citation Types

0
33
0

Year Published

2013
2013
2022
2022

Publication Types

Select...
7

Relationship

1
6

Authors

Journals

citations
Cited by 30 publications
(33 citation statements)
references
References 15 publications
0
33
0
Order By: Relevance
“…It seems that none of the other verification systems that we are aware of try to make heap or heap-like structures explicit on the level of the specification language, although certainly some of them indeed use multiple heap or heap-like structures internally. Most notably, the Chalice tool [15,22] works with two global variables H and P , that, respectively, represent the heap and the permission mask in the Boogie proof obligations. Not exposing the heap in the Separation Logic specifications and associated tools [11,7] seems natural, however, applying them to new verification scenarios named in Sect.…”
Section: Discussionmentioning
confidence: 99%
See 2 more Smart Citations
“…It seems that none of the other verification systems that we are aware of try to make heap or heap-like structures explicit on the level of the specification language, although certainly some of them indeed use multiple heap or heap-like structures internally. Most notably, the Chalice tool [15,22] works with two global variables H and P , that, respectively, represent the heap and the permission mask in the Boogie proof obligations. Not exposing the heap in the Separation Logic specifications and associated tools [11,7] seems natural, however, applying them to new verification scenarios named in Sect.…”
Section: Discussionmentioning
confidence: 99%
“…Permission accounting is a specification oriented methodology for ensuring race freedom in concurrent programs that allows for efficient threadlocal reasoning. Similarly to the implementation of permissions in the Chalice tool [15,22] we introduce a permission mask to the JDL to keep track of permissions in the verified programs. From our point of view, this permission mask is nothing more than a parallel heap-like structure that stores permission values for each location instead of the actual values.…”
Section: New Applications For Multiple Heaps In Verificationmentioning
confidence: 99%
See 1 more Smart Citation
“…Our SL translation and the handling of the frame rule is in part inspired by work on implicit dynamic frames [20,24]. Per se, the implicit dynamic frames approach provides no decidability guarantees for the first-order logic fragment used by the SL encoding.…”
Section: Related Work and Conclusionmentioning
confidence: 99%
“…In this paper, we present GRASShopper, a tool which extends our previous work with support for local reasoning. Inspired by implicit dynamic frames [20,24], we present a translation of programs with mixed separation logic and first-order logic specifications to programs with GRASS specifications. The translation and verification of the resulting program is fully automated.…”
Section: Introductionmentioning
confidence: 99%