Advanced Search

Browse by Discipline

Scientific Societies

E-print Alerts

Add E-prints

E-print Network

  Advanced Search  

Separation Logic: A Logic for Shared Mutable Data Structures John C. Reynolds

Summary: Separation Logic: A Logic for Shared Mutable Data Structures
John C. Reynolds
Computer Science Department
Carnegie Mellon University
In joint work with Peter O'Hearn and others, based on
early ideas of Burstall, we have developed an extension of
Hoare logic that permits reasoning about low-level impera-
tive programs that use shared mutable data structure.
The simple imperative programming language is ex-
tended with commands (not expressions) for accessing and
modifying shared structures, and for explicit allocation and
deallocation of storage. Assertions are extended by intro-
ducing a "separating conjunction" that asserts that its sub-
formulas hold for disjoint parts of the heap, and a closely
related "separating implication". Coupled with the induc-
tive definition of predicates on abstract data structures, this
extension permits the concise and flexible description of
structures with controlled sharing.


Source: Andrews, Peter B. - Department of Mathematical Sciences, Carnegie Mellon University
Lenisa, Marina - Dipartimento di Matematica e Informatica, UniversitÓ degli Studi di Udine
Reynolds, John C. - School of Computer Science, Carnegie Mellon University


Collections: Computer Technologies and Information Sciences; Mathematics