2020 年 37 巻 1 号 p. 1_125-1_144
We propose a new proof system for entailment checking in the separation logic with general inductive predicates. The proposed system is based on a cyclic-proof system and using the Unfold-Match-Remove proof strategy. One of the difficulties in this strategy is to find the predicates which should be unfolded. In order to solve this problem, we introduce a new inference rule, called the factor rule, which enables us to factorize the inductive predicates in spatial formulas and to find predicates to be unfolded in the Unfold-Match-Remove strategy. Our proof system is complete and decidable when we restrict inductive predicates to linear ones. We also give some experimental results by a prototype implementation of our proof-search procedure. Our system proves some challenging examples without the help of any heuristic mechanisms such as finding cut formulas or lemmas.