A Decision Procedure for Satisfiability in Separation Logic with Inductive Definitions

The work

AuthorsJames Brotherston; Carsten Fuhs; Juan A. Navarro Pérez; Nikos Gorogiannis
Editors
Typeinproceedings
Year2014
Citekeybrotherston2014decision

Where it appeared

Published inProceedings of the Joint Meeting of the Twenty-Third EACSL Annual Conference on Computer Science Logic (CSL) and the Twenty-Ninth Annual ACM/IEEE Symposium on Logic in Computer Science (LICS)
PublisherAssociation for Computing Machinery
Pages1--10

Abstract

We show that the satisfiability problem for the “symbolic heap” fragment of separation logic with general inductively defined predicates — which includes most fragments employed in program verification — is decidable. Our decision procedure is based on the computation of a certain fixed point from the definition of an inductive predicate, called its “base”, that exactly characterises its satisfiability. A complexity analysis of our decision procedure shows that it runs, in the worst case, in exponential time. In fact, we show that the satisfiability problem for our inductive predicates is EXPTIME-complete, and becomes NP-complete when the maximum arity over all predicates is bounded by a constant. Finally, we provide an implementation of our decision procedure, and analyse its performance both on a synthetically generated set of test formulas, and on a second test set harvested from the separation logic literature. For the large majority of these test cases, our tool reports times in the low milliseconds.

A copy is held

pdf, 385.6 kB. Not published — it may be under copyright. The facts and links here are.

How it got here

How it got hereimport via bibtex
Added2026-08-18 00:00 UTC
Approved bya person 2026-09-23 14:12 UTC

Cite it as

@inproceedings{brotherston2014decision,
  title        = {A Decision Procedure for Satisfiability in Separation Logic with Inductive Definitions},
  author       = {James Brotherston and Carsten Fuhs and Juan A. Navarro Pérez and Nikos Gorogiannis},
  year         = {2014},
  booktitle    = {Proceedings of the Joint Meeting of the Twenty-Third EACSL Annual Conference on Computer Science Logic (CSL) and the Twenty-Ninth Annual ACM/IEEE Symposium on Logic in Computer Science (LICS)},
  publisher    = {Association for Computing Machinery},
  pages        = {1--10},
  doi          = {10.1145/2603088.2603091},
}

This record lives at https://refs.drheap.org/brotherston2014decision/ and will keep doing so.