Documentation

Foundation.FirstOrder.Arithmetic.Definability.BoundedDefinable

class LO.FirstOrder.Arithmetic.Bounded {V : Type u_2} [ORingStructure V] {k : } (f : (Fin kV)V) :
Instances
    @[reducible, inline]
    abbrev LO.FirstOrder.Arithmetic.Bounded₁ {V : Type u_2} [ORingStructure V] (f : VV) :
    Equations
    Instances For
      @[reducible, inline]
      abbrev LO.FirstOrder.Arithmetic.Bounded₂ {V : Type u_2} [ORingStructure V] (f : VVV) :
      Equations
      Instances For
        @[reducible, inline]
        abbrev LO.FirstOrder.Arithmetic.Bounded₃ {V : Type u_2} [ORingStructure V] (f : VVVV) :
        Equations
        Instances For
          instance LO.FirstOrder.Arithmetic.instBounded {V : Type u_2} [ORingStructure V] {k : } (f : (Fin kV)V) [h : Bounded f] :
          @[simp]
          theorem LO.FirstOrder.Arithmetic.Bounded.var {V : Type u_2} [ORingStructure V] [V ⊧ₘ* 𝗣𝗔⁻] {k : } (i : Fin k) :
          Bounded fun (v : Fin kV) => v i
          @[simp]
          theorem LO.FirstOrder.Arithmetic.Bounded.const {V : Type u_2} [ORingStructure V] [V ⊧ₘ* 𝗣𝗔⁻] {k : } (c : V) :
          Bounded fun (x : Fin kV) => c
          @[simp]
          theorem LO.FirstOrder.Arithmetic.Bounded.term_retraction {n : } {V : Type u_2} [ORingStructure V] {k : } [V ⊧ₘ* 𝗣𝗔⁻] (t : Semiterm ℒₒᵣ V n) (e : Fin nFin k) :
          Bounded fun (v : Fin kV) => Semiterm.valm V (fun (x : Fin n) => v (e x)) id t
          @[simp]
          theorem LO.FirstOrder.Arithmetic.Bounded.term {V : Type u_2} [ORingStructure V] {k : } [V ⊧ₘ* 𝗣𝗔⁻] (t : Semiterm ℒₒᵣ V k) :
          Bounded fun (v : Fin kV) => Semiterm.valm V v id t
          theorem LO.FirstOrder.Arithmetic.Bounded.retraction {n : } {V : Type u_2} [ORingStructure V] {k : } {f : (Fin kV)V} (hf : Bounded f) (e : Fin kFin n) :
          Bounded fun (v : Fin nV) => f fun (i : Fin k) => v (e i)
          theorem LO.FirstOrder.Arithmetic.Bounded.comp {V : Type u_2} [ORingStructure V] {l : } [V ⊧ₘ* 𝗣𝗔⁻] {k : } {f : (Fin lV)V} {g : Fin l(Fin kV)V} (hf : Bounded f) (hg : ∀ (i : Fin l), Bounded (g i)) :
          Bounded fun (v : Fin kV) => f fun (x : Fin l) => g x v
          theorem LO.FirstOrder.Arithmetic.Bounded₁.comp {V : Type u_2} [ORingStructure V] [V ⊧ₘ* 𝗣𝗔⁻] {f : VV} {k : } {g : (Fin kV)V} (hf : Bounded₁ f) (hg : Bounded g) :
          Bounded fun (v : Fin kV) => f (g v)
          theorem LO.FirstOrder.Arithmetic.Bounded₂.comp {V : Type u_2} [ORingStructure V] [V ⊧ₘ* 𝗣𝗔⁻] {f : VVV} {k : } {g₁ g₂ : (Fin kV)V} (hf : Bounded₂ f) (hg₁ : Bounded g₁) (hg₂ : Bounded g₂) :
          Bounded fun (v : Fin kV) => f (g₁ v) (g₂ v)
          theorem LO.FirstOrder.Arithmetic.Bounded₃.comp {V : Type u_2} [ORingStructure V] [V ⊧ₘ* 𝗣𝗔⁻] {f : VVVV} {k : } {g₁ g₂ g₃ : (Fin kV)V} (hf : Bounded₃ f) (hg₁ : Bounded g₁) (hg₂ : Bounded g₂) (hg₃ : Bounded g₃) :
          Bounded fun (v : Fin kV) => f (g₁ v) (g₂ v) (g₃ v)
          @[reducible, inline]
          Equations
          Instances For
            @[reducible, inline]
            abbrev LO.FirstOrder.Arithmetic.DefinableBoundedFunction₃ {V : Type u_2} [ORingStructure V] (f : VVVV) :
            Equations
            Instances For
              theorem LO.FirstOrder.Arithmetic.DefinableBoundedFunction.retraction {n : } {V : Type u_2} [ORingStructure V] {k : } {f : (Fin kV)V} (hf : DefinableBoundedFunction f) (e : Fin kFin n) :
              DefinableBoundedFunction fun (v : Fin nV) => f fun (i : Fin k) => v (e i)
              theorem LO.FirstOrder.Arithmetic.HierarchySymbol.Definable.ball_blt {k : } {V : Type u_2} [ORingStructure V] { : HierarchySymbol} [V ⊧ₘ* 𝗣𝗔⁻] {P : (Fin kV)VProp} {f : (Fin kV)V} (hf : DefinableBoundedFunction f) (h : .Definable fun (w : Fin (k + 1)V) => P (fun (x : Fin k) => w x.succ) (w 0)) :
              .Definable fun (v : Fin kV) => x < f v, P v x
              theorem LO.FirstOrder.Arithmetic.HierarchySymbol.Definable.bex_blt {k : } {V : Type u_2} [ORingStructure V] { : HierarchySymbol} [V ⊧ₘ* 𝗣𝗔⁻] {P : (Fin kV)VProp} {f : (Fin kV)V} (hf : DefinableBoundedFunction f) (h : .Definable fun (w : Fin (k + 1)V) => P (fun (x : Fin k) => w x.succ) (w 0)) :
              .Definable fun (v : Fin kV) => x < f v, P v x
              theorem LO.FirstOrder.Arithmetic.HierarchySymbol.Definable.ball_ble {k : } {V : Type u_2} [ORingStructure V] { : HierarchySymbol} [V ⊧ₘ* 𝗣𝗔⁻] {P : (Fin kV)VProp} {f : (Fin kV)V} (hf : DefinableBoundedFunction f) (h : .Definable fun (w : Fin (k + 1)V) => P (fun (x : Fin k) => w x.succ) (w 0)) :
              .Definable fun (v : Fin kV) => xf v, P v x
              theorem LO.FirstOrder.Arithmetic.HierarchySymbol.Definable.bex_ble {k : } {V : Type u_2} [ORingStructure V] { : HierarchySymbol} [V ⊧ₘ* 𝗣𝗔⁻] {P : (Fin kV)VProp} {f : (Fin kV)V} (hf : DefinableBoundedFunction f) (h : .Definable fun (w : Fin (k + 1)V) => P (fun (x : Fin k) => w x.succ) (w 0)) :
              .Definable fun (v : Fin kV) => xf v, P v x
              theorem LO.FirstOrder.Arithmetic.HierarchySymbol.Definable.ball_blt_zero {k : } {V : Type u_2} [ORingStructure V] {Γ : SigmaPiDelta} [V ⊧ₘ* 𝗣𝗔⁻] {P : (Fin kV)VProp} {f : (Fin kV)V} (hf : DefinableBoundedFunction f) (h : { Γ := Γ, rank := 0 }.Definable fun (w : Fin (k + 1)V) => P (fun (x : Fin k) => w x.succ) (w 0)) :
              { Γ := Γ, rank := 0 }.Definable fun (v : Fin kV) => x < f v, P v x
              theorem LO.FirstOrder.Arithmetic.HierarchySymbol.Definable.bex_blt_zero {k : } {V : Type u_2} [ORingStructure V] {Γ : SigmaPiDelta} [V ⊧ₘ* 𝗣𝗔⁻] {P : (Fin kV)VProp} {f : (Fin kV)V} (hf : DefinableBoundedFunction f) (h : { Γ := Γ, rank := 0 }.Definable fun (w : Fin (k + 1)V) => P (fun (x : Fin k) => w x.succ) (w 0)) :
              { Γ := Γ, rank := 0 }.Definable fun (v : Fin kV) => x < f v, P v x
              theorem LO.FirstOrder.Arithmetic.HierarchySymbol.Definable.ball_ble_zero {k : } {V : Type u_2} [ORingStructure V] {Γ : SigmaPiDelta} [V ⊧ₘ* 𝗣𝗔⁻] {P : (Fin kV)VProp} {f : (Fin kV)V} (hf : DefinableBoundedFunction f) (h : { Γ := Γ, rank := 0 }.Definable fun (w : Fin (k + 1)V) => P (fun (x : Fin k) => w x.succ) (w 0)) :
              { Γ := Γ, rank := 0 }.Definable fun (v : Fin kV) => xf v, P v x
              theorem LO.FirstOrder.Arithmetic.HierarchySymbol.Definable.bex_ble_zero {k : } {V : Type u_2} [ORingStructure V] {Γ : SigmaPiDelta} [V ⊧ₘ* 𝗣𝗔⁻] {P : (Fin kV)VProp} {f : (Fin kV)V} (hf : DefinableBoundedFunction f) (h : { Γ := Γ, rank := 0 }.Definable fun (w : Fin (k + 1)V) => P (fun (x : Fin k) => w x.succ) (w 0)) :
              { Γ := Γ, rank := 0 }.Definable fun (v : Fin kV) => xf v, P v x
              theorem LO.FirstOrder.Arithmetic.HierarchySymbol.Definable.bex_vec_le_boldfaceBoundedFunction {V : Type u_2} [ORingStructure V] { : HierarchySymbol} [V ⊧ₘ* 𝗣𝗔⁻] {l k : } {φ : Fin l(Fin kV)V} {P : (Fin kV)(Fin lV)Prop} (pp : ∀ (i : Fin l), DefinableBoundedFunction (φ i)) (hP : .Definable fun (w : Fin (k + l)V) => P (fun (i : Fin k) => w (Fin.castAdd l i)) fun (j : Fin l) => w (Fin.natAdd k j)) :
              .Definable fun (v : Fin kV) => wfun (x : Fin l) => φ x v, P v w
              theorem LO.FirstOrder.Arithmetic.HierarchySymbol.Definable.substitution_boldfaceBoundedFunction {k : } {V : Type u_2} [ORingStructure V] { : HierarchySymbol} [V ⊧ₘ* 𝗣𝗔⁻] {P : (Fin kV)Prop} {l : } {f : Fin k(Fin lV)V} (hP : .Definable P) (hf : ∀ (i : Fin k), DefinableBoundedFunction (f i)) :
              .Definable fun (z : Fin lV) => P fun (x : Fin k) => f x z
              theorem LO.FirstOrder.Arithmetic.DefinableBoundedFunction.of_iff {V : Type u_2} [ORingStructure V] {k : } {f g : (Fin kV)V} (H : DefinableBoundedFunction f) (h : ∀ (v : Fin kV), f v = g v) :
              @[simp]
              theorem LO.FirstOrder.Arithmetic.DefinableBoundedFunction.term_retraction {n : } {V : Type u_2} [ORingStructure V] [V ⊧ₘ* 𝗣𝗔⁻] {k : } (t : Semiterm ℒₒᵣ V n) (e : Fin nFin k) :
              DefinableBoundedFunction fun (v : Fin kV) => Semiterm.valm V (fun (x : Fin n) => v (e x)) id t
              theorem LO.FirstOrder.Arithmetic.HierarchySymbol.Definable.bcomp₁ {V : Type u_2} [ORingStructure V] { : HierarchySymbol} [V ⊧ₘ* 𝗣𝗔⁻] {k : } {P : VProp} {f : (Fin kV)V} [hP : -Predicate P] (hf : DefinableBoundedFunction f) :
              .Definable fun (v : Fin kV) => P (f v)
              theorem LO.FirstOrder.Arithmetic.HierarchySymbol.Definable.bcomp₂ {V : Type u_2} [ORingStructure V] { : HierarchySymbol} [V ⊧ₘ* 𝗣𝗔⁻] {k : } {R : VVProp} {f₁ f₂ : (Fin kV)V} [hR : -Relation R] (hf₁ : DefinableBoundedFunction f₁) (hf₂ : DefinableBoundedFunction f₂) :
              .Definable fun (v : Fin kV) => R (f₁ v) (f₂ v)
              theorem LO.FirstOrder.Arithmetic.HierarchySymbol.Definable.bcomp₃ {V : Type u_2} [ORingStructure V] { : HierarchySymbol} [V ⊧ₘ* 𝗣𝗔⁻] {k : } {R : VVVProp} {f₁ f₂ f₃ : (Fin kV)V} [hR : -Relation₃ R] (hf₁ : DefinableBoundedFunction f₁) (hf₂ : DefinableBoundedFunction f₂) (hf₃ : DefinableBoundedFunction f₃) :
              .Definable fun (v : Fin kV) => R (f₁ v) (f₂ v) (f₃ v)
              theorem LO.FirstOrder.Arithmetic.HierarchySymbol.Definable.bcomp₄ {V : Type u_2} [ORingStructure V] { : HierarchySymbol} [V ⊧ₘ* 𝗣𝗔⁻] {k : } {R : VVVVProp} {f₁ f₂ f₃ f₄ : (Fin kV)V} [hR : -Relation₄ R] (hf₁ : DefinableBoundedFunction f₁) (hf₂ : DefinableBoundedFunction f₂) (hf₃ : DefinableBoundedFunction f₃) (hf₄ : DefinableBoundedFunction f₄) :
              .Definable fun (v : Fin kV) => R (f₁ v) (f₂ v) (f₃ v) (f₄ v)
              theorem LO.FirstOrder.Arithmetic.HierarchySymbol.Definable.bcomp₁_zero {V : Type u_2} [ORingStructure V] {Γ : SigmaPiDelta} [V ⊧ₘ* 𝗣𝗔⁻] {k : } {P : VProp} {f : (Fin kV)V} [hP : { Γ := Γ, rank := 0 }-Predicate P] (hf : DefinableBoundedFunction f) :
              { Γ := Γ, rank := 0 }.Definable fun (v : Fin kV) => P (f v)
              theorem LO.FirstOrder.Arithmetic.HierarchySymbol.Definable.bcomp₂_zero {V : Type u_2} [ORingStructure V] {Γ : SigmaPiDelta} [V ⊧ₘ* 𝗣𝗔⁻] {k : } {R : VVProp} {f₁ f₂ : (Fin kV)V} [hR : { Γ := Γ, rank := 0 }-Relation R] (hf₁ : DefinableBoundedFunction f₁) (hf₂ : DefinableBoundedFunction f₂) :
              { Γ := Γ, rank := 0 }.Definable fun (v : Fin kV) => R (f₁ v) (f₂ v)
              theorem LO.FirstOrder.Arithmetic.HierarchySymbol.Definable.bcomp₃_zero {V : Type u_2} [ORingStructure V] {Γ : SigmaPiDelta} [V ⊧ₘ* 𝗣𝗔⁻] {k : } {R : VVVProp} {f₁ f₂ f₃ : (Fin kV)V} [hR : { Γ := Γ, rank := 0 }-Relation₃ R] (hf₁ : DefinableBoundedFunction f₁) (hf₂ : DefinableBoundedFunction f₂) (hf₃ : DefinableBoundedFunction f₃) :
              { Γ := Γ, rank := 0 }.Definable fun (v : Fin kV) => R (f₁ v) (f₂ v) (f₃ v)
              theorem LO.FirstOrder.Arithmetic.HierarchySymbol.Definable.bcomp₄_zero {V : Type u_2} [ORingStructure V] {Γ : SigmaPiDelta} [V ⊧ₘ* 𝗣𝗔⁻] {k : } {R : VVVVProp} {f₁ f₂ f₃ f₄ : (Fin kV)V} [hR : { Γ := Γ, rank := 0 }-Relation₄ R] (hf₁ : DefinableBoundedFunction f₁) (hf₂ : DefinableBoundedFunction f₂) (hf₃ : DefinableBoundedFunction f₃) (hf₄ : DefinableBoundedFunction f₄) :
              { Γ := Γ, rank := 0 }.Definable fun (v : Fin kV) => R (f₁ v) (f₂ v) (f₃ v) (f₄ v)
              theorem LO.FirstOrder.Arithmetic.HierarchySymbol.DefinableFunction.bcomp {V : Type u_2} [ORingStructure V] { : HierarchySymbol} [V ⊧ₘ* 𝗣𝗔⁻] {l k : } {F : (Fin lV)V} {f : Fin l(Fin kV)V} (hF : .DefinableFunction F) (hf : ∀ (i : Fin l), DefinableBoundedFunction (f i)) :
              .DefinableFunction fun (v : Fin kV) => F fun (x : Fin l) => f x v
              theorem LO.FirstOrder.Arithmetic.HierarchySymbol.DefinableFunction₁.bcomp {V : Type u_2} [ORingStructure V] { : HierarchySymbol} [V ⊧ₘ* 𝗣𝗔⁻] {k : } {F : VV} {f : (Fin kV)V} (hF : -Function₁ F) (hf : DefinableBoundedFunction f) :
              .DefinableFunction fun (v : Fin kV) => F (f v)
              theorem LO.FirstOrder.Arithmetic.HierarchySymbol.DefinableFunction₂.bcomp {V : Type u_2} [ORingStructure V] { : HierarchySymbol} [V ⊧ₘ* 𝗣𝗔⁻] {k : } {F : VVV} {f₁ f₂ : (Fin kV)V} (hF : -Function₂ F) (hf₁ : DefinableBoundedFunction f₁) (hf₂ : DefinableBoundedFunction f₂) :
              .DefinableFunction fun (v : Fin kV) => F (f₁ v) (f₂ v)
              theorem LO.FirstOrder.Arithmetic.HierarchySymbol.DefinableFunction₃.bcomp {V : Type u_2} [ORingStructure V] { : HierarchySymbol} [V ⊧ₘ* 𝗣𝗔⁻] {k : } {F : VVVV} {f₁ f₂ f₃ : (Fin kV)V} (hF : -Function₃ F) (hf₁ : DefinableBoundedFunction f₁) (hf₂ : DefinableBoundedFunction f₂) (hf₃ : DefinableBoundedFunction f₃) :
              .DefinableFunction fun (v : Fin kV) => F (f₁ v) (f₂ v) (f₃ v)
              theorem LO.FirstOrder.Arithmetic.DefinableBoundedFunction₁.comp {V : Type u_2} [ORingStructure V] [V ⊧ₘ* 𝗣𝗔⁻] {k : } {F : VV} {f : (Fin kV)V} (hF : DefinableBoundedFunction₁ F) (hf : DefinableBoundedFunction f) :
              DefinableBoundedFunction fun (v : Fin kV) => F (f v)
              theorem LO.FirstOrder.Arithmetic.DefinableBoundedFunction₂.comp {V : Type u_2} [ORingStructure V] [V ⊧ₘ* 𝗣𝗔⁻] {k : } {F : VVV} {f₁ f₂ : (Fin kV)V} (hF : DefinableBoundedFunction₂ F) (hf₁ : DefinableBoundedFunction f₁) (hf₂ : DefinableBoundedFunction f₂) :
              DefinableBoundedFunction fun (v : Fin kV) => F (f₁ v) (f₂ v)
              theorem LO.FirstOrder.Arithmetic.DefinableBoundedFunction₃.comp {V : Type u_2} [ORingStructure V] [V ⊧ₘ* 𝗣𝗔⁻] {k : } {F : VVVV} {f₁ f₂ f₃ : (Fin kV)V} (hF : DefinableBoundedFunction₃ F) (hf₁ : DefinableBoundedFunction f₁) (hf₂ : DefinableBoundedFunction f₂) (hf₃ : DefinableBoundedFunction f₃) :
              DefinableBoundedFunction fun (v : Fin kV) => F (f₁ v) (f₂ v) (f₃ v)
              theorem LO.FirstOrder.Arithmetic.DefinableBoundedFunction.comp₁ {V : Type u_2} [ORingStructure V] [V ⊧ₘ* 𝗣𝗔⁻] {k : } {F : VV} {f : (Fin kV)V} [hFb : Bounded₁ F] [hFd : 𝚺₀-Function₁ F] (hf : DefinableBoundedFunction f) :
              DefinableBoundedFunction fun (v : Fin kV) => F (f v)
              theorem LO.FirstOrder.Arithmetic.DefinableBoundedFunction.comp₂ {V : Type u_2} [ORingStructure V] [V ⊧ₘ* 𝗣𝗔⁻] {k : } {F : VVV} {f₁ f₂ : (Fin kV)V} [hFb : Bounded₂ F] [hFd : 𝚺₀-Function₂ F] (hf₁ : DefinableBoundedFunction f₁) (hf₂ : DefinableBoundedFunction f₂) :
              DefinableBoundedFunction fun (v : Fin kV) => F (f₁ v) (f₂ v)
              theorem LO.FirstOrder.Arithmetic.DefinableBoundedFunction.comp₃ {V : Type u_2} [ORingStructure V] [V ⊧ₘ* 𝗣𝗔⁻] {k : } {F : VVVV} {f₁ f₂ f₃ : (Fin kV)V} [hFb : Bounded₃ F] [hFd : 𝚺₀-Function₃ F] (hf₁ : DefinableBoundedFunction f₁) (hf₂ : DefinableBoundedFunction f₂) (hf₃ : DefinableBoundedFunction f₃) :
              DefinableBoundedFunction fun (v : Fin kV) => F (f₁ v) (f₂ v) (f₃ v)