Definitions/Def_ModularCurve_JOnePOpsV3.lean
Hecke and diamond operators on a Néron special-fibre datum
The ambient datum is ModularCurve.JOneP.NeronSpecialFibreGeom p: three abelian groups J^0_s, J_I, J_E, an additive subgroup T \subseteq J^0_s (the toric part), and an additive map \pi \colon J^0_s \to J_I \times J_E which is required to be surjective with kernel exactly T; so J^0_s/T \cong J_I \times J_E. Over such a datum (with p nonzero), NeronSpecialFibreOpsV3 is a structure bundling operators together with the relations they satisfy, each relation being a field of the structure.
The data fields are: for every natural number \ell, additive endomorphisms \mathrm{hecke}\,\ell of J^0_s, \mathrm{heckeI}\,\ell of J_I and \mathrm{heckeE}\,\ell of J_E; two group homomorphisms \mathrm{diamondP}, \mathrm{inertia} \colon (\mathbb{Z}/p)^\times \to \operatorname{AddAut}(J^0_s); a family \mathrm{diamondN} \colon \mathbb{N} \to \operatorname{End}(J^0_s) and a family \mathrm{diamondNI} \colon \mathbb{N} \to \operatorname{End}(J_I); an additive automorphism w of J^0_s; and additive endomorphisms \mathrm{verI} of J_I and \mathrm{frobE} of J_E.
The axiom fields are: for \ell \neq p, \pi intertwines the Hecke operators, \pi(\mathrm{hecke}\,\ell\,(x)) = (\mathrm{heckeI}\,\ell\,(\pi(x)_1), \mathrm{heckeE}\,\ell\,(\pi(x)_2)); the endomorphisms \mathrm{hecke}\,\ell of J^0_s commute with one another; each \mathrm{diamondP}\,b and each \mathrm{inertia}\,b commutes with every \mathrm{hecke}\,\ell; and both \mathrm{diamondP}\,b and \mathrm{inertia}\,b fix every element of T pointwise. No field relates \mathrm{hecke}\,p to \mathrm{verI} and \mathrm{frobE}, so the Eichler–Shimura relation at p is not part of this axiomatisation; likewise w, \mathrm{diamondN} and \mathrm{diamondNI} are carried as data with no constraints imposed here.
Relation to Mathlib
Mathlib has no axiomatisation of the special fibre of a Jacobian at a prime of bad reduction; this structure is the project's own, built only from Mathlib's AddMonoidHom, AddEquiv, AddSubgroup and the group AddAut (the latter via the project's Mathlib-compatibility module).
Where it is used
The structure provides the abstract interface through which the level-p part of the argument (Ribet-style level lowering at p, and the descent for U_p on the norm-free part of the special fibre) manipulates Hecke, diamond and inertia operators on the special fibre at p of the Néron model of the Jacobian of the relevant modular curve, without reference to the geometry that produces them.
References
- P. Deligne and M. Rapoport, Les schémas de modules de courbes elliptiques, in: Modular Functions of One Variable II, Lecture Notes in Mathematics 349, Springer, 1973, 143–316
- K. A. Ribet, On modular representations of \mathrm{Gal}(\overline{\mathbb{Q}}/\mathbb{Q}) arising from modular forms, Inventiones Mathematicae 100 (1990), 431–476
References are suggested automatically and have not been individually verified.
English text generated automatically from the Lean source; the Lean statement is authoritative.
- 38 lines
- 17 declarations
- used in the statements of 18 theorems and imported by 19 proofs
- imports 2 definition modules
Source file: Definitions/Def_ModularCurve_JOnePOpsV3.lean
Imported by
- no other definition module
Declarations
- structure
ModularCurve.JOneP.NeronSpecialFibreOpsV3 - field
ModularCurve.JOneP.NeronSpecialFibreOpsV3.hecke - field
ModularCurve.JOneP.NeronSpecialFibreOpsV3.heckeI - field
ModularCurve.JOneP.NeronSpecialFibreOpsV3.heckeE - field
ModularCurve.JOneP.NeronSpecialFibreOpsV3.proj_hecke - field
ModularCurve.JOneP.NeronSpecialFibreOpsV3.diamondP - field
ModularCurve.JOneP.NeronSpecialFibreOpsV3.diamondN - field
ModularCurve.JOneP.NeronSpecialFibreOpsV3.w - field
ModularCurve.JOneP.NeronSpecialFibreOpsV3.inertia - field
ModularCurve.JOneP.NeronSpecialFibreOpsV3.verI - field
ModularCurve.JOneP.NeronSpecialFibreOpsV3.frobE - field
ModularCurve.JOneP.NeronSpecialFibreOpsV3.diamondNI - field
ModularCurve.JOneP.NeronSpecialFibreOpsV3.hecke_comm - field
ModularCurve.JOneP.NeronSpecialFibreOpsV3.diamondP_hecke - field
ModularCurve.JOneP.NeronSpecialFibreOpsV3.inertia_hecke - field
ModularCurve.JOneP.NeronSpecialFibreOpsV3.diamondP_torus - field
ModularCurve.JOneP.NeronSpecialFibreOpsV3.inertia_torus
Source
import Mathlib import Definitions.Def_ModularCurve_JOnePGeom import Definitions.Def_Compat_Mathlib430 set_option autoImplicit false namespace ModularCurve namespace JOneP variable {p : ℕ} structure NeronSpecialFibreOpsV3 [NeZero p] (G : NeronSpecialFibreGeom p) where hecke : ℕ → (G.J0s →+ G.J0s) heckeI : ℕ → (G.JI →+ G.JI) heckeE : ℕ → (G.JE →+ G.JE) proj_hecke : ∀ (ℓ : ℕ) (x : G.J0s), ℓ ≠ p → G.proj (hecke ℓ x) = (heckeI ℓ (G.proj x).1, heckeE ℓ (G.proj x).2) diamondP : (ZMod p)ˣ →* AddAut G.J0s diamondN : ℕ → (G.J0s →+ G.J0s) w : G.J0s ≃+ G.J0s inertia : (ZMod p)ˣ →* AddAut G.J0s verI : G.JI →+ G.JI frobE : G.JE →+ G.JE diamondNI : ℕ → (G.JI →+ G.JI) hecke_comm : ∀ ℓ ℓ' : ℕ, (hecke ℓ).comp (hecke ℓ') = (hecke ℓ').comp (hecke ℓ) diamondP_hecke : ∀ (b : (ZMod p)ˣ) (ℓ : ℕ) (x : G.J0s), diamondP b (hecke ℓ x) = hecke ℓ (diamondP b x) inertia_hecke : ∀ (b : (ZMod p)ˣ) (ℓ : ℕ) (x : G.J0s), inertia b (hecke ℓ x) = hecke ℓ (inertia b x) diamondP_torus : ∀ (b : (ZMod p)ˣ) (x : G.J0s), x ∈ G.torus → diamondP b x = x inertia_torus : ∀ (b : (ZMod p)ˣ) (x : G.J0s), x ∈ G.torus → inertia b x = x end JOneP end ModularCurve
Statements phrased using this module (18)
- Hecke, diamond and inertia operators on the Néron special fibre of J₁(Mp)
ModularCurve.XOneP.exists_neronSpecialFibreOpsV3_of_heckeHom_galoisHom_of_representsRelSubPic_of_isAlgebraic_twoChartModel_x1_mul_of_baseChangeIso_of_abelJacobi_of_gaussReading3,339 below · depth 21 - Level monotonicity and component-wise compatibility of the specialisation family
ModularCurve.XOneP.normFreePartFamily_dom_mono_and_toPic0Pair_sp_eq_of_le_twoChartModel_x1_mul_opsV30 below · depth 21 - Uₚ acts through an automorphism on the étale Igusa component
ModularCurve.XOneP.normFreePartFamily_exists_addEquiv_toPic0Pair_sp_heckeOperatorOneBar_snd_eq_twoChartModel_x1_mul4,670 below · depth 21 - Diamond action on first components of specialised norm-free classes
ModularCurve.XOneP.normFreePartFamily_exists_addMonoidHom_toPic0Pair_sp_diamondOneBar_fst_eq_twoChartModel_x1_mul2,964 below · depth 21 - Decomposition group acts on second Igusa projection of norm-free points
ModularCurve.XOneP.normFreePartFamily_exists_addMonoidHom_toPic0Pair_sp_smul_snd_eq_of_mem_decompositionSubgroup_twoChartModel_x1_mul3,011 below · depth 21 - Specialisation datum for the norm-free part of J₁(Mp)
ModularCurve.XOneP.normFreePartFamily_exists_dom_sp_interface_twoChartModel_x1_mul_opsV32 below · depth 21 - Inertia-invariant functionals annihilate Tate vectors with vanishing Igusa specialisation
ModularCurve.XOneP.normFreePartFamily_forall_apply_eq_zero_of_tateModule_toPic0Pair_sp_eq_zero_twoChartModel_x1_mul2,215 below · depth 21 - Level independence of the specialisation family on J₁(Mp)
ModularCurve.XOneP.normFreePartFamily_level_pushout_and_sp_eq_twoChartModel_x1_mul_opsV30 below · depth 21 - Inertia-fixed norm-free classes lie in the specialisation domain
ModularCurve.XOneP.normFreePartFamily_mem_dom_of_forall_smul_eq_self_twoChartModel_x1_mul_opsV32 below · depth 21 - Trivial Weil pairing for vanishing glued specialisations
ModularCurve.XOneP.normFreePartFamily_pairing_eq_one_of_toPic0Pair_sp_eq_zero_twoChartModel_x1_mul4,591 below · depth 21 - Inertia twisted by a diamond fixes the second Igusa component
ModularCurve.XOneP.normFreePartFamily_toPic0Pair_sp_diamondOneBar_smul_snd_eq_of_mem_inertiaSubgroupIn_twoChartModel_x1_mul_opsV31,268 below · depth 21 - q-expansion pin of the specialisation on the Gauss component
ModularCurve.XOneP.normFreePartFamily_toPic0Pair_sp_fst_eq_pic0Mk_conorm_laurentPlaceReduction_twoChartModel_x1_mul1,337 below · depth 21 - Frobenius acts coefficientwise on the first Igusa component
ModularCurve.XOneP.normFreePartFamily_toPic0Pair_sp_fst_smul_of_isFrobeniusAt_twoChartModel_x1_mul2,332 below · depth 21 - Uₚ acts as p Fr⁻¹ on norm-free specialisations
ModularCurve.XOneP.normFreePartFamily_toPic0Pair_sp_heckeOperatorOneBar_fst_eq_natCast_smul_frob_inv_smul_twoChartModel_x1_mul3,359 below · depth 21 - Triangularity of Uₚ on specialisations of the norm-free part
ModularCurve.XOneP.normFreePartFamily_toPic0Pair_sp_heckeOperatorOneBar_snd_eq_zero_twoChartModel_x1_mul3,359 below · depth 21 - Frobenius acts coefficientwise on the first Igusa-component specialisation
ModularCurve.XOneP.normFreePartFamily_toPic0Pair_sp_smul_fst_eq_frob_smul_of_isFrobeniusAt_twoChartModel_x1_mul0 below · depth 21 - Inertia fixes the cuspidal component of reductions of norm-free points
ModularCurve.XOneP.normFreePartFamily_toPic0Pair_sp_smul_fst_eq_of_mem_inertiaSubgroupIn_twoChartModel_x1_mul1,268 below · depth 21 - Inertia fixing μₚ preserves the second Igusa component of specialisations
ModularCurve.XOneP.normFreePartFamily_toPic0Pair_sp_smul_snd_eq_of_mem_inertiaSubgroupIn_of_forall_pow_eq_one_twoChartModel_x1_mul_opsV31 below · depth 21