Results 1 
9 of
9
Algebraic Separation Logic
, 2010
"... We present an algebraic approach to separation logic. In particular, we give an algebraic characterisation for assertions of separation logic, discuss different classes of assertions and prove abstract laws fully algebraically. After that, we use our algebraic framework to give a relational semantic ..."
Abstract

Cited by 11 (6 self)
 Add to MetaCart
We present an algebraic approach to separation logic. In particular, we give an algebraic characterisation for assertions of separation logic, discuss different classes of assertions and prove abstract laws fully algebraically. After that, we use our algebraic framework to give a relational semantics of the commands of the simple programming language associated with separation logic. On this basis we prove the frame rule in an abstract and concise way. We also propose a more general version of separating conjunction which leads to a frame rule that is easier to prove. In particular, we show how to algebraically formulate the requirement that a command does not change certain variables; this is also expressed more conveniently using the generalised separating conjunction. The algebraic view does not only yield new insights on separation logic but also shortens proofs due to a point free representation. It is largely firstorder and hence enables the use of offtheshelf automated theorem provers for verifying properties at a more abstract level.
Functional pearl: Unfolding pointer algorithms
 Journal of Functional Programming
, 2001
"... A fair amount has been written on the subject of reasoning about pointer algorithms. There was a peak about 1980 when everyone seemed to be tackling the formal verification of the Schorr–Waite marking algorithm, including Gries (1979, Morris (1982) and Topor (1979). Bornat (2000) writes: “The Schorr ..."
Abstract

Cited by 6 (0 self)
 Add to MetaCart
A fair amount has been written on the subject of reasoning about pointer algorithms. There was a peak about 1980 when everyone seemed to be tackling the formal verification of the Schorr–Waite marking algorithm, including Gries (1979, Morris (1982) and Topor (1979). Bornat (2000) writes: “The Schorr–Waite algorithm is the
Kleene Algebras and Pointer Structures
, 2003
"... Kleene algebras (KA) have turned out to be an appropriate tool to formally describe algebraic systems in various areas. Despite this universal applicability there often proofs are easy and half as long as in concrete KAs. In this paper we describe how to use KAs to model edgelabeled directed graphs ..."
Abstract

Cited by 1 (1 self)
 Add to MetaCart
Kleene algebras (KA) have turned out to be an appropriate tool to formally describe algebraic systems in various areas. Despite this universal applicability there often proofs are easy and half as long as in concrete KAs. In this paper we describe how to use KAs to model edgelabeled directed graphs. As an application we show how the relational pointer algebra developed by B. Möller can be treated with this technique.
 all rights reserved  Towards Algebraic Separation Logic
, 2009
"... Abstract. We present an algebraic approach to separation logic. In particular, we give algebraic characterisations for all constructs of separation logic like assertions and commands. The algebraic view does not only yield new insights on separation logic but also shortens proofs and enables the use ..."
Abstract
 Add to MetaCart
(Show Context)
Abstract. We present an algebraic approach to separation logic. In particular, we give algebraic characterisations for all constructs of separation logic like assertions and commands. The algebraic view does not only yield new insights on separation logic but also shortens proofs and enables the use of automated theorem provers for verifying properties at a more abstract level. 1
01081 Applications of Kleene Algebra 18.02.200123.02.2001 organized by
"... quential composition, choice and nite iteration. It was rst introduced by Kleene in 1956 and further developed by Conway in 1971. It has reappeared in many contexts in mathematics and computer science. Its classical application has been within the theory of formal languages, where it is one of many ..."
Abstract
 Add to MetaCart
quential composition, choice and nite iteration. It was rst introduced by Kleene in 1956 and further developed by Conway in 1971. It has reappeared in many contexts in mathematics and computer science. Its classical application has been within the theory of formal languages, where it is one of many equivalent approaches to the description of regular languages. Within the eld of eÆcient algorithms it has been applied to path problems on graphs (being closely related to the algebra of closed semirings [2]), to convex hull algorithms and formal treatment of pointer algorithms [5, 6, 10, 14, 12]. In compiler construction, Kleene algebra can be used to prove the correctness of optimization techniques for loop constructs [25]. More recently, Kleene algebra has been successfully applied to the semantic description of imperative programs with nondeterministic choice [4]. It covers both angelic and demonic composition and choice [17, 18]. Moreover, it allows a simple algebraic incorporation of assertions [21] as well as modal and dynamic logic [31, 26]. Also, there are close relations with interval
Case Studies For The Derivation Of Pointer Algorithms
, 2003
"... The method presented in [13] by Bernhard Möller to derive pointer algorithms has been shown wellapplicable and easytouse in several various examples. We present ..."
Abstract
 Add to MetaCart
The method presented in [13] by Bernhard Möller to derive pointer algorithms has been shown wellapplicable and easytouse in several various examples. We present
Simplifying Pointer Kleene Algebra
"... Pointer Kleene algebra has proved to be a useful abstraction for reasoning about reachability properties and correctly deriving pointer algorithms. Unfortunately it comes with a complex set of operations and defining (in)equations which exacerbates its practicability with automated theorem proving s ..."
Abstract
 Add to MetaCart
(Show Context)
Pointer Kleene algebra has proved to be a useful abstraction for reasoning about reachability properties and correctly deriving pointer algorithms. Unfortunately it comes with a complex set of operations and defining (in)equations which exacerbates its practicability with automated theorem proving systems but also its use by theory developers. Therefore we provide an easier access to this approach by simpler axioms and laws which also are more amenable to automatic theorem proving systems. 1
Algebraic Separation Logic
"... We present an algebraic approach to separation logic. In particular, we give an algebraic characterisation for assertions of separation logic, discuss different classes of assertions and prove abstract laws fully algebraically. After that, we use our algebraic framework to give a relational semantic ..."
Abstract
 Add to MetaCart
(Show Context)
We present an algebraic approach to separation logic. In particular, we give an algebraic characterisation for assertions of separation logic, discuss different classes of assertions and prove abstract laws fully algebraically. After that, we use our algebraic framework to give a relational semantics of the commands of a simple programming language associated with separation logic. On this basis we prove the frame rule in an abstract and concise way, parametric in the operator of separating conjunction, of which two particular variants are discussed. In this we also show how to algebraically formulate the requirement that a command preserves certain variables. The algebraic view does not only yield new insights on separation logic but also shortens proofs due to a point free representation. It is largely firstorder and hence enables the use of offtheshelf automated theorem provers for verifying properties at an abstract level.