Skip to main content
AlexKontorovich/PrimeNumberTheoremAnd
Source indexedlemma · leanprover/lean4:v4.32.0

FKS2.part1_decay_bound

PrimeNumberTheoremAnd.IEANTN.FKS2 · PrimeNumberTheoremAnd/IEANTN/FKS2.lean:946 to 975

Mathematical statement

Exact Lean statement

lemma part1_decay_bound
    (t powfac expfac : ℝ)
    (ht : t ≥ 1000)
    (hpow_le_div : powfac ≤ (5.5666305 : ℝ) / t)
    (hexpfac_nonneg : 0 ≤ expfac)
    (h_exp_half :
      expfac * exp (-(1 / 2 : ℝ) * t) ≤ exp (-(1 / 4 : ℝ) * t)) :
    powfac * expfac * ((2 * t) * exp (-(1 / 2 : ℝ) * t))
      ≤ (2 * (5.5666305 : ℝ)) * exp (-(230 : ℝ))

Complete declaration

Lean source

Canonical source
Full Lean sourceLean 4
lemma part1_decay_bound    (t powfac expfac : )    (ht : t  1000)    (hpow_le_div : powfac  (5.5666305 : ) / t)    (hexpfac_nonneg : 0  expfac)    (h_exp_half :      expfac * exp (-(1 / 2 : ) * t)  exp (-(1 / 4 : ) * t)) :    powfac * expfac * ((2 * t) * exp (-(1 / 2 : ) * t))       (2 * (5.5666305 : )) * exp (-(230 : )) := by  have ht_pos : 0 < t := by linarith [ht]  have hpow_t : powfac * (2 * t)  2 * (5.5666305 : ) := by    have hmul : powfac * (2 * t)  ((5.5666305 : ) / t) * (2 * t) :=      mul_le_mul_of_nonneg_right hpow_le_div (by positivity)    have ht_eq : ((5.5666305 : ) / t) * (2 * t) = 2 * (5.5666305 : ) := by      field_simp [ht_pos.ne']    calc      powfac * (2 * t)  ((5.5666305 : ) / t) * (2 * t) := hmul      _ = 2 * (5.5666305 : ) := ht_eq  have hexp230 :      exp (-(1 / 4 : ) * t)  exp (-(230 : )) := by    refine (Real.exp_le_exp).2 ?_    linarith [ht]  calc    powfac * expfac * ((2 * t) * exp (-(1 / 2 : ) * t))        = (powfac * (2 * t)) * (expfac * exp (-(1 / 2 : ) * t)) := by ring_nf    _  (2 * (5.5666305 : )) * exp (-(1 / 4 : ) * t) := by      exact mul_le_mul hpow_t h_exp_half        (mul_nonneg hexpfac_nonneg (Real.exp_nonneg _)) (by positivity)    _  (2 * (5.5666305 : )) * exp (-(230 : )) := by      exact mul_le_mul_of_nonneg_left hexp230 (by positivity)