Cut elimination for infinitary proofs Amina Doumane LSV-IRIF-Université Paris Diderot March 2016 - Shonan meeting Joint work with: David Baelde Alexis Saurin � LSV-ENS Cachan IRIF-Université Paris 7
Introduction
Introduction Inductive and coinductive definitions A natural number is either 0 or the successor of a natural number.
Introduction Inductive and coinductive definitions N = 1 ⊕ N
Introduction Inductive and coinductive definitions N = µ X . 1 ⊕ X
Introduction Inductive and coinductive definitions N = µ X . 1 ⊕ X A stream is made of a natural number (head) and a stream (tail).
Introduction Inductive and coinductive definitions N = µ X . 1 ⊕ X S = N ⊗ S
Introduction Inductive and coinductive definitions N = µ X . 1 ⊕ X S = ν X . N ⊗ X
Introduction Inductive and coinductive definitions N = µ X . 1 ⊕ X S = ν X . N ⊗ X
Introduction Inductive and coinductive definitions N = µ X . 1 ⊕ X S = ν X . N ⊗ X Proofs-programs over these data types double ( n ) = 0 if n = 0 = succ ( succ ( double ( m ))) if n = succ ( m )
Introduction Inductive and coinductive definitions N = µ X . 1 ⊕ X S = ν X . N ⊗ X Proofs-programs over these data types double ( n ) = 0 if n = 0 = succ ( succ ( double ( m ))) if n = succ ( m ) Π double N ⊢ N ( ⊕ 2 ) N ⊢ 1 ⊕ N (1) ( µ r ) 1 ⊢ 1 N ⊢ N Π double = ( ⊕ 1 ) ( ⊕ 2 ) 1 ⊢ 1 ⊕ N N ⊢ 1 ⊕ N ( µ l ) ( µ r ) 1 ⊢ N N ⊢ N ( ⊕ l ) 1 ⊕ N ⊢ N ( µ l ) N ⊢ N
Infinitary (circular) proofs in the litterature Verification device : Complete deduction sytem giving algorithms for checking validity (Tableaux, sequent calculi) Success → Validity µ -calulus formula → Proof search ր ց Failure → Invalidity
Infinitary (circular) proofs in the litterature Verification device : Complete deduction sytem giving algorithms for checking validity (Tableaux, sequent calculi) Success → Validity µ -calulus formula → Proof search ր ց Failure → Invalidity Completeness arguments : Intermediate objects between syntax and semantics (Kozen, Kaivola, Walukiewicz) µ -calulus formula → Circular proof → Finite axiomatization
Infinitary (circular) proofs in the litterature Verification device : Complete deduction sytem giving algorithms for checking validity (Tableaux, sequent calculi) Success → Validity µ -calulus formula → Proof search ր ց Failure → Invalidity Completeness arguments : Intermediate objects between syntax and semantics (Kozen, Kaivola, Walukiewicz) µ -calulus formula → Circular proof → Finite axiomatization But rarely as proof/programm objects in themselves
Structural proof theory Two main properties: Syntactic cut-elimination
Structural proof theory Two main properties: Syntactic cut-elimination Motivation: At the heart of proofs-as-programms viewpoint Focalization Motivation: Proof search startegy based on the notion of polarity
Structural proof theory Two main properties: Syntactic cut-elimination Motivation: At the heart of proofs-as-programms viewpoint State of art: Semantical cut elimination (Brotherstone), Additive fragment (Fortier-Santocanale) Focalization Motivation: Proof search startegy based on the notion of polarity State of art: Nothing
Structural proof theory Two main properties: Syntactic cut-elimination Motivation: At the heart of proofs-as-programms viewpoint State of art: Semantical cut elimination (Brotherstone), Additive fragment (Fortier-Santocanale) Contribution: See this talk Focalization Motivation: Proof search startegy based on the notion of polarity State of art: Nothing Contribution: Not in this talk
Infinitary proof system µ MALL ∞
Formulas µ MALL ∞ formulas ⊤ |⊥| 0 | 1 | F ⊗ F | F � F | F � F | F ⊕ F MALL formulas F ::= | µ X . F least fixed point | ν X . F greatest fixed point µ and ν are dual. Example: ¬ ( ν X . X ⊗ X ) = µ X . X � X . Data types encoding Nat := µ X . 1 ⊕ X Stream( A ) := ν X . A ⊗ X
Sequent calculus µ MALL ∞ pre-proofs are the trees coinductively generated by: Usual logical rules ⊢ Γ , F ⊢ ∆ , G ⊢ Γ , F , G ⊢ Γ , F ⊢ Γ , G ⊢ Γ , F i ( ⊗ ) ( ⊕ i ) ( � ) ( � ) ⊢ Γ , ∆ , F ⊗ G ⊢ Γ , F � G ⊢ Γ , F � G ⊢ Γ , F 1 ⊕ F 2 Identity rules ⊢ Γ , F ⊢ ∆ , ¬ F (ax) ⊢ F , ¬ F (cut) ⊢ Γ , ∆ Rules for µ and ν ⊢ Γ , F [ µ X . F / X ] ⊢ Γ , F [ ν X . F / X ] ( µ ) ( ν ) ⊢ Γ , µ X . F ⊢ Γ , ν X . F
Sequent calculus - Example . . . . . . ( µ ) ( ν ) ⊢ µ X . X ⊢ ν X . X , F ( µ ) ( ν ) ⊢ µ X . X ⊢ ν X . X , F (cut) ⊢ F
Sequent calculus - Example . . . . . . ( µ ) ( ν ) ⊢ µ X . X ⊢ ν X . X , F ( µ ) ( ν ) ⊢ µ X . X ⊢ ν X . X , F (cut) ⊢ F Pre-proofs are unsound, hence the need for a validity condition.
Sequent calculus - Validity condition A thread in a branch is a sequence of formulas that traces the evolution of a given formula. A thread is valid if its outermost formula is a ν -formula. A pre-proof is valid if every branch contains a valid thread. A valid pre-proof is called proof . F := µ X . ν Y . X ⊕ Y G := ν X . µ Y . X ⊕ Y H := ν Y . F ⊕ Y I := µ Y . G ⊕ Y . . . ( ⊕ 1 ) ⊢ F , G ( ⊕ 1 ) ⊢ F , G ⊕ I ( µ ) ⊢ F , I ( ν ) ⊢ F , G ( ⊕ 1 ) ⊢ F ⊕ H , G ( ν ) ⊢ H , G ( µ ) ⊢ F , G
Cut elimination
Cut elimination procedure Strategy: “push” the cuts away from the root. Cut-Cut: ⊢ Γ , F ⊢ ¬ F , ∆ , G (cut) ⊢ Γ , ∆ , G ⊢ ¬ G , Σ (cut) ⊢ Γ , ∆ , Σ � ⊢ ¬ F , ∆ , G ⊢ ¬ G , Σ (cut) ⊢ Γ , F ⊢ ¬ F , ∆ , Σ (cut) ⊢ Γ , ∆ , Σ
Cut elimination procedure Strategy: “push” the cuts away from the root. Cut-Cut: ⊢ Γ , F ⊢ ¬ F , ∆ , G (cut) ⊢ Γ , ∆ , G ⊢ ¬ G , Σ (cut) ⊢ Γ , ∆ , Σ ↓ ⊢ Γ , F ⊢ ¬ F , ∆ , G ⊢ ¬ G , Σ (m-cut) ⊢ Γ , ∆ , Σ
Cut elimination procedure - External operations ⊢ ∆ , F , G ⊢ ∆ , F , G ... ( � ) (m-cut) ⊢ ∆ , F � G ... ⇒ ⊢ Σ , F , G (m-cut) ( � ) ⊢ Σ , F � G ⊢ Σ , F � G ⊢ ∆ , F ⊢ ∆ , G ⊢ ∆ , F ⊢ ∆ , G ... ... ( � ) (m-cut) (m-cut) ⊢ ∆ , F � G ... ⇒ ⊢ Σ , F ⊢ Σ , G (m-cut) ( � ) ⊢ Σ , F � G ⊢ Σ , F � G ⊢ ∆ , F [ µ X . F / X ] ⊢ ∆ , F [ µ X . F / X ] ... ( m − cut ) ( µ ) ⇒ ⊢ ∆ , µ X . F ... ⊢ Σ , F [ µ X . F / X ] ( m − cut ) ( µ ) ⊢ Σ , µ X . F ⊢ Σ , µ X . F External operations are productive
Cut elimination procedure - Internal operations ⊢ Γ , F ⊥ ⊢ ∆ , F 2 ⊢ ∆ , F 1 i ( ⊕ i ) ( � ) ⊢ Γ , F ⊥ 1 ⊕ F ⊥ ... ⊢ ∆ , F 2 � F 1 2 (m-cut) ⊢ Σ ⊢ Γ , F ⊥ ... ⊢ ∆ , F i ⇒ i (m-cut) ⊢ Σ ⊢ Γ , F ⊥ [ ν X . F ⊥ / X ] ⊢ ∆ , F [ µ X . F / X ] ( ν ) ( µ ) ⊢ Γ , ν X . F ⊥ ... ⊢ ∆ , µ X . F (m-cut) ⊢ Σ ⊢ Γ , F ⊥ [ ν X . F ⊥ / X ] ... ⊢ ∆ , F [ µ X . F / X ] ⇒ (m-cut) ⊢ Σ Internal operations are not productive
Cut elimination algorithm Internal phase: Perform internal transformations while you can’t do anything else. External phase: Build a part of the output tree whenever you can.
Cut elimination algorithm Internal phase: Perform internal transformations while you can’t do anything else. External phase: Build a part of the output tree whenever you can. Repeat.
Cut elimination algorithm Internal phase: Perform internal transformations while you can’t do anything else. External phase: Build a part of the output tree whenever you can. Repeat.
Cut elimination is productive Theorem Internal phase always halts.
Cut elimination is productive Theorem Internal phase always halts. Proof: Suppose that the internal phase diverges for a proof π ⊢ ∆. Let θ be the sub-derivation of π explored by the reduction. No rule is applied to a formula of ∆ in θ , as this would contradict the divergence of internal phase. Let θ be the proof obtained from θ by dropping all the formulas from ∆. θ is then a proof for ⊢ . We define a truth semantics for µ MALL ∞ formulas and show that the proof system is sound with respect to it. Contradiction.
Cut elimination produces a proof Theorem The pre-proof obtained by the cut elimination algorithm is valid.
Cut elimination produces a proof Theorem The pre-proof obtained by the cut elimination algorithm is valid. Proof: Let π ⋆ be the pre-proof obtained from π ⊢ ∆ by cut elimination. Suppose that a branch b of π ⋆ is not valid. Let θ be the sub-derivation of π explored by the reduction that produces b . Fact: Threads of θ are the threads of b , together with threads starting from cut formulas. The validity of θ cannot rely on the threads of b . θ µ is θ where we replace in ∆ any ν by a µ and any 1 , ⊤ by ⊥ , 0. Show that formulas containing only µ , ⊥ , 0 and MALL connectives are false. θ µ proves a false sequent which contradicts soundness.
Conclusion
Conclusion Syntactic cut elimination with a new technique Focalisation Futur work: Go beyond Linear Logic and handle structural rules Translate infinitrary proofs to finitary ones Same question by preserving the computational content
Recommend
More recommend