Definitions/Def_ModularCurve_JZeroNeronTorsionSheafV4.lean
Fppf torsion-sheaf datum for Eisenstein torsion of
Two abelian subgroups of J_0(p) are introduced first. For a prime p and natural numbers q,m, eisensteinTorsionBar p q m is the subgroup of elements of JZero p annihilated by every element of the m-th power of eisensteinMaximalIdeal p q, the ideal of the Hecke algebra HeckeAlg consisting of those operators whose value under the Eisenstein character \mathrm{HeckeAlg}\to\mathbb Z at level p lies in (q); the action used is the Hecke module structure heckeModuleBar p. For a valuation subring A of \overline{\mathbb Q} lying over p, toricEisensteinPart p q A hA m is the intersection of that subgroup with jZeroToricTorsion p A (q ^ m), i.e. with the set of q^m-torsion points of the form e\cdot y with y invariant under the inertia subgroup of A, e being eisensteinNumerator p.
The structure JZeroNeronTorsionSheaf p q A hA, for primes p,q and such an A, packages: a family \mathcal J_m of abelian sheaves on the small fppf site of \operatorname{Spec}\mathbb Z, together with flat finite-type Hopf \mathbb Z-algebras H_m and additive identifications, natural in U, of the sections of \mathcal J_m over an fppf \operatorname{Spec}\mathbb Z-scheme U with the convolution group of \mathbb Z-algebra maps H_m\to\Gamma(U,\mathcal O); bijections of the \overline{\mathbb Q}-points of H_m with eisensteinTorsionBar p q m and of its A-points with toricEisensteinPart p q A hA m, each additive for convolution, Galois-equivariant respectively compatible with A\hookrightarrow\overline{\mathbb Q}; for each prime \ell\neq p a finite flat cocommutative Hopf algebra H^{\mathrm{ff}}_{m,\ell} over GaloisRep.ratLocalizedAt ℓ whose \overline{\mathbb Q}-points are again identified, additively and Galois-equivariantly, with eisensteinTorsionBar p q m, with H_m finite after base change there; morphisms \mathcal J_m\to\mathcal J_{m+1}\to Q_m whose composite vanishes, carrying as a field the assertion that the resulting short complex is short exact; a record \mathrm{inv}(m) of AdmissibleInvariants q whose components are pinned by equalities \#H^0_{\mathrm{fppf}}(\operatorname{Spec}\mathbb Z,\mathcal J_m)=q^{h^0}, \#H^1=q^{h^1}, \#\,eisensteinTorsionBar\,=q^{\delta}\cdot\#\,toricEisensteinPart, and, when q\neq p, \# of the convolution group of \mathbb F_q-algebra maps \overline{H}_m\to\overline{\mathbb F_q} equal to q^{\alpha}, where \overline{H}_m is a finite cocommutative Hopf \mathbb F_q-algebra presented as the quotient of H^{\mathrm{ff}}_{m,q} by the ideal generated by q; and a term of JKummerRow q m over the subgroup generated by eisensteinQuotientRational p (heckeModuleBar p), whose group H1Jtors is identified additively with H^1_{\mathrm{fppf}}(\operatorname{Spec}\mathbb Z,\mathcal J_m). Thus the sheaves are not constructed as Néron-model torsion but characterised by these pinnings. Finally HasJZeroNeronTorsionSheaf p q asserts that for every valuation subring of \overline{\mathbb Q} lying over p such a structure exists.
Relation to Mathlib
The ambient framework — sheaves on the small fppf site of a scheme, short exactness of short complexes in an abelian category, HopfAlgebra, Submodule.torsionBySet, flatness and finite type — is Mathlib's; JZero, HeckeAlg, the Eisenstein ideal and Eisenstein quotient, AdmissibleInvariants, JKummerRow, WithConv and the fppf cohomology groups used here are the project's own notions.
Where it is used
The structure is the interface on which the counting argument for the \mathfrak P^m-torsion of J_0(p) in the style of Mazur's Eisenstein-ideal paper is run: consumers combine the short exact sequences with the four numerical pinnings to obtain an Euler-characteristic inequality between h^0,h^1,\delta,\alpha, and use the Kummer row to compare H^1_{\mathrm{fppf}} with rational points of the Eisenstein quotient. The resulting bounds feed the project's treatment of rational p-torsion on elliptic curves over \mathbb Q, used in the Fermat deduction.
References
- B. Mazur, Modular curves and the Eisenstein ideal, Publications Mathématiques de l'IHÉS 47 (1977), 33–186
- J. S. Milne, Arithmetic Duality Theorems, Academic Press, 1986
- M. Raynaud, Schémas en groupes de type (p,\dots,p), Bulletin de la Société Mathématique de France 102 (1974), 241–280
References are suggested automatically and have not been individually verified.
English text generated automatically from the Lean source; the Lean statement is authoritative.
- 154 lines
- 35 declarations
- used in the statements of 35 theorems and imported by 36 proofs
- imports 8 definition modules
Source file: Definitions/Def_ModularCurve_JZeroNeronTorsionSheafV4.lean
Imports
Imported by
Declarations
- abbrev
ModularCurve.eisensteinTorsionBar - abbrev
ModularCurve.toricEisensteinPart - structure
ModularCurve.JZeroNeronTorsionSheaf - field
ModularCurve.JZeroNeronTorsionSheaf.A - field
ModularCurve.JZeroNeronTorsionSheaf.H - field
ModularCurve.JZeroNeronTorsionSheaf.ff_finite - field
ModularCurve.JZeroNeronTorsionSheaf.sectionsEquiv - field
ModularCurve.JZeroNeronTorsionSheaf.sectionsNat - field
ModularCurve.JZeroNeronTorsionSheaf.genericPoints - field
ModularCurve.JZeroNeronTorsionSheaf.genericConv - field
ModularCurve.JZeroNeronTorsionSheaf.genericGalois - field
ModularCurve.JZeroNeronTorsionSheaf.pFibrePoints - field
ModularCurve.JZeroNeronTorsionSheaf.pFibreConv - field
ModularCurve.JZeroNeronTorsionSheaf.pFibreGenericCompat - field
ModularCurve.JZeroNeronTorsionSheaf.Hff - field
ModularCurve.JZeroNeronTorsionSheaf.ffPoints - field
ModularCurve.JZeroNeronTorsionSheaf.ffConv - field
ModularCurve.JZeroNeronTorsionSheaf.ffGalois - field
ModularCurve.JZeroNeronTorsionSheaf.Q - field
ModularCurve.JZeroNeronTorsionSheaf.incl - field
ModularCurve.JZeroNeronTorsionSheaf.proj - field
ModularCurve.JZeroNeronTorsionSheaf.incl_proj - field
ModularCurve.JZeroNeronTorsionSheaf.ses_shortExact - field
ModularCurve.JZeroNeronTorsionSheaf.inv - field
ModularCurve.JZeroNeronTorsionSheaf.h0_pin - field
ModularCurve.JZeroNeronTorsionSheaf.h1_pin - field
ModularCurve.JZeroNeronTorsionSheaf.HffBarQ - field
ModularCurve.JZeroNeronTorsionSheaf.ffBarQ_red - field
ModularCurve.JZeroNeronTorsionSheaf.ffBarQ_red_surjective - field
ModularCurve.JZeroNeronTorsionSheaf.ffBarQ_red_ker - field
ModularCurve.JZeroNeronTorsionSheaf.kummerRow - field
ModularCurve.JZeroNeronTorsionSheaf.letI - field
ModularCurve.JZeroNeronTorsionSheaf.kummerRow_H1Jtors - field
ModularCurve.JZeroNeronTorsionSheaf.letI - def
ModularCurve.HasJZeroNeronTorsionSheaf
Source
import Mathlib import Definitions.Def_ModularCurve_JZeroNeronDataPrime import Definitions.Def_ModularCurve_EisensteinIdeal import Definitions.Def_ModularCurve_FppfKummerInterface import Definitions.Def_ModularCurve_MazurStepThreeInputs import Definitions.Def_AlgebraicGeometry_FppfSiteCohomology import Definitions.Def_AlgebraicGeometry_FppfCohomologyLES import Definitions.Def_AlgebraicGeometry_FppfKummerProp17 import Definitions.Def_ModularCurve_JZeroToricTorsion set_option autoImplicit false noncomputable section namespace ModularCurve open CategoryTheory AlgebraicGeometry AlgebraicGeometry.Scheme ValuationSubring Opposite abbrev eisensteinTorsionBar (p q m : ℕ) [NeZero p] : AddSubgroup (JZero p) := letI := heckeModuleBar p (Submodule.torsionBySet HeckeAlg (JZero p) (↑((eisensteinMaximalIdeal p q) ^ m) : Set HeckeAlg)).toAddSubgroup abbrev toricEisensteinPart (p q : ℕ) [Fact p.Prime] (A : ValuationSubring (AlgebraicClosure ℚ)) (_hA : A.LiesOverPrime p) (m : ℕ) : AddSubgroup (JZero p) := jZeroToricTorsion p A (q ^ m) ⊓ eisensteinTorsionBar p q m structure JZeroNeronTorsionSheaf (p q : ℕ) [Fact p.Prime] [Fact q.Prime] (A : ValuationSubring (AlgebraicClosure ℚ)) (hA : A.LiesOverPrime p) where 𝒥 : ℕ → Sheaf (smallFppfTopology specInt) Ab.{1} H : ℕ → Type [instCommRing_H : ∀ m, CommRing (H m)] [instHopfAlgebra_H : ∀ m, HopfAlgebra ℤ (H m)] [instFiniteType_H : ∀ m, Algebra.FiniteType ℤ (H m)] [instFlat_H : ∀ m, Module.Flat ℤ (H m)] ff_finite : ∀ (m ℓ : ℕ), ℓ.Prime → ℓ ≠ p → Module.Finite (GaloisRep.ratLocalizedAt ℓ) (TensorProduct ℤ (GaloisRep.ratLocalizedAt ℓ) (H m)) sectionsEquiv : ∀ (m : ℕ) (U : specInt.Fppf), (𝒥 m).1.obj (op U) ≃+ Additive (WithConv (H m →ₐ[ℤ] Γ(U.left, ⊤))) sectionsNat : ∀ (m : ℕ) {U V : specInt.Fppf} (f : U ⟶ V) (s : (𝒥 m).1.obj (op V)), ∀ h : H m, (Additive.toMul (sectionsEquiv m U ((𝒥 m).1.map f.op s))) h = (Scheme.Γ.map f.left.op) ((Additive.toMul (sectionsEquiv m V s)) h) genericPoints : ∀ m, WithConv (H m →ₐ[ℤ] AlgebraicClosure ℚ) ≃ ↥(eisensteinTorsionBar p q m) genericConv : ∀ m, ∀ f g : WithConv (H m →ₐ[ℤ] AlgebraicClosure ℚ), genericPoints m (f * g) = genericPoints m f + genericPoints m g genericGalois : ∀ m, ∀ σ : AlgebraicClosure ℚ ≃ₐ[ℚ] AlgebraicClosure ℚ, ∀ f g : WithConv (H m →ₐ[ℤ] AlgebraicClosure ℚ), (∀ h : H m, g h = σ (f h)) → ((genericPoints m g : ↥(eisensteinTorsionBar p q m)) : JZero p) = σ • ((genericPoints m f : ↥(eisensteinTorsionBar p q m)) : JZero p) pFibrePoints : ∀ m, WithConv (H m →ₐ[ℤ] ↥A) ≃ ↥(toricEisensteinPart p q A hA m) pFibreConv : ∀ m, ∀ f g : WithConv (H m →ₐ[ℤ] ↥A), pFibrePoints m (f * g) = pFibrePoints m f + pFibrePoints m g pFibreGenericCompat : ∀ m, ∀ φ : WithConv (H m →ₐ[ℤ] ↥A), ∀ ψ : WithConv (H m →ₐ[ℤ] AlgebraicClosure ℚ), (∀ h : H m, ψ h = A.subtype (φ h)) → ((pFibrePoints m φ : ↥(toricEisensteinPart p q A hA m)) : JZero p) = ((genericPoints m ψ : ↥(eisensteinTorsionBar p q m)) : JZero p) Hff : ∀ (_m : ℕ) (ℓ : ℕ), ℓ.Prime → ℓ ≠ p → Type [instCommRing_Hff : ∀ m ℓ hℓ hℓp, CommRing (Hff m ℓ hℓ hℓp)] [instHopfAlgebra_Hff : ∀ m ℓ hℓ hℓp, HopfAlgebra (GaloisRep.ratLocalizedAt ℓ) (Hff m ℓ hℓ hℓp)] [instFinite_Hff : ∀ m ℓ hℓ hℓp, Module.Finite (GaloisRep.ratLocalizedAt ℓ) (Hff m ℓ hℓ hℓp)] [instFlat_Hff : ∀ m ℓ hℓ hℓp, Module.Flat (GaloisRep.ratLocalizedAt ℓ) (Hff m ℓ hℓ hℓp)] [instCocomm_Hff : ∀ m ℓ hℓ hℓp, Coalgebra.IsCocomm (GaloisRep.ratLocalizedAt ℓ) (Hff m ℓ hℓ hℓp)] ffPoints : ∀ m ℓ hℓ hℓp, WithConv (Hff m ℓ hℓ hℓp →ₐ[GaloisRep.ratLocalizedAt ℓ] AlgebraicClosure ℚ) ≃ ↥(eisensteinTorsionBar p q m) ffConv : ∀ m ℓ hℓ hℓp, ∀ f g, ffPoints m ℓ hℓ hℓp (f * g) = ffPoints m ℓ hℓ hℓp f + ffPoints m ℓ hℓ hℓp g ffGalois : ∀ m ℓ hℓ hℓp, ∀ σ : AlgebraicClosure ℚ ≃ₐ[ℚ] AlgebraicClosure ℚ, ∀ f g : WithConv (Hff m ℓ hℓ hℓp →ₐ[GaloisRep.ratLocalizedAt ℓ] AlgebraicClosure ℚ), (∀ h, g h = σ (f h)) → ((ffPoints m ℓ hℓ hℓp g : ↥(eisensteinTorsionBar p q m)) : JZero p) = σ • ((ffPoints m ℓ hℓ hℓp f : ↥(eisensteinTorsionBar p q m)) : JZero p) Q : ℕ → Sheaf (smallFppfTopology specInt) Ab.{1} incl : ∀ m, 𝒥 m ⟶ 𝒥 (m + 1) proj : ∀ m, 𝒥 (m + 1) ⟶ Q m incl_proj : ∀ m, incl m ≫ proj m = 0 ses_shortExact : ∀ m, (ShortComplex.mk (incl m) (proj m) (incl_proj m)).ShortExact inv : ℕ → AdmissibleInvariants q h0_pin : ∀ m, Nat.card (fppfCohomology specInt (𝒥 m) 0) = q ^ (inv m).h0 h1_pin : ∀ m, Nat.card (fppfCohomology specInt (𝒥 m) 1) = q ^ (inv m).h1 δ_pin : ∀ m, Nat.card ↥(eisensteinTorsionBar p q m) = q ^ (inv m).δ * Nat.card ↥(toricEisensteinPart p q A hA m) HffBarQ : ∀ (_m : ℕ), q ≠ p → Type [instCommRing_HffBarQ : ∀ m hqp, CommRing (HffBarQ m hqp)] [instHopfAlgebra_HffBarQ : ∀ m hqp, HopfAlgebra (ZMod q) (HffBarQ m hqp)] [instFinite_HffBarQ : ∀ m hqp, Module.Finite (ZMod q) (HffBarQ m hqp)] [instCocomm_HffBarQ : ∀ m hqp, Coalgebra.IsCocomm (ZMod q) (HffBarQ m hqp)] ffBarQ_red : ∀ m hqp, Hff m q Fact.out hqp →+* HffBarQ m hqp ffBarQ_red_surjective : ∀ m hqp, Function.Surjective (ffBarQ_red m hqp) ffBarQ_red_ker : ∀ m hqp, RingHom.ker (ffBarQ_red m hqp) = Ideal.span {((q : ℤ) : Hff m q Fact.out hqp)} α_pin : ∀ m, ∀ hqp : q ≠ p, Nat.card (WithConv (HffBarQ m hqp →ₐ[ZMod q] AlgebraicClosure (ZMod q))) = q ^ (inv m).α kummerRow : ∀ m, letI := heckeModuleBar p JKummerRow q m ↥(AddSubgroup.closure (eisensteinQuotientRational p (heckeModuleBar p))) kummerRow_H1Jtors : ∀ m, letI := heckeModuleBar p; letI := (kummerRow m).instH1Jtors; (kummerRow m).H1Jtors ≃+ fppfCohomology specInt (𝒥 m) 1 attribute [instance] JZeroNeronTorsionSheaf.instCommRing_H JZeroNeronTorsionSheaf.instHopfAlgebra_H JZeroNeronTorsionSheaf.instFiniteType_H JZeroNeronTorsionSheaf.instFlat_H JZeroNeronTorsionSheaf.instCommRing_Hff JZeroNeronTorsionSheaf.instHopfAlgebra_Hff JZeroNeronTorsionSheaf.instFinite_Hff JZeroNeronTorsionSheaf.instFlat_Hff JZeroNeronTorsionSheaf.instCocomm_Hff JZeroNeronTorsionSheaf.instCommRing_HffBarQ JZeroNeronTorsionSheaf.instHopfAlgebra_HffBarQ JZeroNeronTorsionSheaf.instFinite_HffBarQ JZeroNeronTorsionSheaf.instCocomm_HffBarQ def HasJZeroNeronTorsionSheaf (p q : ℕ) [Fact p.Prime] [Fact q.Prime] : Prop := ∀ (A : ValuationSubring (AlgebraicClosure ℚ)) (hA : A.LiesOverPrime p), Nonempty (JZeroNeronTorsionSheaf p q A hA) section Falseprobe end Falseprobe end ModularCurve end
Statements phrased using this module (35)
- Inertia at q≠ p acts on Eisenstein displacements cyclotomically
ModularCurve.eisensteinTorsionBar_inertia_smul_sub_eq_nat_smul1,976 below · depth 13 - Inertia at p acts on q-power torsion of J₀(p) through one element
ModularCurve.exists_mem_inertiaSubgroupIn_forall_jZeroTorsion_pow_smul_eq_imp1,530 below · depth 13 - Multiplicative-type submodule and pairing of Eisenstein torsion (q ≠ 2)
ModularCurve.exists_submodule_multiplicativeTypeNat_heckeTorsion_span_sup_pairing_heckeLatticeAlgebra_quotient_of_ne_two2,326 below · depth 13 - Inertia at 2 acts by cyclotomic exponent on Eisenstein torsion displacements
ModularCurve.eisensteinTorsionBar_inertia_smul_sub_eq_nat_smul_two1,972 below · depth 14 - Hecke-equivariant bounded-kernel map on Eisenstein torsion killed by reduction
ModularCurve.exists_addMonoidHom_inf_ker_reductionModL_eisensteinTorsionBar_heckeLatticeAlgebra_quotient_two_pow_natCard_ker_le2,547 below · depth 14 - Hecke-balanced pairing with multiplicative-type left kernel (q odd)
ModularCurve.exists_pairing_heckeTorsion_span_sup_heckeLatticeAlgebra_quotient_of_multiplicativeTypeNat_maximal_of_ne_two2,321 below · depth 14 - Separatedness pins the reduction of a B-point
ModularCurve.schemeHomOver_residue_eq_ptsSp_reductionModL_of_isSeparated0 below · depth 14 - The p-adic Eisenstein torsion of J₀(p) vanishes
ModularCurve.eisensteinTorsionBar_self_eq_bot1,072 below · depth 15 - Hecke coordinate on multiplicative-type subgroups of J₀(p)[P^m] at 2
ModularCurve.exists_addMonoidHom_heckeLatticeAlgebra_quotient_two_pow_natCard_ker_le_of_multiplicativeTypeNat_le_eisensteinTorsionBar2,544 below · depth 15 - Character detecting inertia eigenvectors in Eisenstein torsion, q odd
ModularCurve.exists_character_generator_heckeTorsion_span_sup_inertiaSubgroupIn_of_ne_two2,072 below · depth 15 - Inertia acts by the cyclotomic character on t· v in the Eisenstein torsion tower
ModularCurve.inertia_smul_smul_eq_nsmul_of_latticeRestrict_heckeEvalForms_mem_span_sup775 below · depth 15 - Inertia eigenvectors force membership in the stable lattice ideal
ModularCurve.latticeRestrict_heckeEvalForms_mem_span_sup_of_inertia_smul_smul_eq_nsmul_of_ne_two2,320 below · depth 15 - Hecke coordinate on inertia displacements in J₀(p)[P^m]
ModularCurve.exists_addSubgroup_le_eisensteinTorsionBar_inertia_smul_sub_mem_addMonoidHom_heckeLatticeAlgebra_quotient_natCard_ker_le2,543 below · depth 16 - A character on the stable Eisenstein torsion of J₀(p)
ModularCurve.exists_character_free_heckeTorsion_span_sup_inertiaSubgroupIn_of_ne_two2,319 below · depth 16 - A generator for Eisenstein torsion inertia-eigenvectors at odd q
ModularCurve.exists_nsmul_generator_heckeTorsion_span_sup_of_inertia_smul_eisensteinMaximalIdeal_smul_eq_nsmul_of_ne_two2,070 below · depth 16 - A Hecke coordinate on inertia-displaced Eisenstein 2-torsion
ModularCurve.exists_addMonoidHom_eisensteinTorsionBar_inf_closure_inertia_smul_sub_heckeLatticeAlgebra_quotient_natCard_ker_le2,542 below · depth 17 - Counting q^k-torsion: #V_M=#R_M·#V_M⁰ for odd q≠ p
ModularCurve.natCard_heckeTorsion_span_sup_eq_natCard_heckeLatticeAlgebra_quotient_mul_natCard_inertia_smul_eq_nsmul_of_ne_two2,314 below · depth 17 - Hecke coordinate with bounded kernel on 2^m-torsion of multiplicative type
ModularCurve.exists_addMonoidHom_torsionBy_two_pow_inf_closure_inertia_smul_sub_heckeLatticeAlgebra_quotient_natCard_ker_le_of_multiplicativeTypeNat2,505 below · depth 18 - Reduced Eisenstein torsion dominates the lattice Hecke quotient
ModularCurve.natCard_heckeLatticeAlgebra_quotient_le_natCard_image_reductionModL_heckeTorsion_span_sup2,221 below · depth 18 - Reduced Eisenstein torsion bounded by lattice Hecke quotient
ModularCurve.natCard_image_reductionModL_heckeTorsion_span_sup_le_natCard_heckeLatticeAlgebra_quotient2,102 below · depth 18 - Hecke coordinates mod 2^m on the inertia part of T₂J₀(p)
ModularCurve.exists_addMonoidHom_family_tateModule_inf_pi_closure_inertia_smul_sub_heckeLatticeAlgebra_quotient_natCard_ker_quotient_le2,503 below · depth 19 - Two-divisibility of inertia displacements in Eisenstein torsion
ModularCurve.exists_two_nsmul_eq_of_mem_torsionBy_two_pow_inf_closure_inertia_smul_sub2,234 below · depth 19 - Eisenstein torsion of J₀(p) counted as a square
ModularCurve.natCard_heckeTorsion_span_sup_eq_sq_natCard_heckeLatticeAlgebra_quotient1,033 below · depth 19 - A 2-divisible multiplicative-type subgroup of dyadic Eisenstein torsion
ModularCurve.exists_addSubgroup_eisensteinTorsionBar_two_nsmul_surjOn_inertia_smul_eq_nat_smul_smul_sub_mem2,232 below · depth 20 - Generator and idempotent tower on the Eisenstein inertia Tate module
ModularCurve.exists_nsmul_generator_idempotent_tower_heckeAlg_tateModule_inf_pi_closure_inertia_smul_sub2,502 below · depth 20 - A Hecke generator up to bounded index for inertia displacements
ModularCurve.exists_generator_tateModule_inf_pi_closure_inertia_smul_sub_and_smul_eisensteinTorsionBar_eq_zero2,491 below · depth 21 - A 2-adic Eisenstein idempotent tower acting on J₀(p)
ModularCurve.exists_heckeAlg_idempotent_tower_smul_eq_self_of_mem_eisensteinTorsionBar871 below · depth 21 - A uniform 2-adic exponent for torsion annihilators on J₀(p)
ModularCurve.exists_latticeRestrict_heckeEvalForms_mem_span_two_pow_of_forall_smul_eq_zero1,263 below · depth 21 - Inertia at 2 is of multiplicative type on the reduction kernel
ModularCurve.multiplicativeTypeNat_inf_ker_reductionModL_eisensteinTorsionBar1,972 below · depth 21 - Rational cyclicity of the inertia-displacement Tate module at 2
ModularCurve.exists_generator_tateModule_closure_inertia_smul_sub_adjoin_tateHeckeRep2,460 below · depth 22 - Eisenstein torsion points lift to the 2-adic Tate module
ModularCurve.exists_tateModule_apply_eq_of_mem_eisensteinTorsionBar_two777 below · depth 22 - Hecke operators killing inertia displacements kill the Eisenstein Tate module
ModularCurve.tateHeckeRep_eq_zero_of_forall_closure_inertia_smul_sub_eq_zero1,167 below · depth 22 - Inertia at 2 moves every nonzero Hecke image in T_P
ModularCurve.exists_mem_inertiaSubgroupIn_tateModule_rep_ne_of_adjoin_tateHeckeRep_apply_ne_zero1,166 below · depth 23 - 2-divisibility of the Eisenstein P-power torsion at 2
ModularCurve.exists_two_nsmul_eq_of_mem_eisensteinTorsionBar_two776 below · depth 23 - Inertia at 2 cannot fix a Hecke eigenplane of J₀(p)
ModularCurve.rationalTateModule_false_of_inertia_fixed_eigenplane928 below · depth 24