Documentation

LeanPool.InfinitaryLogic.Lomega1omega.Depth

Ordinal-valued depth of Lω₁ω formulas #

The well-founded measure for quantifier recursions over BoundedFormulaω (extracted from Methods/Henkin/Construction.lean, where it was born as the truthLemma termination measure, and re-derived privately by Methods/Interpolation/QuotientTruthLemma.lean — this neutral home serves both). sizeOf is inadequate: sizeOf (φs k) is unbounded while sizeOf (iSup φs) = 2, and the all case recurses on (φ.openBounds).subst t, not a structural subterm. depth uses Ordinal.iSup at the countable connectives and is preserved by castLE, relabel, openBounds, and subst, with strict decrease into every connective.

Ordinal-valued depth for termination of truthLemma #

The standard sizeOf measure is inadequate for truthLemma because:

We define an Ordinal-valued depth that uses iSup for iSup/iInf cases, then prove it is preserved by castLE, relabel, openBounds, and subst.

theorem FirstOrder.Language.depth_lt_imp_left {L : Language} {α : Type u_1} {n : } {φ ψ : L.BoundedFormulaω α n} :
φ.depth < (φ.imp ψ).depth
theorem FirstOrder.Language.depth_lt_imp_right {L : Language} {α : Type u_1} {n : } {φ ψ : L.BoundedFormulaω α n} :
ψ.depth < (φ.imp ψ).depth
theorem FirstOrder.Language.depth_lt_iSup {L : Language} {α : Type u_1} {n : } {φs : L.BoundedFormulaω α n} (k : ) :
theorem FirstOrder.Language.depth_lt_iInf {L : Language} {α : Type u_1} {n : } {φs : L.BoundedFormulaω α n} (k : ) :
theorem FirstOrder.Language.depth_lt_all {L : Language} {α : Type u_1} {n : } {φ : L.BoundedFormulaω α (n + 1)} :
theorem FirstOrder.Language.depth_subst {L : Language} {α : Type u_1} {n : } {β : Type u_1} (φ : L.BoundedFormulaω α n) (tf : αL.Term β) :
(φ.subst tf).depth = φ.depth
theorem FirstOrder.Language.depth_openBounds_subst_lt {L : Language} {n : } {β : Type} {φ : L.BoundedFormulaω Empty (n + 1)} (tf : Fin (n + 1)L.Term β) :

depth (openBounds φ).subst t < depth (all φ) for the truthLemma termination proof.