Definitions/Def_ModularCurve_JZeroGoodReductionV2.lean
Good-reduction specialisation data for at a place above
Fix a valuation subring A of \overline{\mathbb{Q}}, a prime \ell (with proof hℓ), and a level N \neq 0, and assume the project's Hecke algebra HeckeAlg acts on both JZero N and on \mathrm{Pic}^0 of the function field modularFunctionFieldC (ResidueField A) N over the residue field of A. The structure JZeroGoodReductionSpecialization bundles, as data and fields, a specialisation situation in characteristic \ell: an additive group homomorphism sp from JZero N to that \mathrm{Pic}^0, an additive endomorphism F of the target (the intended geometric Frobenius), and five properties asserted as structure fields — hsurj, surjectivity of sp; hecke_comm, \mathrm{sp}(T\cdot x) = T\cdot \mathrm{sp}(x) for every T \in HeckeAlg; inertia_comm, \mathrm{sp}(\sigma\cdot x) = \mathrm{sp}(x) for every \sigma in A.inertiaSubgroupIn ℚ; frobenius_comm, \mathrm{sp}(\sigma\cdot x) = F(\mathrm{sp}(x)) for every \sigma \in \mathrm{Gal}(\overline{\mathbb{Q}}/\mathbb{Q}) satisfying A.IsFrobeniusAt σ ℓ; and injective_torsion, injectivity of sp on p-power torsion for every prime p \neq \ell (explicitly: if p^n\cdot x = 0 for some n and \mathrm{sp}(x)=0 then x=0). The primality guard on p matters: without it the case p = 0 would force sp to be injective outright. A final field sfr asserts the project's predicate SpecialFibreRelation ℓ hℓ F for this F (the intended Eichler–Shimura relation); that predicate, like IsSpecialization, JZero, Pic0, modularFunctionFieldC and heckeGen, is defined in the imported project modules. Nothing in the structure refers to a Néron model or to reduction of curves; the geometric content is carried entirely by the assumed fields.
Three small lemmas follow: hgen, that the kernel of sp is stable under each Hecke generator heckeGen q; toIsSpecialization, extracting from the bundle the project's predicate IsSpecialization p (JZero N) … A ℓ D.sp D.F for any prime p \neq \ell; and toSpecializationExistsBody, the conjunction of that predicate with SpecialFibreRelation. Two local instances supply decidable equality on the residue field (classically) and the residue-field algebra structure on the modular function field.
Relation to Mathlib
Mathlib supplies the ambient notions used (ValuationSubring, AlgebraicClosure ℚ, residue fields, Galois group actions); the Jacobian JZero, the degree-zero Picard group of a function field, the Hecke algebra and the specialisation and special-fibre predicates are all the project's own definitions from the imported modules.
Where it is used
This bundle is the interface through which the characteristic-\ell reduction of J_0(N) enters the argument: a term of this structure is what later modules consume to run the Eichler–Shimura/Frobenius comparison on \ell-torsion in the Galois representations attached to J_0(N), on the route towards level lowering and Ribet's theorem.
References
- S. Bosch, W. Lütkebohmert, M. Raynaud, Néron Models, Ergebnisse der Mathematik und ihrer Grenzgebiete 21, Springer, 1990
- H. Darmon, F. Diamond and R. Taylor, Fermat's Last Theorem, in: Current Developments in Mathematics 1995, International Press, 1995, 1–154
- 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.
- 86 lines
- 13 declarations
- used in the statements of 6 theorems and imported by 6 proofs
- imports 4 definition modules
Source file: Definitions/Def_ModularCurve_JZeroGoodReductionV2.lean
Imports
Imported by
Declarations
- structure
ModularCurve.JZeroGoodReductionSpecialization - field
ModularCurve.JZeroGoodReductionSpecialization.sp - field
ModularCurve.JZeroGoodReductionSpecialization.F - field
ModularCurve.JZeroGoodReductionSpecialization.hsurj - field
ModularCurve.JZeroGoodReductionSpecialization.hecke_comm - field
ModularCurve.JZeroGoodReductionSpecialization.inertia_comm - field
ModularCurve.JZeroGoodReductionSpecialization.frobenius_comm - field
ModularCurve.JZeroGoodReductionSpecialization.injective_torsion - field
ModularCurve.JZeroGoodReductionSpecialization.sfr - field
ModularCurve.JZeroGoodReductionSpecialization.J' - theorem
ModularCurve.JZeroGoodReductionSpecialization.hgen - theorem
ModularCurve.JZeroGoodReductionSpecialization.toIsSpecialization - theorem
ModularCurve.JZeroGoodReductionSpecialization.toSpecializationExistsBody
Source
import Mathlib import Definitions.Def_ModularCurve_HeckeModule import Definitions.Def_ModularCurve_SpecializationWitness import Definitions.Def_ModularCurve_JqCoeff import Definitions.Def_EllipticCurve_FrobeniusTrace set_option autoImplicit false noncomputable section open ModularCurve AlgebraicCurve IsLocalRing namespace ModularCurve local notation "Qbar" => AlgebraicClosure ℚ variable {A : ValuationSubring Qbar} {ℓ : ℕ} {hℓ : ℓ.Prime} {N : ℕ} [NeZero N] noncomputable local instance instDecEqResidueFieldF3nrp : DecidableEq (ResidueField A) := Classical.decEq _ set_option synthInstance.maxHeartbeats 80000 in noncomputable local instance instAlgebraResidueFieldModularFunctionFieldCF3nrp : Algebra (ResidueField A) (modularFunctionFieldC (ResidueField A) N) := inferInstance variable [Module HeckeAlg (JZero N)] variable [Module HeckeAlg (Pic0 (ResidueField A) (modularFunctionFieldC (ResidueField A) N))] variable (A) (ℓ) (hℓ) (N) in structure JZeroGoodReductionSpecialization where sp : JZero N →+ Pic0 (ResidueField A) (modularFunctionFieldC (ResidueField A) N) F : Pic0 (ResidueField A) (modularFunctionFieldC (ResidueField A) N) →+ Pic0 (ResidueField A) (modularFunctionFieldC (ResidueField A) N) hsurj : Function.Surjective sp hecke_comm : ∀ (T : HeckeAlg) (x : JZero N), sp (T • x) = T • sp x inertia_comm : ∀ σ ∈ A.inertiaSubgroupIn ℚ, ∀ x : JZero N, sp (σ • x) = sp x frobenius_comm : ∀ σ : Qbar ≃ₐ[ℚ] Qbar, A.IsFrobeniusAt σ ℓ → ∀ x : JZero N, sp (σ • x) = F (sp x) injective_torsion : ∀ (p : ℕ), p.Prime → p ≠ ℓ → ∀ (x : JZero N), (∃ n : ℕ, p ^ n • x = 0) → sp x = 0 → x = 0 sfr : SpecialFibreRelation (J' := Pic0 (ResidueField A) (modularFunctionFieldC (ResidueField A) N)) ℓ hℓ F namespace JZeroGoodReductionSpecialization theorem hgen (D : JZeroGoodReductionSpecialization A ℓ hℓ N) (q : Nat.Primes) (a : JZero N) (ha : D.sp a = 0) : D.sp (heckeGen q • a) = 0 := by rw [D.hecke_comm, ha, smul_zero] theorem toIsSpecialization (D : JZeroGoodReductionSpecialization A ℓ hℓ N) {p : ℕ} (hp : p.Prime) (hpℓ : p ≠ ℓ) : IsSpecialization (K := ℚ) (L := Qbar) p (JZero N) (Pic0 (ResidueField A) (modularFunctionFieldC (ResidueField A) N)) A ℓ D.sp D.F where hecke_comm := D.hecke_comm inertia_comm := D.inertia_comm frobenius_comm := D.frobenius_comm injective_torsion := fun x hx hker => D.injective_torsion p hp hpℓ x hx hker theorem toSpecializationExistsBody (D : JZeroGoodReductionSpecialization A ℓ hℓ N) {p : ℕ} (hp : p.Prime) (hpℓ : p ≠ ℓ) : IsSpecialization (K := ℚ) (L := Qbar) p (JZero N) (Pic0 (ResidueField A) (modularFunctionFieldC (ResidueField A) N)) A ℓ D.sp D.F ∧ SpecialFibreRelation (J' := Pic0 (ResidueField A) (modularFunctionFieldC (ResidueField A) N)) ℓ hℓ D.F := ⟨D.toIsSpecialization hp hpℓ, D.sfr⟩ end JZeroGoodReductionSpecialization end ModularCurve end
Statements phrased using this module (6)
- Good-reduction specialisation of J₀(p) at ℓ with four predicates
ModularCurve.exists_jZeroGoodReductionSpecialization_doorPredicates2,177 below · depth 8 - Mazur's specialisation input from per-prime good reduction
ModularCurve.mazurQuotientSpecialization_heckeModuleBar_of_doorV20 below · depth 8 - Good-reduction specialisation datum for J₀(N), N prime
ModularCurve.CharPModel.FibreModel.exists_jZeroGoodReductionSpecialization_sp_eq_spPic0_of_prime1,099 below · depth 9 - Specialization is surjective on q-primary torsion, q≠ℓ
ModularCurve.JZeroGoodReductionSpecialization.torsBijFor_of_charP_of_not_dvd1,781 below · depth 9 - Torsion of Pic⁰ of the modular function field in characteristic ℓ
ModularCurve.fTorsionFor_pic0_residueField_modularFunctionFieldC161 below · depth 9 - Special-fibre n-torsion is finite and bounded by generic torsion
ModularCurve.torsionCard_le_of_goodReduction_of_charP_of_not_dvd1,780 below · depth 10