一句话:引入弱分离逻辑 WSL 刻画 SLID 证明机制的不完备性,将证明失败归因于非标准模型,并通过 FOL 归约自动寻找反模型。
分离逻辑扩展归纳定义(SLID)可描述堆中无界数据结构,但其证明机制本质不完备。本文研究 SLID 不完备性来源,并置于更宽松的弱分离逻辑(WSL)中理解。作者证明 WSL 在带背景理论和归纳定义的量化蕴涵的某个非平凡片段上可归约到一阶逻辑,从而完备;fold/unfold 机制虽对 SLID 不完备,却对无理论、无量词的归纳定义蕴涵可靠且完备。由此,SLID 证明失败可解释为 WSL 中的 rogue 非标准模型(通常无限)。作者用 symbolic structures 表示并自动发现这些模型,实现原型工具,在 700 多个基准上找到大量反模型并给出部分分类。
For over two decades Separation Logic has enjoyed its unique position as 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, to form what is known as Separation Logic with Inductive Definitions (SLID). These inductive predicates are used to describe unbounded data-structures in the heap and to verify key properties thereof. Many theoretical and practical advances have been made in developing automated proof mechanisms for SLID, but by their very nature 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: there is no procedure that will provide a proof for all valid entailments in Separation Logic. In fact, at its very core, Separation Logic 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 of SLID. We contextualize SLID within a larger, relaxed logic, that we call Weak Separation Logic (WSL). We prove that unlike SLID, WSL enjoys completeness 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, which is unsurprisingly incomplete for SLID, does constitute a sound and complete proof mechanism of WSL, for theory-free, quantifier-free entailments with inductive definitions. In some sense, this shows that WSL is the natural logic of such proof mechanisms. Through this contextualization of SLID within WSL, we understand proof failures as stemming from rogue, nonstandard models, that exist within the class of models considered by WSL, but do not adhere to the stricter requirements of SLID. These rogue models are typically infinite, and we use the recently proposed formalism of symbolic structures to represent and automatically find them. We present a prototype tool that implements the encoding of WSL to FOL and test it on an existing benchmark, which contains over 700 quantified entailment problems with inductive definitions, a third of which also contain background theories. 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.
DOI 原文 · arXiv · PDF(开放获取) · DBLP
@article{EladMS26,
title = {Separating the Wheat from the Chaff: Understanding (In-)Completeness of Proof Mechanisms for Separation Logic with Inductive Definitions},
author = {Neta Elad and Adithya Murali and Sharon Shoham},
journal = {Proceedings of the ACM on Programming Languages},
volume = {10},
number = {POPL},
year = {2026},
doi = {10.1145/3776671}
}