Documentation

ProvabilityLogic.Gentzen.A.Basic

inductive LogicA.ProofGentzen {α : Type u} [DecidableEq α] :
Instances For
    @[reducible, inline]
    Equations
    Instances For

      Level-0 LogicA.ProvableGentzen-provability is exactly (plain, cut-free) GL-provability.

      theorem LogicA.ProvableGentzen.wkL {α : Type u} [DecidableEq α] {Γ Γ' Δ : FormulaFinset α} {l : Fin 2} (h : ProvableGentzen (Γ ⟹[l] Δ)) ( : ΓΓ') :
      theorem LogicA.ProvableGentzen.wkR {α : Type u} [DecidableEq α] {Γ Δ Δ' : FormulaFinset α} {l : Fin 2} (h : ProvableGentzen (Γ ⟹[l] Δ)) ( : ΔΔ') :
      theorem LogicA.ProvableGentzen.impL {α : Type u} [DecidableEq α] {Γ Δ : FormulaFinset α} {A B : Formula α} {l : Fin 2} (h₁ : ProvableGentzen (Γ ⟹[l] insert A Δ)) (h₂ : ProvableGentzen (insert B Γ ⟹[l] Δ)) :
      theorem LogicA.ProvableGentzen.impR {α : Type u} [DecidableEq α] {Γ Δ : FormulaFinset α} {A B : Formula α} {l : Fin 2} (h : ProvableGentzen (insert A Γ ⟹[l] insert B Δ)) :
      theorem LogicA.ProvableGentzen.rec {α : Type u} [DecidableEq α] {motive : (S : TwoLayeredSequent α) → ProvableGentzen SProp} (axm : ∀ (l : Fin 2) (A : Formula α), motive ({A} ⟹[l] {A}) ) (botL : ∀ (l : Fin 2), motive ({} ⟹[l] ) ) (wkL : ∀ {l : Fin 2} {Γ Γ' Δ : FormulaFinset α} (h : ProvableGentzen (Γ ⟹[l] Δ)) ( : ΓΓ'), motive (Γ ⟹[l] Δ) hmotive (Γ' ⟹[l] Δ) ) (wkR : ∀ {l : Fin 2} {Γ Δ Δ' : FormulaFinset α} (h : ProvableGentzen (Γ ⟹[l] Δ)) ( : ΔΔ'), motive (Γ ⟹[l] Δ) hmotive (Γ ⟹[l] Δ') ) (impL : ∀ {l : Fin 2} {Γ Δ : FormulaFinset α} {A B : Formula α} (h₁ : ProvableGentzen (Γ ⟹[l] insert A Δ)) (h₂ : ProvableGentzen (insert B Γ ⟹[l] Δ)), motive (Γ ⟹[l] insert A Δ) h₁motive (insert B Γ ⟹[l] Δ) h₂motive (insert (A 🡒 B) Γ ⟹[l] Δ) ) (impR : ∀ {l : Fin 2} {Γ Δ : FormulaFinset α} {A B : Formula α} (h : ProvableGentzen (insert A Γ ⟹[l] insert B Δ)), motive (insert A Γ ⟹[l] insert B Δ) hmotive (Γ ⟹[l] insert (A 🡒 B) Δ) ) (liftUp : ∀ {Γ Δ : FormulaFinset α} (h : ProvableGentzen (Γ ⟹[0] Δ)), motive (Γ ⟹[0] Δ) hmotive (Γ ⟹[1] Δ) ) (boxGL : ∀ {Γ : FormulaFinset α} {A : Formula α} (h : ProvableGentzen (insert (A) (Γ Γ.box) ⟹[0] {A})), motive (insert (A) (Γ Γ.box) ⟹[0] {A}) hmotive (Γ.box ⟹[0] {A}) ) (boxGP : ∀ {Γ Δ : FormulaFinset α} {n : } (h : ProvableGentzen (Γ ⟹[1] insert (□^[n]) Δ)), motive (Γ ⟹[1] insert (□^[n]) Δ) hmotive (Γ ⟹[1] Δ) ) {S : TwoLayeredSequent α} (h : ProvableGentzen S) :
      motive S h
      Equations
      • One or more equations did not get rendered due to their size.
      Instances For
        theorem LogicA.ProvableGentzen.union {α : Type u} [DecidableEq α] {Γ Δ : FormulaFinset α} (l : Fin 2) (A : Formula α) ( : A Γ := by grind) ( : A Δ := by grind) :

        Initial sequents with side formulas, at any level.

        theorem LogicA.ProvableGentzen.union' {α : Type u} [DecidableEq α] (l : Fin 2) (A : Formula α) {S : Sequent α} ( : A S.ant := by grind) ( : A S.suc := by grind) :
        theorem LogicA.ProvableGentzen.botL_mem {α : Type u} [DecidableEq α] {Γ Δ : FormulaFinset α} (l : Fin 2) (h : Γ := by grind) :

        botL with side formulas, at any level.

        Embed a cut-free LogicGL proof of Γ ⟹ insert (□^[n]⊥) Δ into level-1 cut-free LogicA provability of Γ ⟹[1] Δ.

        Instances For

          Level-0 LogicA-with-cut provability implies cut-free LogicGL-Gentzen provability.

          theorem LogicA.GentzenWithCutProvable.wkL {α : Type u} [DecidableEq α] {Γ Γ' Δ : FormulaFinset α} {l : Fin 2} (h : GentzenWithCutProvable (Γ ⟹[l] Δ)) (h' : ΓΓ') :
          theorem LogicA.GentzenWithCutProvable.wkR {α : Type u} [DecidableEq α] {Γ Δ Δ' : FormulaFinset α} {l : Fin 2} (h : GentzenWithCutProvable (Γ ⟹[l] Δ)) (h' : ΔΔ') :
          theorem LogicA.GentzenWithCutProvable.impL {α : Type u} [DecidableEq α] {Γ Δ : FormulaFinset α} {A B : Formula α} {l : Fin 2} (h₁ : GentzenWithCutProvable (Γ ⟹[l] insert A Δ)) (h₂ : GentzenWithCutProvable (insert B Γ ⟹[l] Δ)) :
          theorem LogicA.GentzenWithCutProvable.cut {α : Type u} [DecidableEq α] {Γ₁ Γ₂ Δ₁ Δ₂ : FormulaFinset α} {A : Formula α} {l : Fin 2} (h₁ : GentzenWithCutProvable (Γ₁ ⟹[l] insert A Δ₁)) (h₂ : GentzenWithCutProvable (insert A Γ₂ ⟹[l] Δ₂)) :
          GentzenWithCutProvable (Γ₁ Γ₂ ⟹[l] Δ₁ Δ₂)
          theorem LogicA.GentzenWithCutProvable.rec {α : Type u} [DecidableEq α] {motive : (S : TwoLayeredSequent α) → GentzenWithCutProvable SProp} (axm : ∀ (l : Fin 2) (A : Formula α), motive ({A} ⟹[l] {A}) ) (botL : ∀ (l : Fin 2), motive ({} ⟹[l] ) ) (wkL : ∀ {l : Fin 2} {Γ Γ' Δ : FormulaFinset α} (h : GentzenWithCutProvable (Γ ⟹[l] Δ)) (h' : ΓΓ'), motive (Γ ⟹[l] Δ) hmotive (Γ' ⟹[l] Δ) ) (wkR : ∀ {l : Fin 2} {Γ Δ Δ' : FormulaFinset α} (h : GentzenWithCutProvable (Γ ⟹[l] Δ)) (h' : ΔΔ'), motive (Γ ⟹[l] Δ) hmotive (Γ ⟹[l] Δ') ) (impL : ∀ {l : Fin 2} {Γ Δ : FormulaFinset α} {A B : Formula α} (h₁ : GentzenWithCutProvable (Γ ⟹[l] insert A Δ)) (h₂ : GentzenWithCutProvable (insert B Γ ⟹[l] Δ)), motive (Γ ⟹[l] insert A Δ) h₁motive (insert B Γ ⟹[l] Δ) h₂motive (insert (A 🡒 B) Γ ⟹[l] Δ) ) (impR : ∀ {l : Fin 2} {Γ Δ : FormulaFinset α} {A B : Formula α} (h : GentzenWithCutProvable (insert A Γ ⟹[l] insert B Δ)), motive (insert A Γ ⟹[l] insert B Δ) hmotive (Γ ⟹[l] insert (A 🡒 B) Δ) ) (liftUp : ∀ {Γ Δ : FormulaFinset α} (h : GentzenWithCutProvable (Γ ⟹[0] Δ)), motive (Γ ⟹[0] Δ) hmotive (Γ ⟹[1] Δ) ) (boxGL : ∀ {Γ : FormulaFinset α} {A : Formula α} (h : GentzenWithCutProvable (insert (A) (Γ Γ.box) ⟹[0] {A})), motive (insert (A) (Γ Γ.box) ⟹[0] {A}) hmotive (Γ.box ⟹[0] {A}) ) (boxGP : ∀ {Γ Δ : FormulaFinset α} {n : } (h : GentzenWithCutProvable (Γ ⟹[1] insert (□^[n]) Δ)), motive (Γ ⟹[1] insert (□^[n]) Δ) hmotive (Γ ⟹[1] Δ) ) (cut : ∀ {l : Fin 2} {Γ₁ Γ₂ Δ₁ Δ₂ : FormulaFinset α} {A : Formula α} (h₁ : GentzenWithCutProvable (Γ₁ ⟹[l] insert A Δ₁)) (h₂ : GentzenWithCutProvable (insert A Γ₂ ⟹[l] Δ₂)), motive (Γ₁ ⟹[l] insert A Δ₁) h₁motive (insert A Γ₂ ⟹[l] Δ₂) h₂motive (Γ₁ Γ₂ ⟹[l] Δ₁ Δ₂) ) {S : TwoLayeredSequent α} (h : GentzenWithCutProvable S) :
          motive S h

          The axiom ∼□^[n]⊥ is with-cut-provable at level 1.

          Modus ponens for level-1 with-cut provability, via the cut rule.