Ported for Lean Pool from PrimeNumberTheoremAnd commit 0c7abf7be7765dc5ffd21afc1c37b018199ec3c9, via wewantmoore commit d59bd80ea93fabb9faf769e790ab47692645e022 (both Apache-2.0). The port adds the MooreBound namespace and updates Mathlib APIs and proof style. Wiener and Consequences retain the PNT and prime-interval dependency closure; unrelated later developments and LeanArchitect annotations are omitted.
A function with n continuous derivatives and compact support.
- toFun : ℝ → E
The underlying compactly supported function.
- h2 : HasCompactSupport self.toFun
Instances For
A compactly supported C² cutoff equal to one on [-1,1] and zero outside (-2,2).
- h2 : HasCompactSupport self.toFun
Instances For
A Cⁿ function whose derivatives through order n are integrable.
- toFun : ℝ → E
The underlying function with integrable derivatives.
- integrable ⦃k : ℕ⦄ : k ≤ n → MeasureTheory.Integrable (iteratedDeriv k self.toFun) MeasureTheory.volume
Instances For
Complex C² functions with integrable derivatives through order two.
Equations
Instances For
Precompose a function with multiplication by the reciprocal scale.
Equations
- MooreBound.funscale g R x = g (R⁻¹ • x)
Instances For
Equations
Pointwise negation preserves smoothness and compact support.
Instances For
Equations
- MooreBound.CS.instNeg = { neg := MooreBound.CS.neg }
Multiply a compactly supported smooth function by a real scalar.
Instances For
Equations
- MooreBound.CS.instHSMulReal = { hSMul := MooreBound.CS.smul }
Rescale a compactly supported function; use the zero function at scale zero.
Equations
Instances For
Equations
- MooreBound.trunc.instCoeFunForallReal = { coe := fun (f : MooreBound.trunc) => f.toFun }
Equations
Equations
Equations
- MooreBound.W1.instSub = { sub := MooreBound.W1.sub }
A Schwartz function has integrable derivatives of every finite order.
Equations
- MooreBound.W1.ofSchwartz f = { toFun := ⇑f, smooth := ⋯, integrable := ⋯ }
Instances For
Equations
Equations
Regard a compactly supported C² function as an element of W21.
Equations
- MooreBound.W21.ofCS2 f = { toFun := f.toFun, smooth := ⋯, integrable := ⋯ }
Instances For
Equations
Equations
- MooreBound.W21.instHMulCSOfNatNatComplex = { hMul := fun (g : MooreBound.CS 2 ℂ) (f : MooreBound.W21) => { toFun := g.toFun * f.toFun, h1 := ⋯, h2 := ⋯ } }
Equations
- MooreBound.W21.instHMulCSOfNatNatRealComplex = { hMul := fun (g : MooreBound.CS 2 ℝ) (f : MooreBound.W21) => { toFun := fun (x : ℝ) => ↑(g.toFun x), h1 := ⋯, h2 := ⋯ } * f }