First-order Euler–Maclaurin summation formula on an interval
Provedsum_eq_int_derivasymptoticseuler-maclaurinpntreal-analysisriemann-zeta
Let and let be real numbers. Assume is differentiable on the closed interval (at every point it has derivative ), and that is continuous on . Then the sum of over the integers with (natural-number floors) satisfies
This is the Euler--Maclaurin formula to first order (equivalently, Abel summation with the sawtooth weight ): it converts a sum over integers into an integral plus boundary corrections plus a sawtooth-weighted integral of the derivative.
It is the engine behind the truncated zeta representation : applying it to over dyadic-type ranges and letting produces the analytic continuation of to together with the explicit error terms from which all the PNT+ growth bounds on and in the critical strip are derived.
Preamble
import Batteries.Tactic.Lemma import Mathlib.MeasureTheory.Function.Floor import Mathlib.MeasureTheory.Order.Group.Lattice import Mathlib.NumberTheory.Harmonic.Bounds import Mathlib.NumberTheory.LSeries.Nonvanishing 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.Integral.IntegralEqImproper import Mathlib.NumberTheory.AbelSummation 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_EulerMaclaurin_defs import Definitions.Def_Fourier_defs import Definitions.Def_Rectangle_defs import Definitions.Def_ResidueCalcOnRectangles_defs import Definitions.Def_ZetaBounds_defs set_option lang.lemmaCmd true open Complex Topology Filter Interval Set Asymptotics local notation (name := riemannzeta) "ζ" => riemannZeta local notation (name := derivriemannzeta) "ζ'" => deriv riemannZeta -- Main theorem: if functions agree on a punctured set, their derivatives agree there too /- New two theorems to be proven -/ -- Alternative cleaner proof using more direct approach /- The set should be open so that f'(p) = O(1) for all p ∈ U -/ /-- We use `ζ` to denote the Rieman zeta function and `ζ₀` to denote the alternative Rieman zeta function. -/ local notation (name := riemannzeta0) "ζ₀" => riemannZeta0
Formal statement
theorem sum_eq_int_deriv {φ : ℝ → ℂ} {a b : ℝ} (apos : 0 ≤ a) (a_lt_b : a < b)
(φDiff : ∀ x ∈ [[a, b]], HasDerivAt φ (deriv φ x) x)
(derivφCont : ContinuousOn (deriv φ) [[a, b]]) :
∑ n ∈ Finset.Ioc ⌊a⌋₊ ⌊b⌋₊, φ n =
(∫ x in a..b, φ x) + (⌊b⌋₊ + 1 / 2 - b) * φ b - (⌊a⌋₊ + 1 / 2 - a) * φ a
- ∫ x in a..b, (⌊x⌋ + 1 / 2 - x) * deriv φ x := by sorrySource