Skip to content

feat(ForMathlib): Lipschitz cover of the normLeOne region frontier - #9

Closed
CBirkbeck wants to merge 1 commit into
masterfrom
normleone-lipschitz
Closed

feat(ForMathlib): Lipschitz cover of the normLeOne region frontier#9
CBirkbeck wants to merge 1 commit into
masterfrom
normleone-lipschitz

Conversation

@CBirkbeck

Copy link
Copy Markdown
Owner

Adds CebotarevDensity/ForMathlib/NormLeOneLipschitz.lean — a Lipschitz cover of the frontier
of the normLeOne fundamental region of a number field's canonical (mixed) embedding.
Self-contained (imports only mathlib's NumberField.…CanonicalEmbedding.NormLeOne); wired into the
umbrella CebotarevDensity import.

Contents

The headline results are normLeOne_frontier_lipschitz_cover and its mixed-space / index variants:
the boundary ∂(normLeOne K) is covered by finitely many Lipschitz images of the unit cube
[0,1]^{d-1} (d = #InfinitePlace K), with explicit Lipschitz constants. Supporting API: a
clampUnit retraction onto [0,1]^ι (1-Lipschitz), ContDiff charts of the region's faces
(expMapBasis / faceMap*), a phase-extraction Lipschitz bound (lipschitzWith_phase,
exists_phase_mem_Icc_mul_exp), and the liftToMixed assembly.

mathlib status (/mathlibable)

mathlib has the region NumberField.mixedEmbedding.normLeOne (which this file imports) but not
the Lipschitz structure of its frontier. That cover is exactly the geometric input the effective
lattice-point count (exists_card_inter_smul_lattice_sub_volume_mul_pow_le) consumes, so this is an
upstreaming candidate extending mathlib's canonical-embedding API. /generalise: maximal — the
clampUnit helpers are stated for an arbitrary Fintype ι, and the rest is intrinsically about a
NumberField K (already a variable).

Builds green on the v4.31.0-rc1 / mathlib-master pin (identical to master's pin).

🤖 Generated with Claude Code

Add CebotarevDensity/ForMathlib/NormLeOneLipschitz.lean: the frontier of the normLeOne fundamental
region of a number field's canonical (mixed) embedding is covered by finitely many Lipschitz images
of the unit cube [0,1]^{d-1}, with explicit constants (normLeOne_frontier_lipschitz_cover and mixed/
index variants). Supporting API: a 1-Lipschitz clampUnit retraction, ContDiff face charts, a phase-
extraction Lipschitz bound, and the liftToMixed assembly. Self-contained (imports only mathlib's
NormLeOne) and wired into the umbrella CebotarevDensity import.

Upstreaming candidate: mathlib has the region normLeOne but not the Lipschitz structure of its
frontier -- the geometric input for effective lattice-point counting. Stated at full generality.

Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
@CBirkbeck

Copy link
Copy Markdown
Owner Author

Superseded by the stacked split #19#28 (10 slices of ~50 LOC each, per the review request for shorter PRs). Same NormLeOneLipschitz.lean, built up incrementally:

Each slice builds green and is anchored by a public result. Closing this in favour of that stack.

@CBirkbeck CBirkbeck closed this Jun 18, 2026
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant