Documentation

Foundation.FirstOrder.Arithmetic.Exponential.Log

Logarithmic function #

theorem FFL.FirstOrder.Arithmetic.log_exists_unique_pos {V : Type u_1} [ORingStructure V] [V↓[ℒₒᵣ] ⊧* 𝗜𝚺₀] {y : V} (hy : 0 < y) :
∃! x : V, x < y ∧ ∃ y' ≤ y, Exponential x y' ∧ y < 2 * y'
theorem FFL.FirstOrder.Arithmetic.log_exists_unique {V : Type u_1} [ORingStructure V] [V↓[ℒₒᵣ] ⊧* 𝗜𝚺₀] (y : V) :
∃! x : V, (y = 0 → x = 0) ∧ (0 < y → x < y ∧ ∃ y' ≤ y, Exponential x y' ∧ y < 2 * y')
theorem FFL.FirstOrder.Arithmetic.log_pos {V : Type u_1} [ORingStructure V] [V↓[ℒₒᵣ] ⊧* 𝗜𝚺₀] {y : V} (pos : 0 < y) :
∃ y' ≤ y, Exponential (log y) y' ∧ y < 2 * y'
theorem FFL.FirstOrder.Arithmetic.log_graph {V : Type u_1} [ORingStructure V] [V↓[ℒₒᵣ] ⊧* 𝗜𝚺₀] {x y : V} :
x = log y ↔ (y = 0 → x = 0) ∧ (0 < y → x < y ∧ ∃ y' ≤ y, Exponential x y' ∧ y < 2 * y')
Equations
  • One or more equations did not get rendered due to their size.
Instances For
    theorem FFL.FirstOrder.Arithmetic.log_eq_of_pos {V : Type u_1} [ORingStructure V] [V↓[ℒₒᵣ] ⊧* 𝗜𝚺₀] {x y : V} (pos : 0 < y) {y' : V} (H : Exponential x y') (hy' : y' ≤ y) (hy : y < 2 * y') :
    log y = x
    theorem FFL.FirstOrder.Arithmetic.log_mul_pow2_add_of_lt {V : Type u_1} [ORingStructure V] [V↓[ℒₒᵣ] ⊧* 𝗜𝚺₀] {a p b : V} (pos : 0 < a) (pp : Pow2 p) (hb : b < p) :
    log (a * p + b) = log a + log p
    theorem FFL.FirstOrder.Arithmetic.log_mul_pow2 {V : Type u_1} [ORingStructure V] [V↓[ℒₒᵣ] ⊧* 𝗜𝚺₀] {a p : V} (pos : 0 < a) (pp : Pow2 p) :
    log (a * p) = log a + log p
    theorem FFL.FirstOrder.Arithmetic.length_graph {V : Type u_1} [ORingStructure V] [V↓[ℒₒᵣ] ⊧* 𝗜𝚺₀] {i a : V} :
    i = ‖a‖ ↔ (0 < a → ∃ k ≤ a, k = log a ∧ i = k + 1) ∧ (a = 0 → i = 0)
    Equations
    • One or more equations did not get rendered due to their size.
    Instances For
      theorem FFL.FirstOrder.Arithmetic.length_mul_pow2_add_of_lt {V : Type u_1} [ORingStructure V] [V↓[ℒₒᵣ] ⊧* 𝗜𝚺₀] {a p b : V} (pos : 0 < a) (pp : Pow2 p) (hb : b < p) :
      ‖a * p + b‖ = ‖a‖ + log p
      noncomputable def FFL.FirstOrder.Arithmetic.bexp {V : Type u_1} [ORingStructure V] [V↓[ℒₒᵣ] ⊧* 𝗜𝚺₀] (a x : V) :
      V

      bexp a x = exp x if x < ‖a‖; = 0 o.w.

      Equations
      Instances For
        theorem FFL.FirstOrder.Arithmetic.bexp_graph {V : Type u_1} [ORingStructure V] [V↓[ℒₒᵣ] ⊧* 𝗜𝚺₀] {y a x : V} :
        y = bexp a x ↔ ∃ l ≤ a, l = ‖a‖ ∧ (x < l → Exponential x y) ∧ (l ≤ x → y = 0)
        Equations
        • One or more equations did not get rendered due to their size.
        Instances For
          theorem FFL.FirstOrder.Arithmetic.bexp_monotone_iff {V : Type u_1} [ORingStructure V] [V↓[ℒₒᵣ] ⊧* 𝗜𝚺₀] {a i j : V} (hi : i < ‖a‖) (hj : j < ‖a‖) :
          bexp a i < bexp a j ↔ i < j
          theorem FFL.FirstOrder.Arithmetic.bexp_eq_of_lt_length {V : Type u_1} [ORingStructure V] [V↓[ℒₒᵣ] ⊧* 𝗜𝚺₀] {i a a' : V} (ha : i < ‖a‖) (ha' : i < ‖a'‖) :
          bexp a i = bexp a' i
          @[simp]
          @[simp]
          @[simp]
          theorem FFL.FirstOrder.Arithmetic.bexp_monotone {V : Type u_1} [ORingStructure V] [V↓[ℒₒᵣ] ⊧* 𝗜𝚺₀] {a₁ x₁ a₂ x₂ : V} (h₁ : x₁ < ‖a₁‖) (h₂ : x₂ < ‖a₂‖) :
          bexp a₁ x₁ < bexp a₂ x₂ ↔ x₁ < x₂
          theorem FFL.FirstOrder.Arithmetic.bexp_monotone_le {V : Type u_1} [ORingStructure V] [V↓[ℒₒᵣ] ⊧* 𝗜𝚺₀] {a₁ x₁ a₂ x₂ : V} (h₁ : x₁ < ‖a₁‖) (h₂ : x₂ < ‖a₂‖) :
          bexp a₁ x₁ ≤ bexp a₂ x₂ ↔ x₁ ≤ x₂
          theorem FFL.FirstOrder.Arithmetic.bexp_add {V : Type u_1} [ORingStructure V] [V↓[ℒₒᵣ] ⊧* 𝗜𝚺₀] {x₁ x₂ a : V} (h : x₁ + x₂ < ‖a‖) :
          bexp a (x₁ + x₂) = bexp a x₁ * bexp a x₂
          theorem FFL.FirstOrder.Arithmetic.bexp_two_mul {V : Type u_1} [ORingStructure V] [V↓[ℒₒᵣ] ⊧* 𝗜𝚺₀] {a a' x : V} (hx : 2 * x < ‖a‖) (hx' : x < ‖a'‖) :
          bexp a (2 * x) = bexp a' x ^ 2
          Equations
          • One or more equations did not get rendered due to their size.
          Instances For
            theorem FFL.FirstOrder.Arithmetic.log_mul_exp_add_of_lt {V : Type u_1} [ORingStructure V] [V↓[ℒₒᵣ] ⊧* 𝗜𝚺₁] {a b : V} (pos : 0 < a) (i : V) (hb : b < Exp.exp i) :
            log (a * Exp.exp i + b) = log a + i
            theorem FFL.FirstOrder.Arithmetic.log_mul_exp {V : Type u_1} [ORingStructure V] [V↓[ℒₒᵣ] ⊧* 𝗜𝚺₁] {a : V} (pos : 0 < a) (i : V) :
            log (a * Exp.exp i) = log a + i
            theorem FFL.FirstOrder.Arithmetic.length_mul_exp_add_of_lt {V : Type u_1} [ORingStructure V] [V↓[ℒₒᵣ] ⊧* 𝗜𝚺₁] {a b : V} (pos : 0 < a) (i : V) (hb : b < Exp.exp i) :