Weighted argument principle on a rectangle, with poles:
ProvedZeta23.Analytic.rectangleIntegralPrime_mul_logDeriv_of_polesLet with and , and let be the closed rectangle they span. Let be disjoint finite sets of complex numbers with every interior to , and let satisfy:
- is analytic on a neighbourhood of every point of , and is analytic on a neighbourhood of every point of ;
- does not vanish on the boundary of the rectangle;
- on , the zeros of are exactly the elements of , and ;
- at each , has a pole-type singularity of order : for some , as (along the punctured neighbourhood filter).
Statement. Writing for the normalized rectangle contour integral (RectangleIntegral'),
where is the order of vanishing of at (analyticOrderNatAt).
This weighted argument principle with poles is the central contour-integration tool of the project, in the module Zeta23.Analytic.RectangleLogDeriv. It is consumed by Zeta23.RvM.rectangleIntegralPrime_logDeriv_completedZeta_eq_Ncount — the contour-integral evaluation behind the Riemann–von Mangoldt formula for , applied to the completed zeta function with its poles at and — and by Zeta23.WeilEF.rectangle_identity, the contour identity underlying the Weil-type explicit formula.
import Mathlib.Analysis.Analytic.Order import Mathlib.Analysis.Calculus.LogDeriv import Mathlib.Analysis.Complex.CauchyIntegral import Mathlib.Analysis.Complex.Convex import Mathlib.Analysis.Complex.RemovableSingularity import Mathlib.Analysis.InnerProductSpace.Basic import Mathlib.Analysis.Meromorphic.NormalForm import Mathlib.Analysis.Normed.Order.Lattice import Mathlib.Analysis.SpecialFunctions.Integrals.Basic import Mathlib.Order.Interval.Set.Monotone import Mathlib.Tactic.Abel import Mathlib.Tactic.LinearCombinationPrime import Definitions.Def_Extra_Zeta23_Analytic_RectangleLogDeriv import Definitions.Def_Zeta23_Analytic_RectangleLogDeriv import Definitions.Def_Zeta23_FromPNTPlus_Rectangle import Definitions.Def_Zeta23_FromPNTPlus_ResidueCalcOnRectangles open Complex Set Topology Filter Asymptotics Real open Zeta23 open Analytic
theorem Zeta23.Analytic.rectangleIntegralPrime_mul_logDeriv_of_poles {f g : ℂ → ℂ} {z w : ℂ} (hre : z.re ≤ w.re)
(him : z.im ≤ w.im) (Z P : Finset ℂ) (hZP : Disjoint Z P)
(hPint : ∀ p ∈ P, Rectangle z w ∈ 𝓝 p)
(hf : AnalyticOnNhd ℂ f (Rectangle z w \ (P : Set ℂ)))
(hg : AnalyticOnNhd ℂ g (Rectangle z w))
(hborder : ∀ s ∈ RectangleBorder z w, f s ≠ 0)
(hZ : ∀ s ∈ Rectangle z w \ (P : Set ℂ), f s = 0 ↔ s ∈ Z) (hZsub : (Z : Set ℂ) ⊆ Rectangle z w)
(m : ℂ → ℕ)
(hpole : ∀ p ∈ P, ∃ c : ℂ, c ≠ 0 ∧ Tendsto (fun s => (s - p) ^ m p * f s) (𝓝[≠] p) (𝓝 c)) :
RectangleIntegral' (fun s => g s * logDeriv f s) z w
= ∑ ρ ∈ Z, (analyticOrderNatAt f ρ : ℂ) * g ρ - ∑ p ∈ P, (m p : ℂ) * g p := by sorry