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

eulerMascheroniConstant_lb

PrimeNumberTheoremAnd.EulerMascheroniBounds · PrimeNumberTheoremAnd/EulerMascheroniBounds.lean:99 to 117

Source documentation

γ ≥ γ₁(n+1) for all n.

Exact Lean statement

lemma eulerMascheroniConstant_lb (n : ℕ) :
    γ₁ (n + 1) ≤ eulerMascheroniConstant

Complete declaration

Lean source

Canonical source
Full Lean sourceLean 4
lemma eulerMascheroniConstant_lb (n : ) :    γ₁ (n + 1)  eulerMascheroniConstant := by  have key : γ₁ (n + 1) = eulerMascheroniSeq n + 1 / (2 * ((n : ) + 1)) := by    simp only [γ₁, eulerMascheroniSeq]    rw [harmonic_succ]    push_cast    field_simp    ring  rw [key]  have h_lim : Filter.Tendsto (fun m => eulerMascheroniSeq m - eulerMascheroniSeq n) Filter.atTop (nhds (eulerMascheroniConstant - eulerMascheroniSeq n)) :=    Filter.Tendsto.sub Real.tendsto_eulerMascheroniSeq tendsto_const_nhds  have h_lim_bound : Filter.Tendsto (fun m => 1 / (2 * (n + 1) : ) - 1 / (2 * (m + 1) : )) Filter.atTop (nhds (1 / (2 * (n + 1) : ))) :=    le_trans (tendsto_const_nhds.sub <| tendsto_const_nhds.div_atTop <|      Filter.Tendsto.const_mul_atTop zero_lt_two <|      Filter.tendsto_id.atTop_add tendsto_const_nhds) <| by norm_num  have := h_lim_bound.comp tendsto_natCast_atTop_atTop  exact le_of_tendsto_of_tendsto this h_lim (Filter.eventually_atTop.mpr    n, by intros m hm; simpa using eulerMascheroniSeq_diff_lb n m hm) |>    fun h => by norm_num at *; grind