Documentation

Foundation.FirstOrder.Arithmetic.Exponential.Exp

Exponential function #

This file provides a proof of the theorem states that the graph of exponential function is definable by $\Sigma_0$-formula and it's inductive property is provable in $\mathsf{I}\Sigma_0$.

noncomputable def LO.FirstOrder.Arithmetic.ext {V : Type u_1} [ORingStructure V] [V↓[ℒₒᵣ] ⊧* 𝗜𝚺₀] (u z : V) :
V
Equations
Instances For
    theorem LO.FirstOrder.Arithmetic.ext_graph {V : Type u_1} [ORingStructure V] [V↓[ℒₒᵣ] ⊧* 𝗜𝚺₀] (a b c : V) :
    a = ext b c xc, x = c / b a = x % b
    Equations
    • One or more equations did not get rendered due to their size.
    Instances For
      @[simp]
      theorem LO.FirstOrder.Arithmetic.ext_lt {V : Type u_1} [ORingStructure V] [V↓[ℒₒᵣ] ⊧* 𝗜𝚺₀] {u : V} (z : V) (pos : 0 < u) :
      ext u z < u
      theorem LO.FirstOrder.Arithmetic.ext_add_of_dvd_sq_right {V : Type u_1} [ORingStructure V] [V↓[ℒₒᵣ] ⊧* 𝗜𝚺₀] {u z₁ z₂ : V} (pos : 0 < u) (h : u ^ 2 z₂) :
      ext u (z₁ + z₂) = ext u z₁
      theorem LO.FirstOrder.Arithmetic.ext_add_of_dvd_sq_left {V : Type u_1} [ORingStructure V] [V↓[ℒₒᵣ] ⊧* 𝗜𝚺₀] {u z₁ z₂ : V} (pos : 0 < u) (h : u ^ 2 z₁) :
      ext u (z₁ + z₂) = ext u z₂
      theorem LO.FirstOrder.Arithmetic.ext_rem {V : Type u_1} [ORingStructure V] [V↓[ℒₒᵣ] ⊧* 𝗜𝚺₀] {i j z : V} (ppi : PPow2 i) (ppj : PPow2 j) (hij : i < j) :
      ext i (z % j) = ext i z
      Equations
      • One or more equations did not get rendered due to their size.
      Instances For
        Equations
        • One or more equations did not get rendered due to their size.
        Instances For
          Equations
          • One or more equations did not get rendered due to their size.
          Instances For

            The graph of the exponential function

            Equations
            • One or more equations did not get rendered due to their size.
            Instances For
              theorem LO.FirstOrder.Arithmetic.Exponential.Seqₛ.iff {V : Type u_1} [ORingStructure V] [V↓[ℒₒᵣ] ⊧* 𝗜𝚺₀] (y X Y : V) :
              Seqₛ y X Y uy, u 2PPow2 u → ((∃ ext_u_XX, ext_u_X = ext u X 2 * ext_u_X = ext (u ^ 2) X) ext_u_YY, ext_u_Y = ext u Y ext_u_Y ^ 2 = ext (u ^ 2) Y) (∃ ext_u_XX, ext_u_X = ext u X 2 * ext_u_X + 1 = ext (u ^ 2) X) ext_u_YY, ext_u_Y = ext u Y 2 * ext_u_Y ^ 2 = ext (u ^ 2) Y
              Equations
              • One or more equations did not get rendered due to their size.
              Instances For
                theorem LO.FirstOrder.Arithmetic.Exponential.graph_iff {V : Type u_1} [ORingStructure V] [V↓[ℒₒᵣ] ⊧* 𝗜𝚺₀] (x y : V) :
                Exponential x y x = 0 y = 1 Xy ^ 4, Yy ^ 4, (1 = ext 4 X 2 = ext 4 Y) Seqₛ y X Y uy ^ 2, u 2 PPow2 u x = ext u X y = ext u Y
                Equations
                • One or more equations did not get rendered due to their size.
                Instances For

                  The graph of the exponential function can be defined by the $\Delta_0$-formula.

                  The graph of the exponential function can be defined by the $\Delta_0$-formula.

                  theorem LO.FirstOrder.Arithmetic.Exponential.Seq₀.rem {V : Type u_1} [ORingStructure V] [V↓[ℒₒᵣ] ⊧* 𝗜𝚺₀] {X Y i : V} (h : Seq₀ X Y) (ppi : PPow2 i) (hi : 4 < i) :
                  Seq₀ (X % i) (Y % i)
                  theorem LO.FirstOrder.Arithmetic.Exponential.Seqₛ.rem {V : Type u_1} [ORingStructure V] [V↓[ℒₒᵣ] ⊧* 𝗜𝚺₀] {y y' X Y i : V} (h : Seqₛ y X Y) (ppi : PPow2 i) (hi : y' ^ 2 < i) (hy : y' y) :
                  Seqₛ y' (X % i) (Y % i)
                  theorem LO.FirstOrder.Arithmetic.Exponential.append_lt {V : Type u_1} [ORingStructure V] [V↓[ℒₒᵣ] ⊧* 𝗜𝚺₀] (i X : V) {z : V} (hz : z < i) :
                  append i X z < i ^ 2
                  theorem LO.FirstOrder.Arithmetic.Exponential.ext_append_of_lt {V : Type u_1} [ORingStructure V] [V↓[ℒₒᵣ] ⊧* 𝗜𝚺₀] {i j : V} (hi : PPow2 i) (hj : PPow2 j) (hij : i < j) (X z : V) :
                  ext i (append j X z) = ext i X
                  theorem LO.FirstOrder.Arithmetic.Exponential.Seqₛ.append {V : Type u_1} [ORingStructure V] [V↓[ℒₒᵣ] ⊧* 𝗜𝚺₀] {z x y X Y i : V} (h : Seqₛ z X Y) (ppi : PPow2 i) (hz : z < i) :
                  Seqₛ z (Exponential.append (i ^ 2) X x) (Exponential.append (i ^ 2) Y y)
                  theorem LO.FirstOrder.Arithmetic.Exponential.pow2_ext_of_seq₀_of_seqₛ {V : Type u_1} [ORingStructure V] [V↓[ℒₒᵣ] ⊧* 𝗜𝚺₀] {y X Y : V} (h₀ : Seq₀ X Y) (hₛ : Seqₛ y X Y) {i : V} (ne2 : i 2) (hi : i y ^ 2) (ppi : PPow2 i) :
                  Pow2 (ext i Y)
                  theorem LO.FirstOrder.Arithmetic.Exponential.le_sq_ext_of_seq₀_of_seqₛ {V : Type u_1} [ORingStructure V] [V↓[ℒₒᵣ] ⊧* 𝗜𝚺₀] {y X Y : V} (h₀ : Seq₀ X Y) (hₛ : Seqₛ y X Y) {i : V} (ne2 : i 2) (hi : i y ^ 2) (ppi : PPow2 i) :
                  i ext i Y ^ 2
                  theorem LO.FirstOrder.Arithmetic.Exponential.two_mul_ext_le_of_seq₀_of_seqₛ {V : Type u_1} [ORingStructure V] [V↓[ℒₒᵣ] ⊧* 𝗜𝚺₀] {y X Y : V} (h₀ : Seq₀ X Y) (hₛ : Seqₛ y X Y) {i : V} (ne2 : i 2) (hi : i y ^ 2) (ppi : PPow2 i) :
                  2 * ext i Y i
                  theorem LO.FirstOrder.Arithmetic.Exponential.two_le_ext_of_seq₀_of_seqₛ {V : Type u_1} [ORingStructure V] [V↓[ℒₒᵣ] ⊧* 𝗜𝚺₀] {y X Y : V} (h₀ : Seq₀ X Y) (hₛ : Seqₛ y X Y) {i : V} (ne2 : i 2) (hi : i y ^ 2) (ppi : PPow2 i) :
                  2 ext i Y
                  theorem LO.FirstOrder.Arithmetic.Exponential.ext_le_ext_of_seq₀_of_seqₛ {V : Type u_1} [ORingStructure V] [V↓[ℒₒᵣ] ⊧* 𝗜𝚺₀] {y X Y : V} (h₀ : Seq₀ X Y) (hₛ : Seqₛ y X Y) {i : V} (ne2 : i 2) (hi : i y ^ 2) (ppi : PPow2 i) :
                  ext i X < ext i Y
                  theorem LO.FirstOrder.Arithmetic.Exponential.one_le_ext_of_seq₀_of_seqₛ {V : Type u_1} [ORingStructure V] [V↓[ℒₒᵣ] ⊧* 𝗜𝚺₀] {y X Y : V} (h₀ : Seq₀ X Y) (hₛ : Seqₛ y X Y) {i : V} (ne2 : i 2) (hi : i y ^ 2) (ppi : PPow2 i) :
                  1 ext i X
                  theorem LO.FirstOrder.Arithmetic.Exponential.uniq {V : Type u_1} [ORingStructure V] [V↓[ℒₒᵣ] ⊧* 𝗜𝚺₀] {x y₁ y₂ : V} :
                  Exponential x y₁Exponential x y₂y₁ = y₂
                  theorem LO.FirstOrder.Arithmetic.Exponential.inj {V : Type u_1} [ORingStructure V] [V↓[ℒₒᵣ] ⊧* 𝗜𝚺₀] {x₁ x₂ y : V} :
                  Exponential x₁ yExponential x₂ yx₁ = x₂
                  theorem LO.FirstOrder.Arithmetic.Exponential.exponential_elim {V : Type u_1} [ORingStructure V] [V↓[ℒₒᵣ] ⊧* 𝗜𝚺₀] {x y : V} :
                  Exponential x y x = 0 y = 1 ∃ (x' : V) (y' : V), x = x' + 1 y = 2 * y' Exponential x' y'
                  theorem LO.FirstOrder.Arithmetic.Exponential.monotone {V : Type u_1} [ORingStructure V] [V↓[ℒₒᵣ] ⊧* 𝗜𝚺₀] {x₁ x₂ y₁ y₂ : V} :
                  Exponential x₁ y₁Exponential x₂ y₂x₁ < x₂y₁ < y₂
                  theorem LO.FirstOrder.Arithmetic.Exponential.monotone_le {V : Type u_1} [ORingStructure V] [V↓[ℒₒᵣ] ⊧* 𝗜𝚺₀] {x₁ x₂ y₁ y₂ : V} (h₁ : Exponential x₁ y₁) (h₂ : Exponential x₂ y₂) :
                  x₁ x₂y₁ y₂
                  theorem LO.FirstOrder.Arithmetic.Exponential.monotone_iff {V : Type u_1} [ORingStructure V] [V↓[ℒₒᵣ] ⊧* 𝗜𝚺₀] {x₁ x₂ y₁ y₂ : V} (h₁ : Exponential x₁ y₁) (h₂ : Exponential x₂ y₂) :
                  x₁ < x₂ y₁ < y₂
                  theorem LO.FirstOrder.Arithmetic.Exponential.monotone_le_iff {V : Type u_1} [ORingStructure V] [V↓[ℒₒᵣ] ⊧* 𝗜𝚺₀] {x₁ x₂ y₁ y₂ : V} (h₁ : Exponential x₁ y₁) (h₂ : Exponential x₂ y₂) :
                  x₁ x₂ y₁ y₂
                  theorem LO.FirstOrder.Arithmetic.Exponential.add_mul {V : Type u_1} [ORingStructure V] [V↓[ℒₒᵣ] ⊧* 𝗜𝚺₀] {x₁ x₂ y₁ y₂ : V} (h₁ : Exponential x₁ y₁) (h₂ : Exponential x₂ y₂) :
                  Exponential (x₁ + x₂) (y₁ * y₂)

                  The exponential function is proved to be total in $\mathsf I Σ_1$.

                  @[implicit_reducible]
                  Equations
                  Equations
                  • One or more equations did not get rendered due to their size.
                  Instances For