Technical Reports

Marius Bozga, Radu Iosif, Swann Perarnau
Quantitative Separation Logic and Programs with Lists (2007)


Keywords: Separation Logic, Program verification, Decidability

Abstract: This paper presents an extension of a decidable fragment of Separation Logic for singly-linked lists, defined by Berdine, Calcagno and O'Hearn \cite{berdine-calcagno-ohearn04}. Our main extension consists in introducing atomic formulae of the form $ls^k(x, y)$ describing a list segment of length $k$, stretching from $x$ to $y$, where $k$ is a logical variable interpreted over positive natural numbers, that may occur further inside Presburger constraints. We study the decidability of the full first-order logic combining unrestricted quantification of arithmetic and location variables. Although the full logic is found to be undecidable, validity of entailments between formulae with the quantifier prefix in the language $\exists^* \{\exists_\nat, \forall_\nat\}^*$ is decidable. We provide here a model theoretic method, based on a parametric notion of shape graphs. We have implemented our decision technique, providing a fully automated framework for the verification of quantitative properties expressed as pre- and post-conditions on programs working on lists and integer counters.

Contact | Site Map | Site powered by SPIP 3.2.19 + AHUNTSIC [CC License]

info visites 2139356