Li(2) Bounds - Lightweight Interface #
This file provides the lightweight interface for li(2) bounds. It contains:
- Definitions of g(t) and li(2)
- Analytic lemmas (g_tendsto_one, g_bounded, g_pos, g_le_two, etc.)
- Statements of the certified bounds (proven in Li2Verified.lean)
Purpose #
This module is designed to be fast to compile (~seconds) and is what downstream projects like PNT+ should import. The heavy numerical verification that proves the bounds is in Li2Verified.lean, which takes ~20 minutes but is only needed for LeanCert's CI, not for users of the bounds.
Main Results #
g- The symmetric log combination g(t) = 1/log(1+t) + 1/log(1-t)li2- Definition of li(2) as ∫₀¹ g(t) dtg_tendsto_one- g(t) → 1 as t → 0⁺ (removable singularity)g_bounded- |g(t)| ≤ 2 for t ∈ (0, 1/2)g_pos,g_le_two- Positivity and upper bound on (0, 1)li2_lower- Lower bound: 1.039 ≤ li(2)li2_upper- Upper bound: li(2) ≤ 1.06
Verification Status #
The bounds li2_lower and li2_upper are marked with sorry in this file.
They are fully verified via interval arithmetic in Li2Verified.lean.
This separation allows downstream projects to use the bounds without
incurring the ~20 minute compilation cost of numerical verification.
Core Definitions #
Basic Properties #
g(t) → 1 as t → 0⁺ (the removable singularity)
Positivity and Global Upper Bound #
Integrability #
g is integrable on [0, 1].
g is integrable on any closed subinterval of (0, 1).
Crude Bounds (Analytic) #
Crude upper bound: li(2) ≤ 2. This follows from g(t) ≤ 2 on (0, 1).
Certified Bounds #
The following bounds are proven via interval arithmetic in Li2Verified.lean.
They are stated here with sorry to allow downstream projects to use them
without incurring the ~20 minute compilation cost of numerical verification.
The actual verification uses:
- Partition of [0, 1] into 7 subintervals
- Taylor model integration with 3000 partitions on [1/1000, 999/1000]
- Analytic bounds on tail intervals near 0 and 1
Sum of verified lower bounds: 1.03951 > 1.039 Sum of verified upper bounds: 1.0524 < 1.06
Certified lower bound: li(2) ≥ 1.039. Proven via interval arithmetic in Li2Verified.lean.
Certified upper bound: li(2) ≤ 1.06. Proven via interval arithmetic in Li2Verified.lean.