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

limiting_fourier_lim3_gt_zero

PrimeNumberTheoremAnd.Wiener · PrimeNumberTheoremAnd/Wiener.lean:2543 to 2571

Mathematical statement

Exact Lean statement

theorem limiting_fourier_lim3_gt_zero
    (hG : ContinuousOn G {s | 1 ≤ s.re}) (ψ : CS 2 ℂ) (hx : 0 < x) :
    Tendsto (fun σ' : ℝ ↦ ∫ t : ℝ, G (σ' + t * I) * ψ t * x ^ (t * I)) (𝓝[>] 1)
      (𝓝 (∫ t : ℝ, G (1 + t * I) * ψ t * x ^ (t * I)))

Complete declaration

Lean source

Canonical source
Full Lean sourceLean 4
theorem limiting_fourier_lim3_gt_zero    (hG : ContinuousOn G {s | 1  s.re}) (ψ : CS 2 ℂ) (hx : 0 < x) :    Tendsto (fun σ' :   ∫ t : , G (σ' + t * I) * ψ t * x ^ (t * I)) (𝓝[>] 1)      (𝓝 (∫ t : , G (1 + t * I) * ψ t * x ^ (t * I))) := by  by_cases hh : tsupport ψ =  · simp [tsupport_eq_empty_iff.mp hh]  obtain a₀, ha₀ := Set.nonempty_iff_ne_empty.mpr hh  let S : Set:= reProdIm (Icc 1 2) (tsupport ψ)  have l1 : IsCompact S := Metric.isCompact_iff_isClosed_bounded.mpr    isClosed_Icc.reProdIm (isClosed_tsupport ψ), (Metric.isBounded_Icc 1 2).reProdIm ψ.h2.isBounded  have l2 : S  {s : ℂ | 1  s.re} := fun z hz => (mem_reProdIm.mp hz).1.1  obtain z, -, hmax := l1.exists_isMaxOn 1 + a₀ * I, by simp [S, mem_reProdIm, ha₀] (hG.mono l2).norm  have hxC : (x : ℂ)  0 := ofReal_ne_zero.mpr hx.ne'  refine tendsto_integral_filter_of_dominated_convergence (bound := fun a  ‖G z‖ * ‖ψ a‖)    (eventually_of_mem (Icc_mem_nhdsGT_of_mem (by norm_num : (1 : )  Set.Ico 1 2)) fun u hu       ((hG.comp_continuous (by fun_prop) (by simp [hu.1])).mul ψ.h1.continuous).mul        (by simpa using Continuous.const_cpow (by fun_prop) (Or.inl hxC)) |>.aestronglyMeasurable)    (eventually_of_mem (Icc_mem_nhdsGT_of_mem (by norm_num : (1 : )  Set.Ico 1 2)) fun u hu       .of_forall fun v  ?_)    ((continuous_const.mul ψ.h1.continuous.norm).integrable_of_hasCompactSupport ψ.h2.norm.mul_left)    (.of_forall fun t  ?_)  · by_cases h : v  tsupport ψ    · simp_rw [norm_mul, norm_x_cpow_it x v hx, mul_one]      exact mul_le_mul_of_nonneg_right (isMaxOn_iff.mp hmax _ (by simp [S, mem_reProdIm, hu.1, hu.2, h])) (norm_nonneg _)    · have : v  Function.support ψ := fun a  h (subset_tsupport ψ a)      simp [Function.notMem_support.mp this]  · exact ((hG (1 + t * I) (by simp)).tendsto.comp <| tendsto_nhdsWithin_iff.mpr      ((continuous_ofReal.tendsto _).add tendsto_const_nhds).mono_left nhdsWithin_le_nhds,       eventually_nhdsWithin_of_forall fun _ hx'  by simp [(Set.mem_Ioi.mp hx').le]).mul_const _ |>.mul_const _