Separation Logic with One Quantified Variable

We investigate first-order separation logic with one record field restricted to a unique quantified variable (1SL1). Undecidability is known when the number of quantified variables is unbounded and the satisfiability problem is pspace-complete for the propositional fragment. We show that the satisfiability problem for 1SL1 is pspace-complete and we characterize its expressive power by showing that every formula is equivalent to a Boolean combination of atomic properties. This contributes to our understanding of fragments of first-order separation logic that can specify properties about the memory heap of programs with singly-linked lists. When the number of program variables is fixed, the complexity drops to polynomial time. All the fragments we consider contain the magic wand operator and first-order quantification over a single variable.

[1]  Stéphane Demri,et al.  Reasoning about sequences of memory states , 2009, Ann. Pure Appl. Log..

[2]  Peter W. O'Hearn,et al.  BI as an assertion language for mutable data structures , 2001, POPL '01.

[3]  Nikolaj Bjørner,et al.  Z3: An Efficient SMT Solver , 2008, TACAS.

[4]  Didier Galmiche,et al.  Tableaux and Resource Graphs for Separation Logic , 2010, J. Log. Comput..

[5]  Richard E. Ladner,et al.  The Computational Complexity of Provability in Systems of Modal Propositional Logic , 1977, SIAM J. Comput..

[6]  Radu Iosif,et al.  The Tree Width of Separation Logic with Recursive Definitions , 2013, CADE.

[7]  Peter W. O'Hearn,et al.  Smallfoot: Modular Automatic Assertion Checking with Separation Logic , 2005, FMCO.

[8]  Joël Ouaknine,et al.  SeLoger: A Tool for Graph-Based Reasoning in Separation Logic , 2013, CAV.

[9]  Dominique Larchey-Wendling,et al.  The Undecidability of Boolean BI through Phase Semantics , 2010, 2010 25th Annual IEEE Symposium on Logic in Computer Science.

[10]  John C. Reynolds,et al.  Separation logic: a logic for shared mutable data structures , 2002, Proceedings 17th Annual IEEE Symposium on Logic in Computer Science.

[11]  Stéphane Demri,et al.  Two-Variable Separation Logic and Its Inner Circle , 2015, ACM Trans. Comput. Log..

[12]  Ruzica Piskac,et al.  Automating Separation Logic Using SMT , 2013, CAV.

[13]  Stéphane Demri,et al.  On the almighty wand , 2012, Inf. Comput..

[14]  Joël Ouaknine,et al.  Tractable Reasoning in a Fragment of Separation Logic , 2011, CONCUR.

[15]  James Brotherston,et al.  Undecidability of Propositional Separation Logic and Its Neighbours , 2010, LICS.

[16]  Peter W. O'Hearn,et al.  Computability and Complexity Results for a Spatial Assertion Language for Data Structures , 2001, APLAS.