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

Kadiri.kadiri_thm_3_1_q1_eq_14_of_windowed_fourier_source_bounds

PrimeNumberTheoremAnd.IEANTN.KadiriEq14 · PrimeNumberTheoremAnd/IEANTN/KadiriEq14.lean:618 to 665

Source documentation

Kadiri-side bridge from windowed Fourier bounds to equation (14). It leaves only a source bound and a local principal-value window bound as application inputs; the mass and far-field tail are handled by LaplaceInversion.

Exact Lean statement

lemma kadiri_thm_3_1_q1_eq_14_of_windowed_fourier_source_bounds
    {φ : ℝ → ℂ} (hφ : ContDiff ℝ 1 φ)
    {b : ℝ} (hb : 0 < b)
    (hφ_decay : (fun x : ℝ ↦ φ x * exp ((x : ℂ) / 2))
        =O[Filter.cocompact ℝ] fun x : ℝ ↦ Real.exp (-(1/2 + b) * |x|))
    {a R B L M : ℝ} (ha : 0 < a) (hab : a < b) (ha1 : a < 1) (hR : 0 < R)
    (hsource : ∀ n : ℕ, n ≠ 0 → n ≠ 1 →
      ‖(fun y : ℝ => exp (-((a : ℂ) * (y : ℂ))) • φ y) (-Real.log n)‖ ≤ B)
    (hmass : ∀ᶠ T in Filter.atTop,
      ‖∫ u in (-R)..R,
        if u = 0 then (0 : ℂ) else (Real.sin (T * u) / (Real.pi * u) : ℂ)‖ ≤ M)
    (hlocal : ∀ᶠ T in Filter.atTop, ∀ n : ℕ, n ≠ 0 → n ≠ 1 →
      ‖∫ u in (-R)..R,
          (if u = 0 then (0 : ℂ) else (Real.sin (T * u) / (Real.pi * u) : ℂ)) •
            ((fun y : ℝ => exp (-((a : ℂ) * (y : ℂ))) • φ y) (-Real.log n - u) -
              (fun y : ℝ => exp (-((a : ℂ) * (y : ℂ))) • φ y) (-Real.log n))‖ ≤ L) :
    Filter.Tendsto (fun T : ℝ ↦ kadiri_thm_3_1_q1_I_2 φ a T)
      Filter.atTop
      (nhds (-∑' n : ℕ, ((Λ n : ℂ) / (n : ℂ)) * φ (-Real.log n)))

Complete declaration

Lean source

Canonical source
Full Lean sourceLean 4
lemma kadiri_thm_3_1_q1_eq_14_of_windowed_fourier_source_bounds    {φ :   ℂ} (hφ : ContDiff  1 φ)    {b : } (hb : 0 < b)    (hφ_decay : (fun x :   φ x * exp ((x : ℂ) / 2))        =O[Filter.cocompact ] fun x :   Real.exp (-(1/2 + b) * |x|))    {a R B L M : } (ha : 0 < a) (hab : a < b) (ha1 : a < 1) (hR : 0 < R)    (hsource :  n : , n  0  n  1       ‖(fun y :  => exp (-((a : ℂ) * (y : ℂ))) • φ y) (-Real.log n)‖  B)    (hmass : ᶠ T in Filter.atTop,      ‖∫ u in (-R)..R,        if u = 0 then (0 : ℂ) else (Real.sin (T * u) / (Real.pi * u) : ℂ)‖  M)    (hlocal : ᶠ T in Filter.atTop,  n : , n  0  n  1       ‖∫ u in (-R)..R,          (if u = 0 then (0 : ℂ) else (Real.sin (T * u) / (Real.pi * u) : ℂ)) •            ((fun y :  => exp (-((a : ℂ) * (y : ℂ))) • φ y) (-Real.log n - u) -              (fun y :  => exp (-((a : ℂ) * (y : ℂ))) • φ y) (-Real.log n))‖  L) :    Filter.Tendsto (fun T :   kadiri_thm_3_1_q1_I_2 φ a T)      Filter.atTop      (nhds (-∑' n : , ((Λ n : ℂ) / (n : ℂ)) * φ (-Real.log n))) := by  let F :  := fun y => exp (-((a : ℂ) * (y : ℂ))) • φ y  have hF_int : Integrable F := by    have hF_mul :        Integrable (fun y :  => exp (-((a : ℂ) * (y : ℂ))) * φ y) :=      kadiri_laplace_positive_line_weight_integrable hφ hφ_decay ha hab    simpa [F, smul_eq_mul] using hF_mul  refine kadiri_thm_3_1_q1_eq_14_of_uniform_fourier_inv_trunc_bound    hφ hb hφ_decay ha hab ha1    (M * B + L + (1 / (Real.pi * R)) * ∫ u : , ‖F u‖) ?_  filter_upwards [Filter.eventually_ge_atTop (0 : ), hmass, hlocal] with    T hT hmassT hlocalT n hn h1  have hq : IntervalIntegrable      (fun u :  =>        if u = 0 then 0 else (1 / (Real.pi * u) : ℂ) • (F (-Real.log n - u) -          F (-Real.log n)))      volume (-R) R := by    have hq0 := kadiri_laplace_line_local_quotient_integrable:= φ) hφ a (-Real.log n) hR    simpa [F, smul_eq_mul] using hq0  have herr : IntervalIntegrable      (fun u :  =>        (if u = 0 then (0 : ℂ) else (Real.sin (T * u) / (Real.pi * u) : ℂ)) •          (F (-Real.log n - u) - F (-Real.log n)))      volume (-R) R :=    intervalIntegrable_sin_div_kernel_error_of_intervalIntegrable_quotient      (E := ℂ) hq T  simpa [F] using    norm_fourierInvTrunc_le_of_windowed_sin_div_bounds (E := ℂ) hF_int hT hR      (hsource n hn h1) hmassT herr (hlocalT n hn h1)