Documentation

Foundation.FirstOrder.Hauptsatz

#Algebraic Proofs of Cut Elimination

Main reference: Jeremy Avigad, Algebraic proofs of cut elimination, The Journal of Logic and Algebraic Programming, Volume 49, Issues 1–2, 2001, Pages 15-30

@[simp]
@[simp]
theorem LO.FirstOrder.Derivation.isCutFree_and_iff {L : Language} {Γ : Sequent L} {φ ψ : SyntacticFormula L} {dφ : ⊢ᵀ φ :: Γ} {dψ : ⊢ᵀ ψ :: Γ} :
@[simp]
@[simp]
theorem LO.FirstOrder.Derivation.isCutFree_wk_iff {L : Language} {Γ Δ : Sequent L} {d : ⊢ᵀ Δ} {ss : Δ Γ} :
@[simp]
@[simp]
theorem LO.FirstOrder.Derivation.IsCutFree.not_cut {L : Language} {Γ : Sequent L} {φ : SyntacticFormula L} (dp : ⊢ᵀ φ :: Γ) (dn : ⊢ᵀ φ :: Γ) :
def LO.FirstOrder.PositiveDerivationFrom.trans {L : Language} {Ξ Γ Δ : Sequent L} :
Ξ ⟶⁺ ΓΓ ⟶⁺ ΔΞ ⟶⁺ Δ
Equations
def LO.FirstOrder.PositiveDerivationFrom.add {L : Language} {Γ Δ Ξ Θ : Sequent L} :
Γ ⟶⁺ ΔΞ ⟶⁺ ΘΓ ++ Ξ ⟶⁺ Δ ++ Θ
Equations
Equations
  • One or more equations did not get rendered due to their size.
Equations
  • srq.trans sqp = { val := sqp.val.trans srq.val }
def LO.FirstOrder.Hauptsatz.StrongerThan.leMinOfle {L✝ : Language} {r p q : Sequent L✝} (srp : StrongerThan r p) (srq : StrongerThan r q) :
Equations
  • srp.leMinOfle srq = { val := let d := (srp.val.add srq.val).wk ; d }
Equations
  • One or more equations did not get rendered due to their size.
@[irreducible]
@[irreducible]
Equations
Equations
  • One or more equations did not get rendered due to their size.
def LO.FirstOrder.Hauptsatz.Forces.implyOf {L : Language} {p : Sequent L} {φ ψ : SyntacticFormulaᵢ L} (b : (q : Sequent L) → Forces q φForces (p q) ψ) :
Forces p (φ ψ)
Equations
  • One or more equations did not get rendered due to their size.
def LO.FirstOrder.Hauptsatz.Forces.modusPonens {L : Language} {p : Sequent L} {φ ψ : SyntacticFormulaᵢ L} (f : Forces p (φ ψ)) (g : Forces p φ) :
Forces p ψ
Equations
def LO.FirstOrder.Hauptsatz.Forces.conj {L : Language} {p : Sequent L} {Γ : Sequentᵢ L} (b : (φ : SyntacticFormulaᵢ L) → φ ΓForces p φ) :
Forces p (Γ)
Equations
Equations
noncomputable def LO.FirstOrder.Hauptsatz.main {L : Language} [L.DecidableEq] {Γ : Sequent L} :
⊢ᵀ Γ{ d : ⊢ᵀ Γ // Derivation.IsCutFree d }
Equations
  • One or more equations did not get rendered due to their size.