## 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 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 first-order and hence enables the use of off-the-shelf automatedWe 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 first-order and hence enables the use of off-the-shelf automated theorem provers for verifying properties at a more abstract level.…

Author: | Han Hing Dang, Peter HöfnerGND, Bernhard MöllerGND |
---|---|

URN: | urn:nbn:de:bvb:384-opus4-11715 |

Frontdoor URL | https://opus.bibliothek.uni-augsburg.de/opus4/1422 |

Series (Serial Number): | Reports / Technische Berichte der Fakultät für Angewandte Informatik der Universität Augsburg (2010-06) |

Type: | Report |

Language: | English |

Publishing Institution: | Universität Augsburg |

Release Date: | 2010/08/02 |

Tag: | separation logic; algebra |

Institutes: | Fakultät für Angewandte Informatik |

Fakultät für Angewandte Informatik / Institut für Informatik | |

Fakultät für Angewandte Informatik / Institut für Informatik / Professur für Programmiermethodik und Multimediale Informationssysteme | |

Dewey Decimal Classification: | 0 Informatik, Informationswissenschaft, allgemeine Werke / 00 Informatik, Wissen, Systeme / 004 Datenverarbeitung; Informatik |

Licence (German): | Deutsches Urheberrecht |