Definitions/Def_EllipticCurve_ZeroComponentAt.lean
Points in the identity component at a place of
The module defines a single predicate, WeierstrassCurve.InZeroComponentAt W A P. Its data are: a Weierstrass curve W over \mathbb{Z} (a bare Weierstrass equation, with no minimality or nonsingularity assumption); a valuation subring A of \overline{\mathbb{Q}}, i.e. a place of \overline{\mathbb{Q}}, with its maximal ideal and residue field k_A = IsLocalRing.ResidueField A; and a point P of the affine point type of W base changed along \mathbb{Z}\to\mathbb{Q} and then to \overline{\mathbb{Q}}. The predicate is the disjunction of the following cases. Either P is the point at infinity 0; or P is an affine point .some x y h with coordinates x,y\in\overline{\mathbb{Q}} and a proof h that (x,y) is a nonsingular point of the base-changed affine equation, and then one of two further conditions holds: (i) x\notin A, i.e. the abscissa is not A-integral; or (ii) both x\in A and y\in A, and the images \bar x,\bar y of x,y under the residue map A\to k_A form a nonsingular point of the affine curve obtained by reducing the integral model W modulo the maximal ideal of A (that is, of W mapped along \mathbb{Z}\to k_A).
Thus the predicate is stated relative to the chosen integral Weierstrass model W and to the chosen place A, and it is a bare Prop: nothing here asserts that the points satisfying it form a subgroup, nor that A-integrality of x forces that of y (condition (ii) demands both). For a model minimal at the residue characteristic of A, case (i) describes the kernel of reduction and case (ii) the points reducing into the smooth locus, so that the predicate cuts out the classical subgroup E_0 of points reducing to nonsingular points; the group-theoretic and reduction-theoretic properties are proved elsewhere as separate theorems.
Relation to Mathlib
Built entirely from Mathlib notions — WeierstrassCurve, its base change and affine points, Nonsingular, ValuationSubring and IsLocalRing.ResidueField with its residue map — but Mathlib has no notion of the identity component or of the reduction of a point at a place, so this predicate is the project's own.
Where it is used
The predicate is used in the local analysis of torsion points on the integral Frey model: at primes of multiplicative reduction and at p one asks whether a point of order p lies on the identity component, and this feeds Mazur's Eisenstein-ideal argument showing that the mod-p representation of the Frey curve has no cofixed line for p\ge 17 (including the global input WeierstrassCurve.mazurStepThree_not_inZeroComponentAt).
References
- J. H. Silverman, The Arithmetic of Elliptic Curves, Graduate Texts in Mathematics 106, Springer, 2nd ed., 2009, Chapter VII
- B. Mazur, Modular curves and the Eisenstein ideal, Publications Mathématiques de l'IHÉS 47 (1977), 33–186
References are suggested automatically and have not been individually verified.
English text generated automatically from the Lean source; the Lean statement is authoritative.
- 23 lines
- 1 declarations
- used in the statements of 43 theorems and imported by 50 proofs
- imports 1 definition modules
Source file: Definitions/Def_EllipticCurve_ZeroComponentAt.lean
Imports
Imported by
Declarations
Source
import Mathlib.AlgebraicGeometry.EllipticCurve.Affine.Point ↗ import Mathlib.RingTheory.Valuation.ValuationSubring ↗ import Mathlib.RingTheory.LocalRing.ResidueField.Basic ↗ import Mathlib.FieldTheory.IsAlgClosed.AlgebraicClosure ↗ import Definitions.Def_FLTPrelim_GaloisRep set_option autoImplicit false namespace WeierstrassCurve open scoped WeierstrassCurve.Affine def InZeroComponentAt (W : WeierstrassCurve ℤ) (A : ValuationSubring (AlgebraicClosure ℚ)) (P : ((W.map (Int.castRingHom ℚ))⁄(AlgebraicClosure ℚ)).Point) : Prop := P = 0 ∨ ∃ (x y : AlgebraicClosure ℚ) (h : ((W.map (Int.castRingHom ℚ))⁄(AlgebraicClosure ℚ)).toAffine.Nonsingular x y), P = .some x y h ∧ (x ∉ A ∨ ∃ (hx : x ∈ A) (hy : y ∈ A), (W.map (Int.castRingHom (IsLocalRing.ResidueField A))).toAffine.Nonsingular (IsLocalRing.residue A ⟨x, hx⟩) (IsLocalRing.residue A ⟨y, hy⟩)) end WeierstrassCurve
Statements phrased using this module (43)
- landmark Mazur's Step 3 at one multiplicative prime ℓ
WeierstrassCurve.mazurStepThree_not_inZeroComponentAt5,253 below · depth 6 - Inertia-stable cyclic subgroup absorbed by inertial displacement subgroup
AddSubgroup.eq_atP_filtration_of_cyclic_stable_inertia_nontrivial0 below · depth 6 - Tower step for Galois-stable cyclic p-power subgroups
AddSubgroup.exists_towerStep_of_extVanishingCts2 below · depth 6 - Global triviality of p^m-torsion displacements from inertia
AddSubgroup.galois_trivial_quotient_of_inertia_absorbing4 below · depth 6 - Cyclic σ-stable p^m-subgroup with non-±1 scalar is the toric subgroup
AddSubgroup.inZeroComponentAt_of_cyclic_stable_scalar_dichotomy1 below · depth 6 - Zero-component p^m-torsion is contained in K
AddSubgroup.mem_of_torsion_inZeroComponentAt_of_forall_not_inZeroComponentAt_sub1 below · depth 6 - Reduction-kernel filtration at a good ordinary prime p≠ 2
WeierstrassCurve.exists_atP_filtration_of_goodReduction48 below · depth 6 - Inertial filtration on p^m-torsion at multiplicative reduction
WeierstrassCurve.exists_atP_filtration_of_multiplicativeReduction65 below · depth 6 - Integral quotient datum for a Galois-stable subgroup of order p
WeierstrassCurve.exists_quotientDatum_of_galois_stable_primeCard97 below · depth 6 - Quotient data for cyclic p^m-subgroups from the prime-level case
WeierstrassCurve.exists_quotientDatum_of_galois_stable_primePowCard0 below · depth 6 - Nonzero ℓ-torsion in the zero component at multiplicative reduction, ℓ≠ q
WeierstrassCurve.exists_torsion_ne_zero_inZeroComponentAt_of_ne_residueChar18 below · depth 6 - Some ℓ-torsion point outside the zero component at a nodal prime
WeierstrassCurve.exists_torsion_not_inZeroComponentAt_of_ne_residueChar6 below · depth 6 - ℓ-torsion in the zero component at a multiplicative prime
WeierstrassCurve.exists_torsion_zeroComponent_submodule_of_multiplicativeReduction0 below · depth 6 - Frobenius satisfies its characteristic equation on prime-to-ℓ torsion
WeierstrassCurve.frobenius_cayleyHamilton_on_torsion24 below · depth 6 - Equal level, opposite branches: the sum reduces smoothly
WeierstrassCurve.inZeroComponentAt_add_of_level_eq_of_branch_ne0 below · depth 6 - Stability of the zero component under the decomposition group
WeierstrassCurve.inZeroComponentAt_smul0 below · depth 6 - Inertia displacements lie in the zero component at q
WeierstrassCurve.inZeroComponentAt_smul_sub_of_mem_inertiaSubgroupIn12 below · depth 6 - The zero component at A is closed under subtraction
WeierstrassCurve.inZeroComponentAt_sub0 below · depth 6 - Equal level and same branch: the difference lies in the zero component
WeierstrassCurve.inZeroComponentAt_sub_of_level_eq_of_branch_eq0 below · depth 6 - Off the zero component iff the abscissa meets the node
WeierstrassCurve.not_inZeroComponentAt_some_iff_of_criticalCentre0 below · depth 6 - Cofixed p-torsion forces p ∣ #W(𝔽_ℓ)
WeierstrassCurve.prime_dvd_card_point_of_cofixed_addSubgroup_of_goodReduction25 below · depth 6 - Level of odd-order torsion reducing to a node
WeierstrassCurve.valuation_pow_eq_of_torsion_odd_of_not_inZeroComponentAt10 below · depth 6 - Frobenius swaps the branches when a ≡ 3 (mod 8)
FreyPackage.frey_exists_decomposition_branch_swap_of_a_mod_eight23 below · depth 7 - Reduction map to the special fibre at a place of ℚ̄
WeierstrassCurve.exists_reduction_inZeroComponentAt0 below · depth 7 - Some q-torsion point escapes the zero component at q
WeierstrassCurve.exists_torsionBy_residueChar_not_inZeroComponentAt8 below · depth 7 - Some ℓ-torsion escapes the zero component at a multiplicative prime
WeierstrassCurve.exists_torsion_not_inZeroComponentAt_of_multiplicativeReduction16 below · depth 7 - Sum of two antipodal points at a node lies in E⁰
WeierstrassCurve.inZeroComponentAt_add_of_antipodal2 below · depth 7 - Zero-component transport along the Vélu coordinate map
WeierstrassCurve.inZeroComponentAt_veluCoord_iff_of_multiplicative28 below · depth 7 - Translation by a point of E⁰ preserves level and branch at a node
WeierstrassCurve.level_add_of_inZeroComponentAt5 below · depth 7 - Unit distance from the critical centre forces the zero component
WeierstrassCurve.inZeroComponentAt_of_valuation_sub_eq_one0 below · depth 8 - Inertia fixes ℓ-torsion off the zero component when ℓ∣ v_q(Δ)
WeierstrassCurve.smul_eq_self_of_torsion_of_not_inZeroComponentAt_of_dvd26 below · depth 8 - Vélu c₄ is a non-unit for formal-group p-torsion
WeierstrassCurve.valuation_c4_add_veluTSum_lt_one_of_formal_kernel9 below · depth 8 - Valuation of the Vélu u-product over ⟨ Q⟩ at a multiplicative place
WeierstrassCurve.valuation_prod_veluU_oddOrderSummingSet_of_multiplicative19 below · depth 8 - Vélu quotient has unit c₄ at a multiplicative prime
WeierstrassCurve.valuation_veluQuotient_oddOrderSummingSet_c4_of_multiplicative10 below · depth 8 - Inertial filtration of p^m-torsion at a multiplicative prime
WeierstrassCurve.exists_atP_filtration_of_multiplicativeReduction_all_primes84 below · depth 9 - Nonzero ℓ-torsion in the zero component at a multiplicative prime
WeierstrassCurve.exists_torsion_ne_zero_inZeroComponentAt_of_multiplicativeReduction23 below · depth 10 - Good reduction: all ℚ̄-points lie in the zero component
WeierstrassCurve.inZeroComponentAt_of_isGoodPrimeFor5 below · depth 10 - q-torsion of the zero component at a multiplicative prime
WeierstrassCurve.inZeroComponentAt_torsionBy_residueChar3 below · depth 10 - Good reduction at ℓ: discriminant nonzero in the residue field
WeierstrassCurve.map_residueField_discr_ne_zero_of_isGoodPrimeFor2 below · depth 10 - Good reduction: integral solutions reduce to nonsingular points
WeierstrassCurve.nonsingular_residue_of_isGoodPrimeFor3 below · depth 10 - Nonzero q-torsion in the zero component at residue characteristic q
WeierstrassCurve.exists_torsionBy_residueChar_ne_zero_inZeroComponentAt3 below · depth 11 - Integral x-coordinate forces integral y-coordinate
WeierstrassCurve.mem_valuationSubring_of_equation0 below · depth 11 - Unramified sign character on p-torsion modulo the zero component
WeierstrassCurve.exists_sign_smul_sub_inZeroComponentAt_of_not_isGoodPrimeFor23 below · depth 12