Matrix-based Inductive Theorem Proving Christoph Kreitz Department of Computer Science, Cornell University, Ithaca, NY 14853 Brigitte Pientka Department of Computer Science, Carnegie Mellon University, Pittsburgh, PA 15213
Automated Induction Theorem Proving Necessary for Program Verification & Synthesis Logical Proof Search Rippling Techniques + Focus on closing atomic goals + Focus on matching induction hypothesis with induction conclusion + Well-understood + Annotated rewriting + Efficient for first-order logic + Termination guarantees – Unification too weak for induction – Encodes logical inference as wave-rules – No rewriting incorporated – Matches whole hypothesis with complete conclusion ⇓ Integrate Rippling into Logical Proof Search Matrix-based Inductive Theorem Proving 1 Introduction
Combining Proof Search with Rippling Use Matrix Methods for Proof Search – Fully automated for classical and constructive first-order logic – Compact representation of sequent/tableaux proof search – Emphasis on complementary connections instead of logical connectives I. Extend Unification by Rippling-based Rewriting ❀ Complementarity with respect to a theory T II. Exploit Inductive Properties during Proof Search ❀ Orthogonal matrices and connections III. Integrate Conditional Substitutions ❀ Complementarity under a constraint ⇓ Matrix-based Inductive Theorem Proving Matrix-Based Inductive Theorem Proving 2 Combining Proof Search with Rippling
Matrix-Methods: Representation of Formulae x< F y 2 T Y 2 x +1 < h a 4 c a 9 T α ¬ F α T ( y h +1) 2 a 5 x +1 < F ( Y c +1) 2 a 10 ¬ x< a 3 a 8 T α ∧ F β ∧ a 2 a 7 ✛ T α Type ( α , β , γ , δ ) ∧ a 2 ✛ Position ∃ F Y c γ T y h δ ∃ ✻ ■ a 6 a 1 Label Polarity ( T , F ) ⇒ F α a 0 ∃ y ¬ ( x<y 2 ) ∧ x< ( y +1) 2 ⇒ ∃ y ¬ ( x +1 <y 2 ) ∧ x +1 < ( y +1) 2 Formula Tree – Syntax tree augmented with positions , labels , polarities , and tableaux types Matrix T Y 2 x +1 < – α -related positions side by side c x< F y 2 T ( y h +1) 2 x< h – β -related positions on top of each other x +1 < F ( Y c +1) 2 – γ , δ positions ❀ variables / constants Matrix-based Inductive Theorem Proving 3 Matrix Methods
Matrix Characterization of Logical Validity A formula F is valid iff every path through a matrix-representation of some F µ is σ -complementary • Multiplicity µ – Number of distinct instances of γ -formulae used in proof • Substitution σ – Admissible mapping from γ -positions to terms • Connection { u, v } – Pair of atomic positions, same predicate symbol, different polarities – σ -complementary if σ ( A ) = σ ( ¯ where A = label ( u ), ¯ A ), A = label ( v ) – Additional prefix unification required for constructive logics • Path P – Maximal set of mutually α -related atomic positions – σ -complementary if P contains a σ -complementary connection Matrix-based Inductive Theorem Proving 4 Matrix Methods
Matrix Proof: Integer Square Root Specification ∃ y ¬ ( x<y 2 ) ∧ x< ( y +1) 2 ⇒ ∃ y ¬ ( x +1 <y 2 ) ∧ x +1 < ( y +1) 2 Add Lemmata : ∀ z ∀ t t +1 <z ⇒ t<z ∀ s ∀ r s<r 2 ⇒ s +1 < ( r +1) 2 Add Case Split: ∀ u ∀ v v<u ∨ ¬ ( v<u ) Increase Multiplicity of Y c Matrix proof T +1 < F Z T Y 2 V < F U T Y 2 S< F R 2 x +1 < x +1 < c 1 c 2 x< F y 2 T ( y h +1) 2 x< h x +1 < F ( Y c 1 +1) 2 x +1 < F ( Y c 2 +1) 2 T ( R +1) 2 T Z T U S +1 < T< V < σ = { Z \ y 2 h , T \ x, Y c 1 \ y h , V \ x +1 , U \ ( y h +1) 2 , Y c 2 \ y h +1 , S \ x, R \ y h } All 32 paths covered by six complementary connections Matrix-based Inductive Theorem Proving 5 Matrix Methods
Extension I: Complementarity with respect to T Extend Unification by Rippling-based Rewriting • Theory implication ⇒ T – Implication that is valid in the theory T T , v F ) • Directed σ -complementary connection ( u – σ ( A )= σ ( ¯ A ) or σ ( A ) ⇒ T σ ( ¯ where A = label ( u ) and ¯ A ) A = label ( v ) T or v F • Unary σ -complementary connection u – σ ( A ) ⇒ T False where A = label ( u ) – True ⇒ T σ ( ¯ where ¯ A ) A = label ( v ) ⇓ A formula F is valid iff every path through a matrix-representation of some F µ is σ -complementary with respect to a theory T Matrix-based Inductive Theorem Proving 6 Extensions of Matrix Methods
Extended Match based on Rippling • Arithmetical Implication A ⇒ A ¯ A – A ⇒ ¯ A provable by arithmetic decision procedure, or – There is a rippling sequence ¯ R R �− → . . . �− → A with arithmetical wave rules A • Rippling / Reverse Rippling Heuristic – Given ( A, ¯ A ) find a rippling sequence R and a substitution σ such that σ ( ¯ R R R R R R R A ) �− → C 0 �− → . . . �− → C k �− → C k +1 �− → . . . �− → C n �− → σ ( A ) ✯ ❨ . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . rippling reverse rippling where σ j ( C k +1 ) ⇒ σ j ( C k ) for some σ j – Rippling forward from ¯ A – Reverse rippling from A – Rippling-distance strategy – Partial match ❀ candidate σ j – Arithmetic decision procedure + equality check proves σ j ( C k +1 ) ⇒ σ j ( C k ) Matrix-based Inductive Theorem Proving 7 Extensions of Matrix Methods
Recommend
More recommend