The Euler–Maclaurin representation equals for
ProvedZeta23_Zeta0EqZetaFor a natural number and , define the alternative zeta function (riemannZeta0) by the Euler–Maclaurin-type expression
where the term of the sum is (Lean's convention for ), so the sum is effectively over .
Statement. For every and every with and ,
where is Mathlib's riemannZeta. That is, the finite-sum-plus-integral representation analytically continues the Dirichlet series and agrees with the Riemann zeta function throughout the right half-plane away from the pole at .
This identity, in the module Zeta23.FromPNTPlus.ZetaBounds (ported from the PrimeNumberTheoremAnd project), lets growth estimates for be read off from the explicit representation: it is consumed by Zeta23.RvM.norm_riemannZeta_le_of_re_pos, the polynomial bound on used in the Riemann–von Mangoldt zero-counting part of the project.
import Batteries.Tactic.Lemma import Mathlib.Algebra.Order.Floor.Defs import Mathlib.Algebra.Order.Floor.Ring import Mathlib.Algebra.Order.Floor.Semiring import Mathlib.Analysis.Calculus.Deriv.Support import Mathlib.Analysis.Complex.CauchyIntegral import Mathlib.Analysis.Complex.Convex import Mathlib.Analysis.Complex.RealDeriv import Mathlib.Analysis.Complex.RemovableSingularity import Mathlib.Analysis.Distribution.SchwartzSpace.Deriv import Mathlib.Analysis.Fourier.FourierTransformDeriv import Mathlib.Analysis.InnerProductSpace.Basic import Mathlib.Analysis.Meromorphic.NormalForm import Mathlib.Analysis.Normed.Order.Lattice import Mathlib.Analysis.SpecialFunctions.Integrals.Basic import Mathlib.Analysis.SpecialFunctions.Log.Basic import Mathlib.Analysis.SpecialFunctions.Pow.Continuity import Mathlib.MeasureTheory.Function.Floor import Mathlib.MeasureTheory.Integral.IntegralEqImproper import Mathlib.MeasureTheory.Order.Group.Lattice import Mathlib.NumberTheory.AbelSummation import Mathlib.NumberTheory.Harmonic.Bounds import Mathlib.NumberTheory.LSeries.Nonvanishing import Mathlib.Order.Filter.ZeroAndBoundedAtFilter import Mathlib.Order.Interval.Set.Monotone import Mathlib.Tactic.Abel import Mathlib.Tactic.LinearCombinationPrime import Mathlib.Topology.ContinuousMap.Bounded.Basic import Definitions.Def_Zeta23_FromPNTPlus_EulerMaclaurin import Definitions.Def_Zeta23_FromPNTPlus_Fourier import Definitions.Def_Zeta23_FromPNTPlus_Rectangle import Definitions.Def_Zeta23_FromPNTPlus_ResidueCalcOnRectangles import Definitions.Def_Zeta23_FromPNTPlus_Sobolev import Definitions.Def_Zeta23_FromPNTPlus_ZetaBounds set_option lang.lemmaCmd true open Complex Topology Filter Interval Set Asymptotics local notation (name := riemannzeta) "ζ" => riemannZeta local notation (name := derivriemannzeta) "ζ'" => deriv riemannZeta local notation (name := riemannzeta0) "ζ₀" => riemannZeta0
theorem Zeta23_Zeta0EqZeta {N : ℕ} (N_pos : 0 < N) {s : ℂ} (reS_pos : 0 < s.re) (s_ne_one : s ≠ 1) :
ζ₀ N s = riemannZeta s := by sorry