background
play

Background Instantiation-based methods for first-order logic - PowerPoint PPT Presentation

ormal ethods roup Labelled Unit Superposition Calculi for Instantiation-Based Reasoning Konstantin Korovin and Christoph Sticksel (joint work with Renate Schmidt) The University of Manchester 14th October 2010 1 Konstantin Korovin and


  1. φ ormal µ ethods γ roup Labelled Unit Superposition Calculi for Instantiation-Based Reasoning Konstantin Korovin and Christoph Sticksel (joint work with Renate Schmidt) The University of Manchester 14th October 2010 1 Konstantin Korovin and Christoph Sticksel Labelled Unit Superposition for Instantiation-Based Reasoning

  2. Background • Instantiation-based methods for first-order logic – Decision procedure for Bernays-Sch¨ onfinkel fragment (verification, planning/scheduling, knowledge representation) – Good performance in plain first-order logic – Complementary to “traditional” first-order calculi • Equational reasoning – Essential part in theory reasoning – Natural concept in many applications – Not well explored in instantiation-based setting • Here: Instantiation-based calculus Inst-Gen-Eq – Ganzinger and Korovin [2004] – Complete for first-order clause logic modulo equality 2 Konstantin Korovin and Christoph Sticksel Labelled Unit Superposition for Instantiation-Based Reasoning

  3. The Inst-Gen-Eq Method First-order Ground Superposition SMT solver generate Inconsistent Clause Instances Literals Ground select Model add find First-order Ground abstract Clauses Clauses Satisfiability Unsatisfiability proved proved 3 Konstantin Korovin and Christoph Sticksel Labelled Unit Superposition for Instantiation-Based Reasoning

  4. The Inst-Gen-Eq Method First-order Ground Superposition SMT solver generate Inconsistent Clause Instances Literals Ground select Model add find First-order Ground abstract Clauses Clauses Satisfiability Unsatisfiability proved proved 3 Konstantin Korovin and Christoph Sticksel Labelled Unit Superposition for Instantiation-Based Reasoning

  5. Finding Inconsistencies and Generating Instances Key issues • Unit reasoning to find inconsistent literals • Generating clause instances from superposition proofs First-order Ground Superposition SMT solver • All (non-redundant) proofs to be generate Inconsistent Clause considered Instances Literals Ground select Model add find First-order Ground abstract Clauses Clauses Our approach Satisfiability Unsatisfiability proved proved • Labelled Unit Superposition • Different label structures – Sets – AND/OR trees – OBDDs 4 Konstantin Korovin and Christoph Sticksel Labelled Unit Superposition for Instantiation-Based Reasoning

  6. Inst-Gen-Eq: Finding Inconsistencies First-order clauses Ground abstraction with ⊥ f ( x , y ) ≃ f ( y , x ) f ( ⊥ , ⊥ ) ≃ f ( ⊥ , ⊥ ) f ( u , v ) �≃ g ( z ) ∨ u ≃ z f ( ⊥ , ⊥ ) �≃ g ( ⊥ ) ∨ ⊥ ≃ ⊥ f ( a , b ) ≃ g ( c ) f ( a , b ) ≃ g ( c ) a �≃ b a �≃ b Unit superposition proof: Selected literals inconsistent f ( x , y ) ≃ f ( y , x ) f ( u , v ) �≃ g ( z ) [ u / x , v / y ] f ( a , b ) ≃ g ( c ) f ( v , u ) �≃ g ( z ) [ a / v , b / u ] g ( c ) �≃ g ( z ) [ c / z ] � 5 Konstantin Korovin and Christoph Sticksel Labelled Unit Superposition for Instantiation-Based Reasoning

  7. Inst-Gen-Eq: Finding Inconsistencies First-order clauses Ground abstraction with ⊥ f ( x , y ) ≃ f ( y , x ) f ( ⊥ , ⊥ ) ≃ f ( ⊥ , ⊥ ) f ( u , v ) �≃ g ( z ) ∨ u ≃ z f ( ⊥ , ⊥ ) �≃ g ( ⊥ ) ∨ ⊥ ≃ ⊥ f ( a , b ) ≃ g ( c ) f ( a , b ) ≃ g ( c ) a �≃ b a �≃ b Unit superposition proof: Selected literals inconsistent f ( x , y ) ≃ f ( y , x ) f ( u , v ) �≃ g ( z ) [ u / x , v / y ] f ( a , b ) ≃ g ( c ) f ( v , u ) �≃ g ( z ) [ a / v , b / u ] g ( c ) �≃ g ( z ) [ c / z ] � 5 Konstantin Korovin and Christoph Sticksel Labelled Unit Superposition for Instantiation-Based Reasoning

  8. Inst-Gen-Eq: Finding Inconsistencies First-order clauses Ground abstraction with ⊥ f ( x , y ) ≃ f ( y , x ) f ( ⊥ , ⊥ ) ≃ f ( ⊥ , ⊥ ) f ( u , v ) �≃ g ( z ) ∨ u ≃ z f ( ⊥ , ⊥ ) �≃ g ( ⊥ ) ∨ ⊥ ≃ ⊥ f ( a , b ) ≃ g ( c ) f ( a , b ) ≃ g ( c ) a �≃ b a �≃ b Unit superposition proof: Selected literals inconsistent f ( x , y ) ≃ f ( y , x ) f ( u , v ) �≃ g ( z ) [ u / x , v / y ] f ( a , b ) ≃ g ( c ) f ( v , u ) �≃ g ( z ) [ a / v , b / u ] g ( c ) �≃ g ( z ) [ c / z ] � 5 Konstantin Korovin and Christoph Sticksel Labelled Unit Superposition for Instantiation-Based Reasoning

  9. Inst-Gen-Eq: Finding Inconsistencies First-order clauses Ground abstraction with ⊥ f ( x , y ) ≃ f ( y , x ) f ( ⊥ , ⊥ ) ≃ f ( ⊥ , ⊥ ) f ( u , v ) �≃ g ( z ) ∨ u ≃ z f ( ⊥ , ⊥ ) �≃ g ( ⊥ ) ∨ ⊥ ≃ ⊥ f ( a , b ) ≃ g ( c ) f ( a , b ) ≃ g ( c ) a �≃ b a �≃ b Unit superposition proof: Selected literals inconsistent f ( x , y ) ≃ f ( y , x ) f ( u , v ) �≃ g ( z ) [ u / x , v / y ] f ( a , b ) ≃ g ( c ) f ( v , u ) �≃ g ( z ) [ a / v , b / u ] g ( c ) �≃ g ( z ) [ c / z ] � 5 Konstantin Korovin and Christoph Sticksel Labelled Unit Superposition for Instantiation-Based Reasoning

  10. Inst-Gen-Eq: Generating Instances Unit superposition proof: Substitution extraction f ( x , y ) ≃ f ( y , x ) f ( u , v ) �≃ g ( z ) [ u / x , v / y ] f ( a , b ) ≃ g ( c ) f ( v , u ) �≃ g ( z ) [ a / v , b / u ] g ( c ) �≃ g ( z ) [ c / z ] � First-order clauses New first-order instances f ( x , y ) ≃ f ( y , x ) f ( b , a ) ≃ f ( a , b ) f ( u , v ) �≃ g ( z ) ∨ u ≃ z f ( b , a ) �≃ g ( c ) ∨ b ≃ c f ( a , b ) ≃ g ( c ) a �≃ b 6 Konstantin Korovin and Christoph Sticksel Labelled Unit Superposition for Instantiation-Based Reasoning

  11. Inst-Gen-Eq: Generating Instances Unit superposition proof: Substitution extraction f ( x , y ) ≃ f ( y , x ) f ( u , v ) �≃ g ( z ) [ u / x , v / y ] f ( a , b ) ≃ g ( c ) f ( v , u ) �≃ g ( z ) [ a / v , b / u ] g ( c ) �≃ g ( z ) [ c / z ] � First-order clauses New first-order instances f ( x , y ) ≃ f ( y , x ) f ( b , a ) ≃ f ( a , b ) f ( u , v ) �≃ g ( z ) ∨ u ≃ z f ( b , a ) �≃ g ( c ) ∨ b ≃ c f ( a , b ) ≃ g ( c ) a �≃ b 6 Konstantin Korovin and Christoph Sticksel Labelled Unit Superposition for Instantiation-Based Reasoning

  12. Inst-Gen-Eq: Generating Instances Unit superposition proof: Substitution extraction f ( x , y ) ≃ f ( y , x ) f ( u , v ) �≃ g ( z ) [ u / x , v / y ] f ( a , b ) ≃ g ( c ) f ( v , u ) �≃ g ( z ) [ a / v , b / u ] g ( c ) �≃ g ( z ) [ c / z ] � First-order clauses New first-order instances f ( x , y ) ≃ f ( y , x ) f ( b , a ) ≃ f ( a , b ) f ( u , v ) �≃ g ( z ) ∨ u ≃ z f ( b , a ) �≃ g ( c ) ∨ b ≃ c f ( a , b ) ≃ g ( c ) a �≃ b 6 Konstantin Korovin and Christoph Sticksel Labelled Unit Superposition for Instantiation-Based Reasoning

  13. Inst-Gen-Eq: Generating Instances Unit superposition proof: Substitution extraction f ( x , y ) ≃ f ( y , x ) f ( u , v ) �≃ g ( z ) [ u / x , v / y ] f ( a , b ) ≃ g ( c ) f ( v , u ) �≃ g ( z ) [ a / v , b / u ] g ( c ) �≃ g ( z ) [ c / z ] � First-order clauses New first-order instances f ( x , y ) ≃ f ( y , x ) f ( b , a ) ≃ f ( a , b ) f ( u , v ) �≃ g ( z ) ∨ u ≃ z f ( b , a ) �≃ g ( c ) ∨ b ≃ c f ( a , b ) ≃ g ( c ) a �≃ b 6 Konstantin Korovin and Christoph Sticksel Labelled Unit Superposition for Instantiation-Based Reasoning

  14. Inst-Gen-Eq: Generating Instances Unit superposition proof: Substitution extraction f ( x , y ) ≃ f ( y , x ) f ( u , v ) �≃ g ( z ) [ u / x , v / y ] f ( a , b ) ≃ g ( c ) f ( v , u ) �≃ g ( z ) [ a / v , b / u ] g ( c ) �≃ g ( z ) [ c / z ] � First-order clauses New first-order instances f ( x , y ) ≃ f ( y , x ) f ( b , a ) ≃ f ( a , b ) f ( u , v ) �≃ g ( z ) ∨ u ≃ z f ( b , a ) �≃ g ( c ) ∨ b ≃ c f ( a , b ) ≃ g ( c ) a �≃ b 6 Konstantin Korovin and Christoph Sticksel Labelled Unit Superposition for Instantiation-Based Reasoning

  15. Inst-Gen-Eq: Generating Instances Unit superposition proof: Substitution extraction f ( x , y ) ≃ f ( y , x ) f ( u , v ) �≃ g ( z ) [ u / x , v / y ] f ( a , b ) ≃ g ( c ) f ( v , u ) �≃ g ( z ) [ a / v , b / u ] g ( c ) �≃ g ( z ) [ c / z ] � First-order clauses New first-order instances f ( x , y ) ≃ f ( y , x ) f ( b , a ) ≃ f ( a , b ) f ( u , v ) �≃ g ( z ) ∨ u ≃ z f ( b , a ) �≃ g ( c ) ∨ b ≃ c f ( a , b ) ≃ g ( c ) a �≃ b 6 Konstantin Korovin and Christoph Sticksel Labelled Unit Superposition for Instantiation-Based Reasoning

  16. Instances from Each Inconsistency Required Proof of inconsistency (1) f ( x , y ) ≃ f ( y , x ) f ( u , v ) �≃ g ( z ) [ u / x , v / y ] f ( a , b ) ≃ g ( c ) f ( v , u ) �≃ g ( z ) [ a / v , b / u ] g ( c ) �≃ g ( z ) [ c / z ] � Proof of inconsistency (2) f ( a , b ) ≃ g ( c ) f ( u , v ) �≃ g ( z ) [ a / u , b / v ] g ( c ) �≃ g ( z ) [ c / z ] � Instances from proof (1) Instances from proof (2) f ( b , a ) ≃ f ( a , b ) f ( a , b ) �≃ g ( c ) ∨ a ≃ c f ( b , a ) �≃ g ( c ) ∨ b ≃ c 7 Konstantin Korovin and Christoph Sticksel Labelled Unit Superposition for Instantiation-Based Reasoning

Recommend


More recommend