unification with abstraction and theory instantiation in
play

Unification with Abstraction and Theory Instantiation in - PowerPoint PPT Presentation

Unification with Abstraction and Theory Instantiation in Saturation-based Reasoning Giles Reger 1 , Martin Suda 2 , and Andrei Voronkov 1 , 2 , 3 1 School of Computer Science, University of Manchester, UK 2 TU Wien, Vienna, Austria 3 Easychair


  1. Unification with Abstraction and Theory Instantiation in Saturation-based Reasoning Giles Reger 1 , Martin Suda 2 , and Andrei Voronkov 1 , 2 , 3 1 School of Computer Science, University of Manchester, UK 2 TU Wien, Vienna, Austria 3 Easychair Matryoshka 2018 1/32

  2. This is a (slightly) extended version of the talk given at TACAS 2018 Thank you to Martin Suda for preparing the slides I also stole some from Martin Riener All mistakes are my own 1/32

  3. Introduction What is Vampire: Automatic Theorem Prover (ATP) for first-order logic Main paradigm: superposition calculus + saturation Also: efficient term indexing use of incomplete strategies strategy scheduling and theory reasoning 2/32

  4. Introduction What is Vampire: Automatic Theorem Prover (ATP) for first-order logic Main paradigm: superposition calculus + saturation Also: efficient term indexing use of incomplete strategies strategy scheduling and theory reasoning Reasoning with Theories huge application demand: program analysis, software verification, . . . inherently hard, especially with quantifiers ! Now available! http://vprover.github.io (License applies) 2/32

  5. Competitions Regular successful participation at the CASC competition Since 2016 also participating in SMT-COMP But it would be nice to get more ‘real’ benchmarks to demonstrate that these results generalise – SMT-COMP is better than CASC for this. Submit your problems to the libraries (if allowed)! 3/32

  6. Reasoning with Quantifiers and Theories Two Dimensions of Complexity ∀∃ ATP DANGER theory axioms ZONE ... AVATAR mod Theories SMT E-matching ... gnd Z / R: +-*/ select / store 4/32

  7. Reasoning with Quantifiers and Theories Two Dimensions of Complexity ∀∃ ATP gnd Z / R: +-*/ select / store 4/32

  8. Reasoning with Quantifiers and Theories Two Dimensions of Complexity ∀∃ ATP gnd SMT Z / R: +-*/ select / store 4/32

  9. Reasoning with Quantifiers and Theories Two Dimensions of Complexity ∀∃ E SPASS ATP VAMPIRE ... CVC4 veriT Z3 ... gnd SMT Z / R: +-*/ select / store 4/32

  10. Reasoning with Quantifiers and Theories Two Dimensions of Complexity ∀∃ ATP gnd SMT Z / R: +-*/ select / store 4/32

  11. Reasoning with Quantifiers and Theories Two Dimensions of Complexity ∀∃ ATP SMT E-matching ... gnd Z / R: +-*/ select / store 4/32

  12. Reasoning with Quantifiers and Theories Two Dimensions of Complexity ∀∃ ATP theory axioms ... SMT E-matching ... gnd Z / R: +-*/ select / store 4/32

  13. Reasoning with Quantifiers and Theories Two Dimensions of Complexity ∀∃ ATP theory axioms ... AVATAR mod Theories SMT E-matching ... gnd Z / R: +-*/ select / store 4/32

  14. Our Paper in One Slide Contribution 1: Theory Instantiation Rule 5/32

  15. Our Paper in One Slide Contribution 1: Theory Instantiation Rule derives a simplifying instance of a non-ground clause 5/32

  16. Our Paper in One Slide Contribution 1: Theory Instantiation Rule derives a simplifying instance of a non-ground clause 14 x �≃ x 2 + 49 ∨ p ( x ) 5/32

  17. Our Paper in One Slide Contribution 1: Theory Instantiation Rule derives a simplifying instance of a non-ground clause 14 x �≃ x 2 + 49 ∨ p ( x ) = ⇒ p ( 7 ) 5/32

  18. Our Paper in One Slide Contribution 1: Theory Instantiation Rule derives a simplifying instance of a non-ground clause 14 x �≃ x 2 + 49 ∨ p ( x ) = ⇒ p ( 7 ) by utilising ground SMT solving 5/32

  19. Our Paper in One Slide Contribution 1: Theory Instantiation Rule derives a simplifying instance of a non-ground clause 14 x �≃ x 2 + 49 ∨ p ( x ) = ⇒ p ( 7 ) by utilising ground SMT solving (current) limitation: complete theories (e.g. arithmetic) 5/32

  20. Our Paper in One Slide Contribution 1: Theory Instantiation Rule derives a simplifying instance of a non-ground clause 14 x �≃ x 2 + 49 ∨ p ( x ) = ⇒ p ( 7 ) by utilising ground SMT solving (current) limitation: complete theories (e.g. arithmetic) Contribution 2: Unification with Abstraction extension of unification that introduces theory constraints 5/32

  21. Our Paper in One Slide Contribution 1: Theory Instantiation Rule derives a simplifying instance of a non-ground clause 14 x �≃ x 2 + 49 ∨ p ( x ) = ⇒ p ( 7 ) by utilising ground SMT solving (current) limitation: complete theories (e.g. arithmetic) Contribution 2: Unification with Abstraction extension of unification that introduces theory constraints p ( 2 x ) against ¬ p ( 10 ) 5/32

  22. Our Paper in One Slide Contribution 1: Theory Instantiation Rule derives a simplifying instance of a non-ground clause 14 x �≃ x 2 + 49 ∨ p ( x ) = ⇒ p ( 7 ) by utilising ground SMT solving (current) limitation: complete theories (e.g. arithmetic) Contribution 2: Unification with Abstraction extension of unification that introduces theory constraints p ( 2 x ) against ¬ p ( 10 ) = ⇒ 2 x �≃ 10 5/32

  23. Our Paper in One Slide Contribution 1: Theory Instantiation Rule derives a simplifying instance of a non-ground clause 14 x �≃ x 2 + 49 ∨ p ( x ) = ⇒ p ( 7 ) by utilising ground SMT solving (current) limitation: complete theories (e.g. arithmetic) Contribution 2: Unification with Abstraction extension of unification that introduces theory constraints p ( 2 x ) against ¬ p ( 10 ) = ⇒ 2 x �≃ 10 a lazy approach to abstraction 5/32

  24. Our Paper in One Slide Contribution 1: Theory Instantiation Rule derives a simplifying instance of a non-ground clause 14 x �≃ x 2 + 49 ∨ p ( x ) = ⇒ p ( 7 ) by utilising ground SMT solving (current) limitation: complete theories (e.g. arithmetic) Contribution 2: Unification with Abstraction extension of unification that introduces theory constraints p ( 2 x ) against ¬ p ( 10 ) = ⇒ 2 x �≃ 10 a lazy approach to abstraction new constrains can be often “discharged” by 1. 5/32

  25. Outline A Brief Introduction to Saturation-Based Proving 1 Previous Methods for Theory Reasoning in Vampire 2 Theory Instantiation and Unification with Abstraction 3 Experimental Results 4 Ongoing and Future Work 5 6/32

  26. Theorem Proving Pipeline in One Slide Standard form of the input: F := ( Axiom 1 ∧ . . . ∧ Axiom n ) → Conjecture 7/32

  27. Theorem Proving Pipeline in One Slide Standard form of the input: F := ( Axiom 1 ∧ . . . ∧ Axiom n ) → Conjecture 1 Negate F to seek a refutation: ¬ F := Axiom 1 ∧ . . . ∧ Axiom n ∧ ¬ Conjecture 7/32

  28. Theorem Proving Pipeline in One Slide Standard form of the input: F := ( Axiom 1 ∧ . . . ∧ Axiom n ) → Conjecture 1 Negate F to seek a refutation: ¬ F := Axiom 1 ∧ . . . ∧ Axiom n ∧ ¬ Conjecture 2 Preprocess and transform ¬ F to clause normal form (CNF) S := { C 1 , . . . , C n } 7/32

  29. Theorem Proving Pipeline in One Slide Standard form of the input: F := ( Axiom 1 ∧ . . . ∧ Axiom n ) → Conjecture 1 Negate F to seek a refutation: ¬ F := Axiom 1 ∧ . . . ∧ Axiom n ∧ ¬ Conjecture 2 Preprocess and transform ¬ F to clause normal form (CNF) S := { C 1 , . . . , C n } 3 saturate S with respect to the superposition calculus aiming to derive the obvious contradiction ⊥ 7/32

  30. Saturation = fixed-point computation Given Clause Algorithm: set of active clauses is stored in indexing structures passive works like a priority queue the process is “explosive” in nature 8/32

  31. Controlling the Growth of the Search Space Superposition rule t [ s ] p ⊗ t ′ ∨ C 2 l ≃ r ∨ C 1 L [ s ] p ∨ C 2 l ≃ r ∨ C 1 , or ( t [ r ] p ⊗ t ′ ∨ C 1 ∨ C 2 ) θ ( L [ r ] p ∨ C 1 ∨ C 2 ) θ where θ = mgu ( l , s ) and r θ �� l θ and, for the left rule L [ s ] is not an equality literal, and for the right rule ⊗ stands either for ≃ or �≃ and t ′ θ �� t [ s ] θ 9/32

  32. Controlling the Growth of the Search Space Superposition rule t [ s ] p ⊗ t ′ ∨ C 2 l ≃ r ∨ C 1 L [ s ] p ∨ C 2 l ≃ r ∨ C 1 , or ( t [ r ] p ⊗ t ′ ∨ C 1 ∨ C 2 ) θ ( L [ r ] p ∨ C 1 ∨ C 2 ) θ where θ = mgu ( l , s ) and r θ �� l θ and, for the left rule L [ s ] is not an equality literal, and for the right rule ⊗ stands either for ≃ or �≃ and t ′ θ �� t [ s ] θ Saturation up to Redundancy redundant clauses can be safely removed subsumption - an example reduction: remove C in the presence of D such that D σ ⊂ C 9/32

  33. Controlling the Growth of the Search Space Superposition rule t [ s ] p ⊗ t ′ ∨ C 2 l ≃ r ∨ C 1 L [ s ] p ∨ C 2 l ≃ r ∨ C 1 , or ( t [ r ] p ⊗ t ′ ∨ C 1 ∨ C 2 ) θ ( L [ r ] p ∨ C 1 ∨ C 2 ) θ where θ = mgu ( l , s ) and r θ �� l θ and, for the left rule L [ s ] is not an equality literal, and for the right rule ⊗ stands either for ≃ or �≃ and t ′ θ �� t [ s ] θ Saturation up to Redundancy redundant clauses can be safely removed subsumption - an example reduction: remove C in the presence of D such that D σ ⊂ C Completeness considerations 9/32

  34. Outline A Brief Introduction to Saturation-Based Proving 1 Previous Methods for Theory Reasoning in Vampire 2 Theory Instantiation and Unification with Abstraction 3 Experimental Results 4 Ongoing and Future Work 5 10/32

Download Presentation
Download Policy: The content available on the website is offered to you 'AS IS' for your personal information and use only. It cannot be commercialized, licensed, or distributed on other websites without prior consent from the author. To download a presentation, simply click this link. If you encounter any difficulties during the download process, it's possible that the publisher has removed the file from their server.

Recommend


More recommend