Proceedings of the 34th Annual ACM SIGPLAN-SIGACT Symposium on Principles of Programming Languages 2007
DOI: 10.1145/1190216.1190234
|View full text |Cite
|
Sign up to set email alerts
|

Types, bytes, and separation logic

Abstract: We present a formal model of memory that both captures the lowlevel features of C's pointers and memory, and that forms the basis for an expressive implementation of separation logic. At the low level, we do not commit common oversimplifications, but correctly deal with C's model of programming language values and the heap. At the level of separation logic, we are still able to reason abstractly and efficiently. We implement this framework in the theorem prover Isabelle/HOL and demonstrate it on two case studi… Show more

Help me understand this report

Search citation statements

Order By: Relevance

Paper Sections

Select...
2
1
1
1

Citation Types

0
62
0

Year Published

2009
2009
2024
2024

Publication Types

Select...
7
2

Relationship

1
8

Authors

Journals

citations
Cited by 101 publications
(62 citation statements)
references
References 27 publications
0
62
0
Order By: Relevance
“…Examples of such systems successfully used in software verification include Coq [50], PVS [43], Isabelle [44], and ACL2 [31]. This approach has obvious benefits.…”
Section: Specificationsmentioning
confidence: 99%
“…Examples of such systems successfully used in software verification include Coq [50], PVS [43], Isabelle [44], and ACL2 [31]. This approach has obvious benefits.…”
Section: Specificationsmentioning
confidence: 99%
“…This allows, for example, the C function memset, which sets each byte in a region of the heap to a given value. We generally use a more abstract interface to this heap: we use additional typing information to lift the heap into functions from typed pointers to Isabelle terms; see Tuch et al [21,20] for more detail.…”
Section: Refinementmentioning
confidence: 99%
“…In [30], Tuch and Klein impose a typed heap abstraction on this untyped, byte-oriented memory to simplify reasoning about type-correct programs. Tuch et al [28,29,31] later combined this typed view with separation logic to address the problem of aliasing between variables of the same type. The problem of virtualmemory aliases, however, has been considered in the context of the L4.verified project only recently.…”
Section: Related Workmentioning
confidence: 99%