Polarized Rewriting and Tableaux in B Set Theory
SETS 2018 Olivier Hermant
CRI, MINES ParisTech, PSL Research University
June 5, 2018
- O. Hermant (MINES ParisTech)
Polarized Tableaux Modulo in B June 5, 2018 1 / 17
Polarized Rewriting and Tableaux in B Set Theory SETS 2018 Olivier - - PowerPoint PPT Presentation
Polarized Rewriting and Tableaux in B Set Theory SETS 2018 Olivier Hermant CRI, MINES ParisTech, PSL Research University June 5, 2018 O. Hermant (MINES ParisTech) Polarized Tableaux Modulo in B June 5, 2018 1 / 17 Introduction Assumes
Polarized Tableaux Modulo in B June 5, 2018 1 / 17
◮ Assumes familiarity with FOL ◮ Tableaux method ◮ Extension with rewriting : Tableaux Modulo Theory ◮ Implementation and benchmark : Zenon Modulo and B Set theory ◮ Proposed extension : polarized rewriting ◮ Discussions
Polarized Tableaux Modulo in B June 5, 2018 2 / 17
Polarized Tableaux Modulo in B June 5, 2018 3 / 17
◮ we want to show A ⊆ A, for a given set A ◮ axiomatization of inclusion is
◮ we shall refute ∀X∀Y X ⊆ Y ⇔ (∀z z ∈ X ⇒ z ∈ Y), ¬(A ⊆ A) ◮ the proof :
Polarized Tableaux Modulo in B June 5, 2018 4 / 17
◮ we want to show A ⊆ A, for a given set A ◮ axiomatization of inclusion is
◮ we shall refute ∀X∀Y X ⊆ Y ⇔ (∀z z ∈ X ⇒ z ∈ Y), ¬(A ⊆ A) ◮ the proof :
Polarized Tableaux Modulo in B June 5, 2018 4 / 17
◮ we want to show A ⊆ A, for a given set A ◮ axiomatization of inclusion is
◮ we shall refute ∀X∀Y X ⊆ Y ⇔ (∀z z ∈ X ⇒ z ∈ Y), ¬(A ⊆ A) ◮ the proof :
Polarized Tableaux Modulo in B June 5, 2018 4 / 17
◮ we want to show A ⊆ A, for a given set A ◮ axiomatization of inclusion is
◮ we shall refute ∀X∀Y X ⊆ Y ⇔ (∀z z ∈ X ⇒ z ∈ Y), ¬(A ⊆ A) ◮ the proof :
Polarized Tableaux Modulo in B June 5, 2018 4 / 17
◮ we want to show A ⊆ A, for a given set A ◮ axiomatization of inclusion is
◮ we shall refute ∀X∀Y X ⊆ Y ⇔ (∀z z ∈ X ⇒ z ∈ Y), ¬(A ⊆ A) ◮ the proof :
Polarized Tableaux Modulo in B June 5, 2018 4 / 17
◮ we want to show A ⊆ A, for a given set A ◮ axiomatization of inclusion is
◮ we shall refute ∀X∀Y X ⊆ Y ⇔ (∀z z ∈ X ⇒ z ∈ Y), ¬(A ⊆ A) ◮ the proof :
Polarized Tableaux Modulo in B June 5, 2018 4 / 17
◮ we want to show A ⊆ A, for a given set A ◮ axiomatization of inclusion is
◮ we shall refute ∀X∀Y X ⊆ Y ⇔ (∀z z ∈ X ⇒ z ∈ Y), ¬(A ⊆ A) ◮ the proof :
Polarized Tableaux Modulo in B June 5, 2018 4 / 17
◮ we want to show A ⊆ A, for a given set A ◮ axiomatization of inclusion is
◮ we shall refute ∀X∀Y X ⊆ Y ⇔ (∀z z ∈ X ⇒ z ∈ Y), ¬(A ⊆ A) ◮ the proof :
Polarized Tableaux Modulo in B June 5, 2018 4 / 17
◮ we want to show A ⊆ A, for a given set A ◮ axiomatization of inclusion is
◮ we shall refute ∀X∀Y X ⊆ Y ⇔ (∀z z ∈ X ⇒ z ∈ Y), ¬(A ⊆ A) ◮ the proof :
Polarized Tableaux Modulo in B June 5, 2018 4 / 17
◮ term rewrite rule :
◮ proposition rewrite rule :
Polarized Tableaux Modulo in B June 5, 2018 5 / 17
◮ two flavors, essentially equivalent ◮ add a conversion rule :
◮ or integrate conversion inside each rule :
Polarized Tableaux Modulo in B June 5, 2018 6 / 17
◮ delete the axiom ∀X∀Y (X ⊆ Y ⇔ ∀z z ∈ X ⇒ z ∈ Y) ◮ replace with the rewrite rule X ⊆ Y → ∀z z ∈ X ⇒ z ∈ Y ◮ we now refute only ¬(A ⊆ A)
Polarized Tableaux Modulo in B June 5, 2018 7 / 17
◮ delete the axiom ∀X∀Y (X ⊆ Y ⇔ ∀z z ∈ X ⇒ z ∈ Y) ◮ replace with the rewrite rule X ⊆ Y → ∀z z ∈ X ⇒ z ∈ Y ◮ we now refute only ¬(A ⊆ A) ◮ yields
Polarized Tableaux Modulo in B June 5, 2018 7 / 17
◮ for power set and comprehension
◮ derived constructs ◮ with typing, too
Polarized Tableaux Modulo in B June 5, 2018 8 / 17
◮ Zenon : classical first-order tableaux-based ATP ◮ Extended to ML polymorphism ◮ Extended to Deduction Modulo Theory ◮ Extended to linear arithmetic ◮ Reads TPTP input format ◮ Dedukti certificates ◮ work of P
Polarized Tableaux Modulo in B June 5, 2018 9 / 17
◮ Zenon : classical first-order tableaux-based ATP ◮ Extended to ML polymorphism ◮ Extended to Deduction Modulo Theory ◮ Extended to linear arithmetic ◮ Reads TPTP input format ◮ Dedukti certificates ◮ work of P
◮ We propose to extend it to Polarized Deduction Modulo Theory
Polarized Tableaux Modulo in B June 5, 2018 9 / 17
◮ Provided by Industrial Partners ◮ 12.876 PO ◮ Provable : proved in Atelier B (automatically or interactively) ◮ Wide spectrum ◮ Mild difficulty, large files
Polarized Tableaux Modulo in B June 5, 2018 10 / 17
◮ Processor Intel Xeon E5-2660 v2 ◮ Timeout 120 s ◮ Memory 1 GiB
Polarized Tableaux Modulo in B June 5, 2018 11 / 17
◮ asymetry ⋆ rewrite positive formulas a certain way ⋆ rewrite negative formulas another way ⋆ interchangeable : F ։− G iff ¬F ։+ ¬G ◮ let R+ and R− be two sets of rewrite rules
Polarized Tableaux Modulo in B June 5, 2018 12 / 17
◮ tableaux is one-sided, we need only positive rewriting ◮ add to first-order tableau, the conversion rule
◮ notice forward rewriting only
Polarized Tableaux Modulo in B June 5, 2018 13 / 17
◮ delete the axiom ∀X∀Y (X ⊆ Y ⇔ ∀z z ∈ X ⇒ z ∈ Y) ◮ replace it with two rewrite rules ⋆ X ⊆ Y →+ (∀z z ∈ X ⇒ z ∈ Y), ⋆ X ⊆ Y →− (f(X, Y) ∈ X ⇒ f(X, Y) ∈ Y) ◮ f is a fresh symbol (Skolem symbol) ⋆ negative ∀ quantifiers can be Skolemized! ⋆ impossible in Deduction Modulo Theory : unpolarized rewriting ⋆ here positive rewriting applied in positive contexts, negative in negative
⋆ “pre-apply” δ¬∀ and δ∃ : Skolemize
Polarized Tableaux Modulo in B June 5, 2018 14 / 17
◮ delete the axiom ∀X∀Y (X ⊆ Y ⇔ ∀z z ∈ X ⇒ z ∈ Y) ◮ replace it with two rewrite rules ⋆ X ⊆ Y →+ (∀z z ∈ X ⇒ z ∈ Y), ⋆ X ⊆ Y →− (f(X, Y) ∈ X ⇒ f(X, Y) ∈ Y) ◮ f is a fresh symbol (Skolem symbol) ⋆ negative ∀ quantifiers can be Skolemized! ⋆ impossible in Deduction Modulo Theory : unpolarized rewriting ⋆ here positive rewriting applied in positive contexts, negative in negative
⋆ “pre-apply” δ¬∀ and δ∃ : Skolemize ◮ the proof becomes
Polarized Tableaux Modulo in B June 5, 2018 14 / 17
◮ Skolemization of the rules = a single Skolem symbol ⋆ instead of a fresh one for each δ-rule, even if the formula is the same ⋆ fixable with ǫ-Hilbert operator? ◮ Skolemization at pre-processing, once and for all ◮ more axioms become rewrite rules ⋆ Deduction Modulo Theory, sole shape
⋆ Polarization allows two more shapes ⋆ ∀x(P ⇒ F) turned into P →+ F ⋆ ∀x(F ⇒ P) turned into P→−F ⋆ ∀x(P ⇔ F) subsumed
Polarized Tableaux Modulo in B June 5, 2018 15 / 17
◮ Deciding rewriting in Deduction Modulo Theory : ⋆ strongly needs non confusion
⋆ needs confluence
⋆ allows to have a simpler additional tableaux rule
⋆ termination of rewriting helps, too ◮ the more rules, the more potential troubles ⋆ needs proper study (and definitions!) ◮ Completeness ⋆ not implied by confluence and termination ⋆ e.g. requires narrowing ⋆ we do not care much, except for nice theoretical results ⋆ performance is more important
Polarized Tableaux Modulo in B June 5, 2018 16 / 17
◮ Deciding rewriting in Deduction Modulo Theory : ⋆ strongly needs non confusion
⋆ needs confluence
⋆ allows to have a simpler additional tableaux rule
⋆ termination of rewriting helps, too ◮ the more rules, the more potential troubles ⋆ needs proper study (and definitions!) ◮ Completeness ⋆ not implied by confluence and termination ⋆ e.g. requires narrowing ⋆ we do not care much, except for nice theoretical results ⋆ performance is more important
Polarized Tableaux Modulo in B June 5, 2018 16 / 17
◮ implement and test ◮ theory can come later ⋆ except soundness ⋆ develop proper notions of confluence, cut elimination, models, etc. ◮ which Skolemization?
Polarized Tableaux Modulo in B June 5, 2018 17 / 17