AlexKontorovich/PrimeNumberTheoremAnd
Source indexedlemma · leanprover/lean4:v4.32.0
CH2.lowerRectangle_meromorphicOn
PrimeNumberTheoremAnd.IEANTN.CH2.CH2 · PrimeNumberTheoremAnd/IEANTN/CH2/CH2.lean:1386 to 1400
Mathematical statement
Exact Lean statement
lemma lowerRectangle_meromorphicOn (n : ℕ)
(hG : ∀ s, G s = G_circ s + (Real.sign s.im : ℂ) * G_star s)
(hG_circ_mero : MeromorphicOn G_circ l.R) (hG_star_mero : MeromorphicOn G_star l.R)
(hx₀ : 1 ≤ x₀) (hx : x₀ < x) :
MeromorphicOn (fun s ↦ G s * (x : ℂ) ^ s)
(Rectangle ((l.σ n : ℂ) - (l.T : ℂ) * Complex.I) (1 - (l.δ : ℂ) * Complex.I))Complete declaration
Lean source
Full Lean sourceLean 4
lemma lowerRectangle_meromorphicOn (n : ℕ) (hG : ∀ s, G s = G_circ s + (Real.sign s.im : ℂ) * G_star s) (hG_circ_mero : MeromorphicOn G_circ l.R) (hG_star_mero : MeromorphicOn G_star l.R) (hx₀ : 1 ≤ x₀) (hx : x₀ < x) : MeromorphicOn (fun s ↦ G s * (x : ℂ) ^ s) (Rectangle ((l.σ n : ℂ) - (l.T : ℂ) * Complex.I) (1 - (l.δ : ℂ) * Complex.I)) := by intro s hs have hs_RposBar := l.lowerRectangle_subset_RposBar n hs have hs_im_neg : s.im < 0 := hs_RposBar.2.2.trans_lt (neg_lt_zero.mpr l.hδ.1) have h_eq : (fun t : ℂ ↦ G t * (x : ℂ) ^ t) =ᶠ[nhds s] (fun t : ℂ ↦ (G_circ t - G_star t) * (x : ℂ) ^ t) := by filter_upwards [(isOpen_lt Complex.continuous_im continuous_const).mem_nhds hs_im_neg] with t ht rw [hG t, show (Real.sign t.im : ℂ) = -1 by simp [Real.sign_of_neg ht]] ring refine MeromorphicAt.congr ?_ (h_eq.filter_mono nhdsWithin_le_nhds).symm exact ((hG_circ_mero s (l.RposBar_subset_R hs_RposBar)).sub (hG_star_mero s (l.RposBar_subset_R hs_RposBar))).mul (meromorphicAt_rpow (by linarith) s)