Encoding Zenon Modulo in Dedukti Olivier Hermant CRI, MINES ParisTech and Inria May 26, 2014 2nd KWARC-Deducteam workshop, Bremen O. Hermant (Mines & Inria) Zenon in Dedukti May 26, 2014 1 / 24
Double-Negation Translations Double-Negation translations: ◮ a shallow way to encode classical logic into intuitionistic ◮ Zenon modulo’s backend for Dedukti ◮ existing translations: Kolmogorov’s (1925), Gentzen-Gödel’s (1933), Kuroda’s (1951), Krivine’s (1990), · · · Minimizing the translations: ◮ turns more formulæ into themselves; ◮ shifts a classical proof into an intuitionistic proof of the same formula. ◮ in this talk first-order logic (no modulo) ◮ readily extensible O. Hermant (Mines & Inria) Zenon in Dedukti May 26, 2014 2 / 24
The Classical Sequent Calculus (LK) ax Γ , A ⊢ A , ∆ Γ , A , B ⊢ ∆ Γ ⊢ A , ∆ Γ ⊢ B , ∆ ∧ R ∧ L Γ , A ∧ B ⊢ ∆ Γ ⊢ A ∧ B , ∆ Γ , A ⊢ ∆ Γ , B ⊢ ∆ ∨ L Γ ⊢ A , B , ∆ ∨ R Γ , A ∨ B ⊢ ∆ Γ ⊢ A ∨ B , ∆ Γ ⊢ A , ∆ Γ , B ⊢ ∆ ⇒ L Γ , A ⊢ B , ∆ ⇒ R Γ , A ⇒ B ⊢ ∆ Γ ⊢ A ⇒ B , ∆ Γ ⊢ A , ∆ Γ , A ⊢ ∆ ¬ L ¬ R Γ , ¬ A ⊢ ∆ Γ ⊢ ¬ A , ∆ Γ , A [ c / x ] ⊢ ∆ ∃ L Γ ⊢ A [ t / x ] , ∆ ∃ R Γ , ∃ xA ⊢ ∆ Γ ⊢ ∃ xA , ∆ Γ , A [ t / x ] ⊢ ∆ ∀ L Γ ⊢ A [ c / x ] , ∆ ∀ R Γ , ∀ xA ⊢ ∆ Γ ⊢ ∀ xA , ∆ O. Hermant (Mines & Inria) Zenon in Dedukti May 26, 2014 3 / 24
The Intuitionistic Sequent Calculus (LJ) ax Γ , A ⊢ A Γ , A , B ⊢ ∆ Γ ⊢ A Γ ⊢ B ∧ L ∧ R Γ , A ∧ B ⊢ ∆ Γ ⊢ A ∧ B Γ , A ⊢ ∆ Γ , B ⊢ ∆ ∨ L Γ ⊢ A Γ ⊢ B ∨ R 1 ∨ R 2 Γ ⊢ A ∨ B Γ ⊢ A ∨ B Γ , A ∨ B ⊢ ∆ Γ ⊢ A Γ , B ⊢ ∆ ⇒ L Γ , A ⊢ B ⇒ R Γ , A ⇒ B ⊢ ∆ Γ ⊢ A ⇒ B Γ ⊢ A Γ , A ⊢ ¬ L ¬ R Γ , ¬ A ⊢ ∆ Γ ⊢ ¬ A Γ , A [ c / x ] ⊢ ∆ ∃ L Γ ⊢ A [ t / x ] ∃ R Γ , ∃ xA ⊢ ∆ Γ ⊢ ∃ xA Γ , A [ t / x ] ⊢ ∆ ∀ L Γ ⊢ A [ c / x ] ∀ R Γ , ∀ xA ⊢ ∆ Γ ⊢ ∀ xA O. Hermant (Mines & Inria) Zenon in Dedukti May 26, 2014 4 / 24
Note on Frameworks ◮ structural rules are not shown (contraction, weakening) ◮ left-rules seem very similar in both cases ◮ so, lhs formulæ can be translated by themselves ◮ this accounts for polarizing the translations Positive and Negative occurrences ◮ An occurrence of A in B is positive if: ⋆ B = A ⋆ B = C ⋆ D [ ⋆ = ∧ , ∨ ] and the occurrence of A is in C or in D and positive ⋆ B = C ⇒ D and the occurrence of A is in C (resp. in D) and negative (resp. positive) ⋆ B = Q x C [ Q = ∀ , ∃ ] and the occurrence of A is in C and is positive ◮ Dually for negative occurrences. O. Hermant (Mines & Inria) Zenon in Dedukti May 26, 2014 5 / 24
Kolmogorov’s Translation Kolmogorov’s ¬¬ -translation introduces ¬¬ everywhere: B Ko = ¬¬ B (atoms) ( B ∧ C ) Ko = ¬¬ ( B Ko ∧ C Ko ) ( B ∨ C ) Ko = ¬¬ ( B Ko ∨ C Ko ) ( B ⇒ C ) Ko = ¬¬ ( B Ko ⇒ C Ko ) ( ∀ xA ) Ko = ¬¬ ( ∀ xA Ko ) ( ∃ xA ) Ko = ¬¬ ( ∃ xA Ko ) Theorem Γ ⊢ ∆ is provable in LK iff Γ Ko , � ∆ Ko ⊢ is provable in LJ. Antinegation � is an operator, such that: ◮ � ¬ A = A ; ◮ � B = ¬ B otherwise. O. Hermant (Mines & Inria) Zenon in Dedukti May 26, 2014 6 / 24
Light Kolmogorov’s Translation Moving negation from connectives to formulæ [DowekWerner] : B K = B (atoms) = ( ¬¬ B K ∧ ¬¬ C K ) ( B ∧ C ) K = ( ¬¬ B K ∨ ¬¬ C K ) ( B ∨ C ) K = ( ¬¬ B K ⇒ ¬¬ C K ) ( B ⇒ C ) K ( ∀ xA ) K = ∀ x ¬¬ A K ( ∃ xA ) K = ∃ x ¬¬ A K Theorem Γ ⊢ ∆ is provable in LK iff Γ K , ¬ ∆ K ⊢ is provable in LJ. Correspondence A Ko = ¬¬ A K O. Hermant (Mines & Inria) Zenon in Dedukti May 26, 2014 7 / 24
Polarizing Kolmogorov’s translation Warming-up. Consider left-hand and right-hand side formulæ: LHS RHS B K B K = B = B = ( ¬¬ B K ∧ ¬¬ C K ) = ( ¬¬ B K ∧ ¬¬ C K ) ( B ∧ C ) K ( B ∧ C ) K = ( ¬¬ B K ∨ ¬¬ C K ) = ( ¬¬ B K ∨ ¬¬ C K ) ( B ∨ C ) K ( B ∨ C ) K = ( ¬¬ B K ⇒ ¬¬ C K ) = ( ¬¬ B K ⇒ ¬¬ C K ) ( B ⇒ C ) K ( B ⇒ C ) K ( ∀ xA ) K = ∀ x ¬¬ A K ( ∀ xA ) K = ∀ x ¬¬ A K ( ∃ xA ) K = ∃ x ¬¬ A K ( ∃ xA ) K = ∃ x ¬¬ A K Example of translation (( A ∨ B ) ⇒ C ) K is ¬¬ ( ¬¬ A ∨ ¬¬ B ) ⇒ ¬¬ C (( A ∨ B ) ⇒ C ) K is ¬¬ ( ¬¬ A ∨ ¬¬ B ) ⇒ ¬¬ C O. Hermant (Mines & Inria) Zenon in Dedukti May 26, 2014 8 / 24
Polarizing Light Kolmogorov’s Translation Warming-up. Consider left-hand and right-hand side formulæ: LHS RHS B K + = B B K − = B ( B ∧ C ) K + = ( B K + ∧ ( B ∧ C ) K − = ( ¬¬ B K − ∧ ¬¬ C K − ) C K + ) ( B ∨ C ) K + = ( B K + ∨ ( B ∨ C ) K − = ( ¬¬ B K − ∨ ¬¬ C K − ) C K + ) ( B ⇒ C ) K + = ( ¬¬ B K − ⇒ ( B ⇒ C ) K − = ( B K + ⇒ ¬¬ C K − ) C K + ) ( ∀ xA ) K + = ∀ xA K + ( ∀ xA ) K − = ∀ x ¬¬ A K − ( ∃ xA ) K + = ∃ xA K + ( ∃ xA ) K − = ∃ x ¬¬ A K − Example of translation (( A ∨ B ) ⇒ C ) K + is ¬¬ ( ¬¬ A ∨ ¬¬ B ) ⇒ C (( A ∨ B ) ⇒ C ) K − is ( A ∨ B ) ⇒ ¬¬ C O. Hermant (Mines & Inria) Zenon in Dedukti May 26, 2014 9 / 24
Results on Polarized Kolmogorov’s Translation Theorem If Γ ⊢ ∆ is provable in LK, then Γ K + , ¬ ∆ K − ⊢ is provable in LJ. Proof: by induction. Negation is bouncing. Example: π 1 π 2 Γ ⊢ A , ∆ Γ ⊢ B , ∆ ∧ R Γ ⊢ A ∧ B , ∆ is turned into: π ′ π ′ 1 2 Γ K + , ¬ A K − , ¬ ∆ K − ⊢ Γ K + , ¬ B K − , ¬ ∆ K − ⊢ ∧ R Γ K + , ¬ ( ¬¬ A K − ∧ ¬¬ B K − ) , ¬ ∆ K − ⊢ O. Hermant (Mines & Inria) Zenon in Dedukti May 26, 2014 10 / 24
Results on Polarized Kolmogorov’s Translation Theorem If Γ ⊢ ∆ is provable in LK, then Γ K + , ¬ ∆ K − ⊢ is provable in LJ. Proof: by induction. Negation is bouncing. Example: π 1 π 2 Γ ⊢ A , ∆ Γ ⊢ B , ∆ ∧ R Γ ⊢ A ∧ B , ∆ is turned into: π ′ π ′ 1 2 Γ K + , ¬ A K − , ¬ ∆ K − ⊢ Γ K + , ¬ B K − , ¬ ∆ K − ⊢ ∧ R Γ K + , ¬ ∆ K − ⊢ ¬¬ A K − ∧ ¬¬ B K − ¬ L Γ K + , ¬ ( ¬¬ A K − ∧ ¬¬ B K − ) , ¬ ∆ K − ⊢ O. Hermant (Mines & Inria) Zenon in Dedukti May 26, 2014 10 / 24
Results on Polarized Kolmogorov’s Translation Theorem If Γ ⊢ ∆ is provable in LK, then Γ K + , ¬ ∆ K − ⊢ is provable in LJ. Proof: by induction. Negation is bouncing. Example: π 1 π 2 Γ ⊢ A , ∆ Γ ⊢ B , ∆ ∧ R Γ ⊢ A ∧ B , ∆ is turned into: π ′ π ′ 1 2 Γ K + , ¬ A K − , ¬ ∆ K − ⊢ Γ K + , ¬ B K − , ¬ ∆ K − ⊢ Γ K + , ¬ ∆ K − ⊢ ¬¬ A K − Γ K + , ¬ ∆ K − ⊢ ¬¬ B K − ∧ R Γ K + , ¬ ∆ K − ⊢ ¬¬ A K − ∧ ¬¬ B K − ¬ L Γ K + , ¬ ( ¬¬ A K − ∧ ¬¬ B K − ) , ¬ ∆ K − ⊢ O. Hermant (Mines & Inria) Zenon in Dedukti May 26, 2014 10 / 24
Results on Polarized Kolmogorov’s Translation Theorem If Γ ⊢ ∆ is provable in LK, then Γ K + , ¬ ∆ K − ⊢ is provable in LJ. Proof: by induction. Negation is bouncing. Example: π 1 π 2 Γ ⊢ A , ∆ Γ ⊢ B , ∆ ∧ R Γ ⊢ A ∧ B , ∆ is turned into: π ′ π ′ 1 2 Γ K + , ¬ A K − , ¬ ∆ K − ⊢ Γ K + , ¬ B K − , ¬ ∆ K − ⊢ ¬ R ¬ R Γ K + , ¬ ∆ K − ⊢ ¬¬ A K − Γ K + , ¬ ∆ K − ⊢ ¬¬ B K − ∧ R Γ K + , ¬ ∆ K − ⊢ ¬¬ A K − ∧ ¬¬ B K − ¬ L Γ K + , ¬ ( ¬¬ A K − ∧ ¬¬ B K − ) , ¬ ∆ K − ⊢ O. Hermant (Mines & Inria) Zenon in Dedukti May 26, 2014 10 / 24
Results on Polarized Kolmogorov’s Translation Theorem If Γ ⊢ ∆ is provable in LK, then Γ K + , ¬ ∆ K − ⊢ is provable in LJ. Proof: by induction. Negation is bouncing. Example: π ′ π ′ 1 2 Γ K + , ¬ A K − , ¬ ∆ K − ⊢ Γ K + , ¬ B K − , ¬ ∆ K − ⊢ π 1 π 2 ¬ R ¬ R Γ K + , ¬ ∆ K − ⊢ ¬¬ A K − Γ K + , ¬ ∆ K − ⊢ ¬¬ B K − Γ ⊢ A , ∆ Γ ⊢ B , ∆ ∧ R becomes ∧ R Γ K + , ¬ ∆ K − ⊢ ¬¬ A K − ∧ ¬¬ B K − Γ ⊢ A ∧ B , ∆ ¬ L Γ K + , ¬ ( ¬¬ A K − ∧ ¬¬ B K − ) , ¬ ∆ K − ⊢ Theorem If Γ K + , ¬ ∆ K − ⊢ is provable in LJ, then Γ ⊢ ∆ is provable in LK. Proof: ad-hoc generalization. O. Hermant (Mines & Inria) Zenon in Dedukti May 26, 2014 11 / 24
Gödel-Gentzen Translation In this translation, disjunctions and existential quantifiers are replaced by a combination of negation and their De Morgan duals: LHS RHS B gg = ¬¬ B B gg = ¬¬ B ( A ∧ B ) gg = A gg ∧ B gg ( A ∧ B ) gg = A gg ∧ B gg ( A ∨ B ) gg = ¬ ( ¬ A gg ∧ ¬ B gg ) ( A ∨ B ) gg = ¬ ( ¬ A gg ∧ ¬ B gg ) ( A ⇒ B ) gg = A gg ⇒ B gg ( A ⇒ B ) gg = A gg ⇒ B gg ( ∀ xA ) gg = ∀ xA gg ( ∀ xA ) gg = ∀ xA gg ( ∃ xA ) gg = ¬∀ x ¬ A gg ( ∃ xA ) gg = ¬∀ x ¬ A gg Example of translation (( A ∨ B ) ⇒ C ) gg is ( ¬ ( ¬¬¬ A ∧ ¬¬¬ B )) ⇒ ¬¬ C Theorem Γ ⊢ ∆ is provable in LK iff Γ gg , � ∆ gg ⊢ is provable in LJ. O. Hermant (Mines & Inria) Zenon in Dedukti May 26, 2014 12 / 24
Recommend
More recommend