superposition with lambdas
play

Superposition with Lambdas Alexander Bentkamp Jasmin Blanchette - PowerPoint PPT Presentation

Superposition with Lambdas Alexander Bentkamp Jasmin Blanchette Sophie Tourret Petar Vukmirovi Uwe Waldmann 1 Motivation: Sledgehammer Proof goal from Isabelle Fact selection Translation to FOL A complete HO LEO-II/III


  1. Superposition with Lambdas Alexander Bentkamp Jasmin Blanchette Sophie Tourret Petar Vukmirovi ć Uwe Waldmann � 1

  2. Motivation: Sledgehammer Proof goal 
 from Isabelle Fact selection Translation to FOL A complete HO LEO-II/III Satallax superposition prover Superposition provers SMT provers Proof reconstruction Proof text 
 in Isabelle � 2

  3. Milestones towards HOL HOL Boolean-free HOL boolean formulas 
 nested in terms λ -free HOL / applicative FOL λ -expressions / 
 comprehension 
 axioms FOL partial application 
 & applied variables � 3

  4. Challenges #1 Higher-order unification #2 Superposition below applied variables #3 No ground-total simplification order � 4

  5. Higher-Order Unification #1 Undecidability & no most general unifier Our approach: dovetailing Flex-flex pairs Huet’s preunification algorithm requires constrained clauses Our approach: Jensen & Pietrzykowski’s algorithm Future work: More efficient unification algorithms 
 (complete or incomplete) � 5

  6. Applied Variables #2 f a = c h ( X a) ( X b) ≠ h (g c) (g (f b)) Superposition 
 “half below” a variable? Unsatisfiable because: X ↦ λ u . g (f u ) yields h (g (f a)) (g (f b)) ≠ h (g c) (g (f b)) = c � 6

  7. #2 Applied Variables f a = c h ( X a) ( X b) ≠ h (g c) (g (f b)) add artificial 
 context superpose Y (f a) = Y c Unifier of Y (f a) and X a : 
 Y ↦ λ u . Z a u u 
 X ↦ λ v . Z v (f v ) (f a) h ( Z a c c) ( Z b (f b) (f a)) ≠ h (g c) (g (f b)) This is a new inference rule: FluidSup � 7

  8. #3 No Ground-Total Simplification Order ( λ x . x ) > ( λ x . b) Then, by compatibility with contexts: or a = ( λ x . x ) a > ( λ x . b) a = b ( λ x . x ) < ( λ x . b) Then, by compatibility with contexts: c = ( λ x . x ) c < ( λ x . b) c = b ? � 8

  9. No Ground-Total #3 Simplification Order Our solution: 
 Compatibility only with green contexts not below applied variables no prefix 
 subterms not below λ s f (g a) ( Y b) ( λ x . h c (g x )) Superposition only at green subterms 
 ArgCong, FluidSup, and the extensionality axiom access other subterms � 9

  10. Our Calculus D ∨ t = t’ C ∨ [¬] s[u] = s’ C ∨ s’ = t’ ∨ s = t Sup EqFact (C ∨ t ≠ t’ ∨ s = t’) σ (D ∨ C ∨ [¬] s[t’] = s’) σ σ ∈ CSU(t,u) σ ∈ CSU(s,s’) D ∨ t = t’ C ∨ [¬] s[u] = s’ C ∨ s ≠ t FluidSup EqRes C σ (D ∨ C ∨ [¬] s[ Z t’] = s’) σ σ ∈ CSU(s,t) σ ∈ CSU( Z t,u) C ∨ s = t ArgCong C ∨ (s σ ) X ̅ = (t σ ) X ̅ Ext X (di ff X Y ) ≠ Y (di ff X Y ) ∨ X = Y All clauses are kept in β -normal η -short form. � 10

  11. Number of solved problems 175 350 525 700 Evaluation in Zipperposition 0 Comparison with λ -free Superposition λ free-Zip λ -free TPTP λ Zip-full λ Zip-pragmatic Sledgehammer (256 facts) Sledgehammer (16 facts) λ free-Zip ( λ -lifted) λ Zip-full λ Zip-pragmatic λ free-Zip ( λ -lifted) λ Zip-full λ Zip-pragmatic � 11

  12. Number of solved problems 175 350 525 700 Evaluation in Zipperposition 0 Comparison with other higher-order provers Leo-III Boolean-free TPTP Leo-III-meta Satallax Satallax-meta λ Zip-full λ Zip-pragmatic Sledgehammer (256 facts) Sledgehammer (16 facts) Leo-III Leo-III-meta Satallax Satallax-meta λ Zip-full λ Zip-pragmatic Leo-III Leo-III-meta Satallax Satallax-meta λ Zip-full λ Zip-pragmatic � 12

  13. Summary Complete superposition calculus for Boolean-free HOL Promising experimental results for an incomplete variant of this calculus Many remaining challenges: First-class Boolean type More efficient unification More efficient treatment of extensionality More efficient alternatives to FluidSup Implementation in E � 13

Recommend


More recommend