Documentation

Foundation.FirstOrder.Arith.Hierarchy

inductive LO.FirstOrder.Arith.Hierarchy {L : Language} [L.LT] {ξ : Type u_2} :
Polarity{n : } → Semiformula L ξ nProp
Instances For
@[simp]
theorem LO.FirstOrder.Arith.Hierarchy.and_iff {L : Language} [L.LT] {ξ : Type u_1} {n : } {Γ : Polarity} {s : } {φ ψ : Semiformula L ξ n} :
Hierarchy Γ s (φ ψ) Hierarchy Γ s φ Hierarchy Γ s ψ
@[simp]
theorem LO.FirstOrder.Arith.Hierarchy.or_iff {L : Language} [L.LT] {ξ : Type u_1} {n : } {Γ : Polarity} {s : } {φ ψ : Semiformula L ξ n} :
Hierarchy Γ s (φ ψ) Hierarchy Γ s φ Hierarchy Γ s ψ
@[simp]
theorem LO.FirstOrder.Arith.Hierarchy.conj_iff {L : Language} [L.LT] {m : } {ξ : Type u_1} {n : } {Γ : Polarity} {s : } {φ : Fin mSemiformula L ξ n} :
Hierarchy Γ s (Matrix.conj φ) ∀ (i : Fin m), Hierarchy Γ s (φ i)
theorem LO.FirstOrder.Arith.Hierarchy.zero_eq_alt {L : Language} [L.LT] {ξ : Type u_1} {n : } {Γ : Polarity} {φ : Semiformula L ξ n} :
Hierarchy Γ 0 φHierarchy Γ.alt 0 φ
theorem LO.FirstOrder.Arith.Hierarchy.zero_iff {L : Language} [L.LT] {ξ : Type u_1} {n : } {Γ Γ' : Polarity} {φ : Semiformula L ξ n} :
Hierarchy Γ 0 φ Hierarchy Γ' 0 φ
theorem LO.FirstOrder.Arith.Hierarchy.zero_iff_delta_zero {L : Language} [L.LT] {ξ : Type u_1} {n : } {Γ : Polarity} {φ : Semiformula L ξ n} :
@[simp]
theorem LO.FirstOrder.Arith.Hierarchy.alt_zero_iff_zero {L : Language} [L.LT] {ξ : Type u_1} {n : } {Γ : Polarity} {φ : Semiformula L ξ n} :
Hierarchy Γ.alt 0 φ Hierarchy Γ 0 φ
theorem LO.FirstOrder.Arith.Hierarchy.accum {L : Language} [L.LT] {ξ : Type u_1} {n : } {Γ : Polarity} {s : } {φ : Semiformula L ξ n} :
Hierarchy Γ s φ∀ (Γ' : Polarity), Hierarchy Γ' (s + 1) φ
theorem LO.FirstOrder.Arith.Hierarchy.strict_mono {L : Language} [L.LT] {ξ : Type u_1} {n : } {Γ : Polarity} {s : } {φ : Semiformula L ξ n} (hp : Hierarchy Γ s φ) (Γ' : Polarity) {s' : } (h : s < s') :
Hierarchy Γ' s' φ
theorem LO.FirstOrder.Arith.Hierarchy.mono {L : Language} [L.LT] {ξ : Type u_1} {n : } {Γ : Polarity} {s s' : } {φ : Semiformula L ξ n} (hp : Hierarchy Γ s φ) (h : s s') :
Hierarchy Γ s' φ
theorem LO.FirstOrder.Arith.Hierarchy.of_zero {L : Language} [L.LT] {ξ : Type u_1} {n : } {b b' : Polarity} {s : } {φ : Semiformula L ξ n} (hp : Hierarchy b 0 φ) :
Hierarchy b' s φ
@[simp]
theorem LO.FirstOrder.Arith.Hierarchy.equal {L : Language} {ξ : Type u_1} {n : } {Γ : Polarity} {s : } [L.Eq] [L.LT] {t u : Semiterm L ξ n} :
Hierarchy Γ s (“!!t = !!u”)
@[simp]
theorem LO.FirstOrder.Arith.Hierarchy.lt {L : Language} {ξ : Type u_1} {n : } {Γ : Polarity} {s : } [L.LT] {t u : Semiterm L ξ n} :
Hierarchy Γ s (“!!t < !!u”)
@[simp]
theorem LO.FirstOrder.Arith.Hierarchy.le {L : Language} {ξ : Type u_1} {n : } {Γ : Polarity} {s : } [L.Eq] [L.LT] {t u : Semiterm L ξ n} :
Hierarchy Γ s (“!!t ≤ !!u”)
theorem LO.FirstOrder.Arith.Hierarchy.neg {L : Language} [L.LT] {ξ : Type u_1} {n : } {Γ : Polarity} {s : } {φ : Semiformula L ξ n} :
Hierarchy Γ s φHierarchy Γ.alt s (φ)
@[simp]
theorem LO.FirstOrder.Arith.Hierarchy.neg_iff {L : Language} [L.LT] {ξ : Type u_1} {n : } {Γ : Polarity} {s : } {φ : Semiformula L ξ n} :
Hierarchy Γ s (φ) Hierarchy Γ.alt s φ
@[simp]
theorem LO.FirstOrder.Arith.Hierarchy.imp_iff {L : Language} [L.LT] {ξ : Type u_1} {n : } {Γ : Polarity} {s : } {φ ψ : Semiformula L ξ n} :
Hierarchy Γ s (φ ψ) Hierarchy Γ.alt s φ Hierarchy Γ s ψ
@[simp]
theorem LO.FirstOrder.Arith.Hierarchy.ball_iff {L : Language} [L.LT] {ξ : Type u_1} {Γ : Polarity} {s n : } {φ : Semiformula L ξ (n + 1)} {t : Semiterm L ξ (n + 1)} (ht : t.Positive) :
Hierarchy Γ s (“(∀[!!(Semiterm.bvar 0) < !!t] !φ)”) Hierarchy Γ s φ
@[simp]
theorem LO.FirstOrder.Arith.Hierarchy.bex_iff {L : Language} [L.LT] {ξ : Type u_1} {Γ : Polarity} {s n : } {φ : Semiformula L ξ (n + 1)} {t : Semiterm L ξ (n + 1)} (ht : t.Positive) :
Hierarchy Γ s (“(∃[!!(Semiterm.bvar 0) < !!t] !φ)”) Hierarchy Γ s φ
@[simp]
theorem LO.FirstOrder.Arith.Hierarchy.ballLT_iff {L : Language} [L.LT] {ξ : Type u_1} {Γ : Polarity} {s n : } {φ : Semiformula L ξ (n + 1)} {t : Semiterm L ξ n} :
@[simp]
theorem LO.FirstOrder.Arith.Hierarchy.bexLT_iff {L : Language} [L.LT] {ξ : Type u_1} {Γ : Polarity} {s n : } {φ : Semiformula L ξ (n + 1)} {t : Semiterm L ξ n} :
@[simp]
theorem LO.FirstOrder.Arith.Hierarchy.ballLTSucc_iff {L : Language} [L.LT] {ξ : Type u_1} [L.Zero] [L.One] [L.Add] {Γ : Polarity} {s n : } {φ : Semiformula L ξ (n + 1)} {t : Semiterm L ξ n} :
@[simp]
theorem LO.FirstOrder.Arith.Hierarchy.bexLTSucc_iff {L : Language} [L.LT] {ξ : Type u_1} [L.Zero] [L.One] [L.Add] {Γ : Polarity} {s n : } {φ : Semiformula L ξ (n + 1)} {t : Semiterm L ξ n} :
theorem LO.FirstOrder.Arith.Hierarchy.pi_of_pi_all {L : Language} [L.LT] {ξ : Type u_1} {n s : } {φ : Semiformula L ξ (n + 1)} :
Hierarchy 𝚷 s (∀' φ)Hierarchy 𝚷 s φ
@[simp]
theorem LO.FirstOrder.Arith.Hierarchy.all_iff {L : Language} [L.LT] {ξ : Type u_1} {n s : } {φ : Semiformula L ξ (n + 1)} :
Hierarchy 𝚷 (s + 1) (∀' φ) Hierarchy 𝚷 (s + 1) φ
theorem LO.FirstOrder.Arith.Hierarchy.sigma_of_sigma_ex {L : Language} [L.LT] {ξ : Type u_1} {n s : } {φ : Semiformula L ξ (n + 1)} :
Hierarchy 𝚺 s (∃' φ)Hierarchy 𝚺 s φ
@[simp]
theorem LO.FirstOrder.Arith.Hierarchy.sigma_iff {L : Language} [L.LT] {ξ : Type u_1} {n s : } {φ : Semiformula L ξ (n + 1)} :
Hierarchy 𝚺 (s + 1) (∃' φ) Hierarchy 𝚺 (s + 1) φ
theorem LO.FirstOrder.Arith.Hierarchy.rew {L : Language} [L.LT] {ξ₁ : Type u_1} {n₁ : } {ξ₂ : Type u_2} {n₂ : } {Γ : Polarity} {s : } (ω : Rew L ξ₁ n₁ ξ₂ n₂) {φ : Semiformula L ξ₁ n₁} :
Hierarchy Γ s φHierarchy Γ s ((Rewriting.app ω) φ)
@[simp]
theorem LO.FirstOrder.Arith.Hierarchy.rew_iff {L : Language} [L.LT] {ξ₁ : Type u_1} {n₁ : } {ξ₂ : Type u_2} {n₂ : } {Γ : Polarity} {s : } {ω : Rew L ξ₁ n₁ ξ₂ n₂} {φ : Semiformula L ξ₁ n₁} :
Hierarchy Γ s ((Rewriting.app ω) φ) Hierarchy Γ s φ
theorem LO.FirstOrder.Arith.Hierarchy.exClosure {L : Language} [L.LT] {ξ : Type u_1} {s n : } {φ : Semiformula L ξ n} :
Hierarchy 𝚺 (s + 1) φHierarchy 𝚺 (s + 1) (∃* φ)
theorem LO.FirstOrder.Arith.Hierarchy.of_open {L : Language} [L.LT] {ξ : Type u_1} {n : } {Γ : Polarity} {s : } {φ : Semiformula L ξ n} :
φ.OpenHierarchy Γ s φ
theorem LO.FirstOrder.Arith.Hierarchy.oringEmb {L : Language} [L.ORing] {ξ : Type u_1} {n : } {Γ : Polarity} {s : } {φ : Semiformula ℒₒᵣ ξ n} :
theorem LO.FirstOrder.Arith.Hierarchy.iff_iff {L : Language} [L.ORing] {ξ : Type u_1} {n : } {b : Polarity} {s : } {φ ψ : Semiformula L ξ n} :
Hierarchy b s (φ ψ) Hierarchy b s φ Hierarchy b.alt s φ Hierarchy b s ψ Hierarchy b.alt s ψ
@[simp]
theorem LO.FirstOrder.Arith.Hierarchy.iff_iff₀ {L : Language} [L.ORing] {ξ : Type u_1} {n : } {b : Polarity} {φ ψ : Semiformula L ξ n} :
Hierarchy b 0 (φ ψ) Hierarchy b 0 φ Hierarchy b 0 ψ
@[simp]
theorem LO.FirstOrder.Arith.Hierarchy.matrix_conj_iff {L : Language} [L.ORing] {m : } {ξ : Type u_1} {b : Polarity} {s n : } {φ : Fin mSemiformula L ξ n} :
Hierarchy b s (Matrix.conj fun (j : Fin m) => φ j) ∀ (j : Fin m), Hierarchy b s (φ j)
theorem LO.FirstOrder.Arith.Hierarchy.remove_forall {L : Language} [L.ORing] {ξ : Type u_1} {n : } {b : Polarity} {s : } {φ : Semiformula L ξ (n + 1)} :
Hierarchy b s (∀' φ)Hierarchy b s φ
theorem LO.FirstOrder.Arith.Hierarchy.remove_exists {L : Language} [L.ORing] {ξ : Type u_1} {n : } {b : Polarity} {s : } {φ : Semiformula L ξ (n + 1)} :
Hierarchy b s (∃' φ)Hierarchy b s φ
theorem LO.FirstOrder.Arith.sigma₁_induction {ξ : Type u_1} {P : (n : ) → Semiformula ℒₒᵣ ξ nProp} (hVerum : ∀ (n : ), P n ) (hFalsum : ∀ (n : ), P n ) (hEQ : ∀ (n : ) (t₁ t₂ : Semiterm ℒₒᵣ ξ n), P n (Semiformula.rel op(=) ![t₁, t₂])) (hNEQ : ∀ (n : ) (t₁ t₂ : Semiterm ℒₒᵣ ξ n), P n (Semiformula.nrel op(=) ![t₁, t₂])) (hLT : ∀ (n : ) (t₁ t₂ : Semiterm ℒₒᵣ ξ n), P n (Semiformula.rel op(<) ![t₁, t₂])) (hNLT : ∀ (n : ) (t₁ t₂ : Semiterm ℒₒᵣ ξ n), P n (Semiformula.nrel op(<) ![t₁, t₂])) (hAnd : ∀ (n : ) (φ ψ : Semiformula ℒₒᵣ ξ n), Hierarchy 𝚺 1 φHierarchy 𝚺 1 ψP n φP n ψP n (φ ψ)) (hOr : ∀ (n : ) (φ ψ : Semiformula ℒₒᵣ ξ n), Hierarchy 𝚺 1 φHierarchy 𝚺 1 ψP n φP n ψP n (φ ψ)) (hBall : ∀ (n : ) (t : Semiterm ℒₒᵣ ξ n) (φ : Semiformula ℒₒᵣ ξ (n + 1)), Hierarchy 𝚺 1 φP (n + 1) φP n (“(∀[!!(Semiterm.bvar 0) < !!(Rew.bShift t)] !φ)”)) (hEx : ∀ (n : ) (φ : Semiformula ℒₒᵣ ξ (n + 1)), Hierarchy 𝚺 1 φP (n + 1) φP n (∃' φ)) (n : ) (φ : Semiformula ℒₒᵣ ξ n) :
Hierarchy 𝚺 1 φP n φ
theorem LO.FirstOrder.Arith.sigma₁_induction' {ξ : Type u_1} {n : } {φ : Semiformula ℒₒᵣ ξ n} (hp : Hierarchy 𝚺 1 φ) {P : (n : ) → Semiformula ℒₒᵣ ξ nProp} (hVerum : ∀ (n : ), P n ) (hFalsum : ∀ (n : ), P n ) (hEQ : ∀ (n : ) (t₁ t₂ : Semiterm ℒₒᵣ ξ n), P n (Semiformula.rel op(=) ![t₁, t₂])) (hNEQ : ∀ (n : ) (t₁ t₂ : Semiterm ℒₒᵣ ξ n), P n (Semiformula.nrel op(=) ![t₁, t₂])) (hLT : ∀ (n : ) (t₁ t₂ : Semiterm ℒₒᵣ ξ n), P n (Semiformula.rel op(<) ![t₁, t₂])) (hNLT : ∀ (n : ) (t₁ t₂ : Semiterm ℒₒᵣ ξ n), P n (Semiformula.nrel op(<) ![t₁, t₂])) (hAnd : ∀ (n : ) (φ ψ : Semiformula ℒₒᵣ ξ n), Hierarchy 𝚺 1 φHierarchy 𝚺 1 ψP n φP n ψP n (φ ψ)) (hOr : ∀ (n : ) (φ ψ : Semiformula ℒₒᵣ ξ n), Hierarchy 𝚺 1 φHierarchy 𝚺 1 ψP n φP n ψP n (φ ψ)) (hBall : ∀ (n : ) (t : Semiterm ℒₒᵣ ξ n) (φ : Semiformula ℒₒᵣ ξ (n + 1)), Hierarchy 𝚺 1 φP (n + 1) φP n (“(∀[!!(Semiterm.bvar 0) < !!(Rew.bShift t)] !φ)”)) (hEx : ∀ (n : ) (φ : Semiformula ℒₒᵣ ξ (n + 1)), Hierarchy 𝚺 1 φP (n + 1) φP n (∃' φ)) :
P n φ