Focused Inductive Theorem Proving

Focused proof systems provide means for reducing and structuring the non-determinism involved in searching for sequent calculus proofs. We present a focused proof system for a first-order logic with inductive and co-inductive definitions in which the introduction rules are partitioned into an asynchronous phase and a synchronous phase. These focused proofs allow us to naturally see proof search as being organized around interleaving intervals of computation and more general deduction. For example, entire Prolog-like computations can be captured using a single synchronous phase and many model-checking queries can be captured using an asynchronous phase followed by a synchronous phase. Leveraging these ideas, we have developed an interactive proof assistant, called Tac, for this logic. We describe its high-level design and illustrate how it is capable of automatically proving many theorems using induction and coinduction. Since the automatic proof procedure is structured using focused proofs, its behavior is often rather easy to anticipate and modify. We illustrate the strength of Tac with several examples of proved theorems, some achieved entirely automatically and others achieved with user guidance.

[1]  Gopalan Nadathur,et al.  The Bedwyr System for Model Checking over Syntactic Expressions , 2007, CADE.

[2]  Maribel Fernández,et al.  Curry-Style Types for Nominal Terms , 2006, TYPES.

[3]  Alex K. Simpson,et al.  Computational Adequacy in an Elementary Topos , 1998, CSL.

[4]  Gerhard Gentzen,et al.  Investigations into Logical Deduction , 1970 .

[5]  Ian Green,et al.  System Description: Proof Planning in Higher-Order Logic with Lambda-Clam , 1998, CADE.

[6]  David Baelde,et al.  Least and Greatest Fixed Points in Linear Logic , 2007, TOCL.

[7]  JEAN-MARC ANDREOLI,et al.  Logic Programming with Focusing Proofs in Linear Logic , 1992, J. Log. Comput..

[8]  Alberto Momigliano,et al.  Induction and Co-induction in Sequent Calculus , 2003, TYPES.

[9]  Frank Pfenning,et al.  System Description: Twelf - A Meta-Logical Framework for Deductive Systems , 1999, CADE.

[10]  Dale Miller,et al.  A proof theory for generic judgments , 2005, TOCL.

[11]  Frank Wolter,et al.  Monodic fragments of first-order temporal logics: 2000-2001 A.D , 2001, LPAR.

[12]  Peter Schroeder-Heister,et al.  Rules of definitional reflection , 1993, [1993] Proceedings Eighth Annual IEEE Symposium on Logic in Computer Science.

[13]  Frank Pfenning,et al.  Automated Theorem Proving in a Simple Meta-Logic for LF , 1998, CADE.

[14]  Dale Miller,et al.  Cut-elimination for a logic with definitions and induction , 2000, Theor. Comput. Sci..

[15]  Frank Pfenning,et al.  Focusing the Inverse Method for Linear Logic , 2005, CSL.

[16]  David Baelde On the Expressivity of Minimal Generic Quantification , 2009, Electron. Notes Theor. Comput. Sci..

[17]  Gopalan Nadathur,et al.  Uniform Proofs as a Foundation for Logic Programming , 1991, Ann. Pure Appl. Log..

[18]  Robert S. Boyer,et al.  Computational Logic , 1990, ESPRIT Basic Research Series.

[19]  Dale Miller,et al.  Reasoning with higher-order abstract syntax in a logical framework , 2000, TOCL.

[20]  Dale Miller,et al.  Focusing and Polarization in Intuitionistic Logic , 2007, CSL.

[21]  Frank Pfenning,et al.  Imogen: Focusing the Polarized Inverse Method for Intuitionistic Propositional Logic , 2008, LPAR.