🤖 AI Summary
The incompleteness of Separation Logic with Inductive Definitions (SLID) stems from non-standard models under standard first-order semantics, rendering quantified entailments undecidable for existing automated provers.
Method: We propose Weak Separation Logic (WSL), the first framework enabling first-order logic reduction for SLID fragments extended with background theories and inductive predicates, and formally prove its completeness. We further formalize symbolic-structure semantics and integrate fold/unfold reasoning with model generation to systematically search for and classify countermodels.
Results: Evaluated on 700+ benchmarks using a prototype tool, our approach successfully identifies numerous counterexamples and establishes the first interpretable, taxonomy-based countermodel classification system—providing both theoretical foundations and practical methodology for diagnosing and mitigating real-world SLID proof failures.
📝 Abstract
For over two decades Separation Logic has been arguably the most popular framework for reasoning about heap-manipulating programs, as well as reasoning about shared resources and permissions. Separation Logic is often extended to include inductively-defined predicates, interpreted as least fixpoints, forming Separation Logic with Inductive Definitions (SLID). Many theoretical and practical advances have been made in developing automated proof mechanisms for SLID, but these mechanisms are imperfect, and a deeper understanding of their failures is desired. As expressive as Separation Logic is, it is not surprising that it is incomplete, and in fact, it contains several sources of incompleteness that defy automated reasoning.
In this paper we study these sources of incompleteness and how they relate to failures of proof mechanisms. We place SLID within a larger logic, that we call Weak Separation Logic (WSL). We prove that unlike SLID, WSL is complete for a non-trivial fragment of quantified entailments with background theories and inductive definitions, via a reduction to first-order logic (FOL). Moreover, we show that the ubiquitous fold/unfold proof mechanism is sound and complete for theory-free, quantifier-free WSL entailments with inductive definitions. Through this, we understand proof failures as stemming from nonstandard models present in WSL, but not allowed in SLID. These rogue models are typically infinite, and we use the formalism of symbolic structures to represent and automatically find them.
We present a prototype tool that implements the FOL encoding of WSL and test it on an existing benchmark, which contains over 700 quantified entailment problems with inductive definitions. Our tool is able to find counter-models to many of the examples, and we provide a partial taxonomy of the rogue models, shedding some light on real-world proof failures.