Algebraic separation logic (Q549676)
From MaRDI portal
| This is the item page for this Wikibase entity, intended for internal use and editing purposes. Please use this page instead for the normal view: Algebraic separation logic |
scientific article; zbMATH DE number 5925505
| Language | Label | Description | Also known as |
|---|---|---|---|
| English | Algebraic separation logic |
scientific article; zbMATH DE number 5925505 |
Statements
Algebraic separation logic (English)
0 references
18 July 2011
0 references
Separation logic is an extension of Hoare logic with reasoning about complex and shared data structures by added assertions to express separation between memory regions. For arbitrary assertions \( p\) and \(q\) the conjunction \(p \star q\) asserts that \(p\) and \(q\) both hold, but each for separate parts of the storage, and \(p-\star q\) holds for a region if (roughly) \(p\) holds in another region then \(q\) holds in joint region of these two regions. In this paper an algebraic approach to separation logic is presented. In particular, an algebraic characterization for assertions of separation logic is given and different classes of assertions are discussed. A relational semantics of the commands of a simple programming language associated with separation logic is given by the presented algebraic framework. It is shown how to algebraically formulate the requirement that a command preserves certain variables. It is claimed that the algebraic view does not only yield new insights into separation logic but also shortens proofs due to a point-free representation.
0 references
Hoare logic
0 references
separation logic
0 references
standard Kleene algebra
0 references
programming language
0 references
semantics
0 references