Heap-Dependent Expressions in Separation Logic - Formal Techniques for Distributed Systems
Conference Papers Year : 2010

Heap-Dependent Expressions in Separation Logic

Abstract

Separation logic is a popular specification language for imperative programs where the heap can only be mentioned through points-to assertions. However, separation logic's take on assertions does not match well with the classical view of assertions as boolean, side effect-free, potentially heap-dependent expressions from the host programming language familiar to many developers. In this paper, we propose a variant of separation logic where side effect-free expressions from the host programming language, such as pointer dereferences and invocations of pure methods, can be used in assertions. We modify the symbolic execution-based verification algorithm used in Smallfoot to support mechanized checking of our variant of separation logic. We have implemented this algorithm in a tool and used the tool to verify some interesting programming patterns.
Fichier principal
Vignette du fichier
61170168.pdf (168.53 Ko) Télécharger le fichier
Origin Files produced by the author(s)
Loading...

Dates and versions

hal-01055155 , version 1 (11-08-2014)

Licence

Identifiers

Cite

Jan Smans, Bart Jacobs, Frank Piessens. Heap-Dependent Expressions in Separation Logic. Joint 12th IFIP WG 6.1 International Conference on Formal Methods for Open Object-Based Distributed Systems (FMOODS) / 30th IFIP WG 6.1 International Conference on Formal Techniques for Networked and Distributed Systems (FORTE), Jun 2010, Amsterdam, Netherlands. pp.170-185, ⟨10.1007/978-3-642-13464-7_14⟩. ⟨hal-01055155⟩
134 View
201 Download

Altmetric

Share

More