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

Complex.exists_pos_radius_forall_mem_ball_re_ge

PrimeNumberTheoremAnd.Mathlib.Analysis.Complex.Basic · PrimeNumberTheoremAnd/Mathlib/Analysis/Complex/Basic.lean:38 to 61

Source documentation

If a < re z, nested open balls around z stay in the half-plane re · ≥ a.

Exact Lean statement

theorem exists_pos_radius_forall_mem_ball_re_ge {z₀ : ℂ} {a : ℝ} (ha : a < z₀.re) :
    ∃ δ > 0, ∀ (x y : ℂ), dist x z₀ < δ → dist y x < δ → a ≤ y.re

Complete declaration

Lean source

Canonical source
Full Lean sourceLean 4
theorem exists_pos_radius_forall_mem_ball_re_ge {z₀ : ℂ} {a : } (ha : a < z₀.re) :     δ > 0,  (x y : ℂ), dist x z₀ < δ  dist y x < δ  a  y.re := by  set δ :  := (z₀.re - a) / 2 with hδdef  have hpos : 0 < z₀.re - a := sub_pos.mpr ha  have hδpos : 0 < δ := by simpa [hδdef] using half_pos hpos  refine δ, hδpos, ?_  intro x y hx hy  have htri : dist y z₀  dist y x + dist x z₀ := dist_triangle y x z₀  have hsumlt : dist y x + dist x z₀ < δ + δ := add_lt_add hy hx  have hnorm_lt : ‖y - z₀‖ < δ + δ := by simpa [dist_eq_norm] using lt_of_le_of_lt htri hsumlt  have hdeltaSum : δ + δ = z₀.re - a := by simp [hδdef, add_halves]  have hnorm_lt_re : ‖y - z₀‖ < z₀.re - a := by simpa [hdeltaSum] using hnorm_lt  have h_eps_lt : a < z₀.re - ‖y - z₀‖ := by    have hsum' : a + ‖y - z₀‖ < z₀.re := by      simpa [add_comm, add_left_comm, add_assoc, sub_eq_add_neg] using        (add_lt_add_left hnorm_lt_re a)    simpa [lt_sub_iff_add_lt] using hsum'  have hre_lower : -‖y - z₀‖  (y - z₀).re := (abs_le.mp (abs_re_le_norm (y - z₀))).1  have hyge : z₀.re - ‖y - z₀‖  y.re := by    have h' : z₀.re + (-‖y - z₀‖)  z₀.re + (y - z₀).re := add_le_add_right hre_lower z₀.re    have h'' : z₀.re + (y - z₀).re = y.re := by      simp [sub_eq_add_neg]    simpa [sub_eq_add_neg, h''] using h'  exact le_of_lt (lt_of_lt_of_le h_eps_lt hyge)