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.
theorem
Asymptotics.IsEquivalent.mooreBoundSubLittleO
{α : Type u_1}
{β : Type u_2}
[NormedAddCommGroup β]
{u v w : α → β}
{l : Filter α}
(huv : IsEquivalent l u v)
(hwu : (u - w) =o[l] v)
:
IsEquivalent l w v
theorem
MooreBound.WeakPNT' :
Filter.Tendsto (fun (N : ℕ) => (∑ n ≤ N, ArithmeticFunction.vonMangoldt n) / ↑N) Filter.atTop (nhds 1)
An alternate form of the Weak PNT.
theorem
MooreBound.chebyshev_asymptotic' :
∃ (f : ℝ → ℝ),
(∀ ε > 0, f =o[Filter.atTop] fun (t : ℝ) => ε * t) ∧ (∀ (x : ℝ), 2 ≤ x → MeasureTheory.IntegrableOn f (Set.Icc 2 x) MeasureTheory.volume) ∧ ∀ (x : ℝ), Chebyshev.theta x = x + f x
theorem
MooreBound.chebyshev_asymptotic'' :
∃ (f : ℝ → ℝ),
(∀ ε > 0, f =o[Filter.atTop] fun (x : ℝ) => ε) ∧ (∀ (x : ℝ), 2 ≤ x → MeasureTheory.IntegrableOn f (Set.Icc 2 x) MeasureTheory.volume) ∧ ∀ x > 0, Chebyshev.theta x = x + x * f x
theorem
MooreBound.bound_f_second_term
(f : ℝ → ℝ)
(hf : Filter.Tendsto f Filter.atTop (nhds 0))
(δ : ℝ)
(hδ : δ > 0)
:
theorem
MooreBound.x_log_x_atTop :
Filter.Tendsto (fun (x : ℝ) => x / Real.log x) Filter.atTop Filter.atTop
theorem
MooreBound.tendsto_by_squeeze
(ε : ℝ)
(hε : ε > 0)
:
Filter.Tendsto (fun (x : ℝ) => ↑⌊(1 + ε) * x⌋₊.primeCounting - ↑⌊x⌋₊.primeCounting) Filter.atTop Filter.atTop