7 research outputs found
Synthesizing Lemmas for Inductive Reasoning
Recursively defined structures and properties about them are naturally
expressed in first-order logic with least fixpoint definitions (FO+lfp), but
automated reasoning for such logics has not seen much progress. Such logics,
unlike pure FOL, do not even admit complete procedures, let alone decidable
ones. In this paper, we undertake a foundational study of finding proofs that
use induction to reason with these logics. By treating proofs as purely FO
proofs punctuated by declarations of induction lemmas, we separate proofs into
deductively reasoned components that can be automated and statements of lemmas
that need to be divined, respectively. While humans divine such lemmas with
intuition, we propose a counterexample driven technique that guides the
synthesis of such lemmas, where counterexamples are finite models that witness
inability of proving the theorem as well as other proposed lemmas. We develop
relatively complete procedures for synthesizing such lemmas using techniques
and tools from program/expression synthesis, for powerful FO+lfp logics that
have background sorts constrained by natural theories such as arithmetic and
set theory. We evaluate our procedures and show that over a class of theorems
that require finding inductive proofs, our automatic synthesis procedure is
effective in proving them