Abstract Hecke ring: full construction (HeckePair, double-coset quotient, 𝕋, convolution ring) - #77
Draft
CBirkbeck wants to merge 2 commits into
Draft
Abstract Hecke ring: full construction (HeckePair, double-coset quotient, 𝕋, convolution ring)#77CBirkbeck wants to merge 2 commits into
CBirkbeck wants to merge 2 commits into
Conversation
Port the complete abstract Hecke ring (Shimura, Introduction to the Arithmetic Theory of Automorphic Functions, Ch. 3) from AINTLIB: HeckePair (H, Delta), the double-coset quotient HeckeCoset, the Hecke ring 𝕋, its convolution product (Multiplication/Associativity) and Ring structure, the Hecke module, commutativity from an anti-involution, the degree map, and stabilizer/conjugation lemmas. 8 files, no sorry/axiom. Builds clean against mathlib v4.31.0. Lines wrapped to <=100 cols. Part of #75. Supersedes the definition-only draft #76. Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
… AddCommMonoid/AddCommGroup The Hecke ring type 𝕋 P Z, the Hecke module HeckeModule P Z, and their additive structure only need additive structure on the coefficients Z, not a full CommRing. Weaken the definitions and FunLike instances to [Zero Z], add AddCommMonoid instances for [AddCommMonoid Z], and state the AddCommGroup instances over [AddCommGroup Z]. The convolution product / Ring / Module layer over ℤ is unaffected (ℤ provides AddCommGroup). Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Abstract Hecke ring — full construction
Adds the complete construction of the abstract Hecke ring (à la Shimura, Introduction to the Arithmetic Theory of Automorphic Functions, Ch. 3) to
LeanBridge/ForMathlib/AbstractHeckeRing/. This supersedes the definition-only draft #76 and addresses the first item of #75.For an arithmetic pair
(H, Δ)withH ≤ Δ ≤ commensurator(H):HeckeRing.HeckePair, the double-coset quotientHeckeRing.HeckeCoset, and the Hecke ringHeckeRing.𝕋(Basic);Multiplication,Associativity), assembled into theRingstructure (Ring);Module), commutativity from an anti-involution (Commutativity), the degree map (Degree), and stabilizer/conjugation lemmas (StabConjugation).8 files, ~3100 lines, no
sorry/axiom. Ported from the AINTLIB project (projects/LeanModularForms/.../HeckeRIngs/AbstractHeckeRing), imports rewritten toLeanBridge.ForMathlib.*; imports are mathlib-only.Verification
lake build LeanBridge.ForMathlib.AbstractHeckeRing— builds clean against the pinned mathlibv4.31.0(1830 jobs, exit 0). No drift from thev4.31.0-rc2it was developed on./cleanup(file-level): already mathlib-clean — copyright + module docstrings throughout, no in-body dividers, noset_option, zeroλ/$/push_neg, nosorry/deprecations. The one fix applied was wrapping 36 over-long lines to ≤100 cols (line breaks only — no semantic/name/proof changes); build stayed green. Per-declaration golf was intentionally skipped to keep the port faithful to the AINTLIB source./mathlib-quality:mathlibableassessment — YES (add to mathlib)R(Γ,Δ)/ "Hecke algebra of a pair" exactly (free module onH\Δ/H, convolution product,(H,Δ)a Hecke pair) — Wikipedia, nLab.Mathlib.GroupTheory.DoubleCosetandMathlib.GroupTheory.Commensurablebut no Hecke algebra/ring/operator.(H, Δ)-Hecke-pair form is maximally general (more general than the "commensurated subgroup" form);𝕋 P Zis already over an arbitrary[CommRing Z]. Recommended refinement before a mathlib PR: generalise the ring structure fromZ = ℤto an arbitrary commutative ringR(the module is already general; onlyMul/Ringare ℤ-pinned). MODERATE re-proof — a/generalisefollow-up.𝕋is a sealeddefoverFinsupp, which correctly prevents the convolutionMulfrom colliding withFinsupp's pointwiseMul.Mathlib/GroupTheory/HeckeRing/(orMathlib/RepresentationTheory/).Part of #75.