Definitions/Def_WeierstrassCurve_PointChart.lean
Finite chart and sections through affine points
Throughout, T is a commutative ring and W a projective Weierstrass curve over T; the projective model is E = \mathrm{Proj} of the graded ring \mathcal{A} = T[X_0,X_1,X_2]/(W_{\mathrm{hom}}), with grading induced from the total-degree grading of the polynomial ring, and \mathrm{coord}\,W\,i denotes the class of X_i, an element of degree 1. ZChartRing W is the degree-zero part of the homogeneous localisation of \mathcal{A} away from \mathrm{coord}\,W\,2, and zChartι is the associated open immersion \mathrm{Spec}(\mathrm{ZChartRing}\,W) \to E onto the standard chart D_+(Z), obtained from Mathlib's Proj.awayι at the degree-one element \mathrm{coord}\,W\,2. The two elements xOverZ and yOverZ of this ring are the degree-zero fractions with numerators \mathrm{coord}\,W\,0 and \mathrm{coord}\,W\,1 over the first power of \mathrm{coord}\,W\,2, i.e. the affine coordinates x = X/Z and y = Y/Z of the chart.
For a section S of E over T (an element of Section W, a morphism \mathrm{Spec}\,T \to E whose composite with the structure morphism is the identity) and a ring homomorphism \chi from ZChartRing W to T, the predicate IsZChartSection S χ asserts the equality of morphisms S.1 = \mathrm{Spec}(\chi) followed by zChartι: the section factors through the chart D_+(Z) via \chi. The coordinates of such a factorisation are \mathrm{affX}\,\chi = \chi(x) and \mathrm{affY}\,\chi = \chi(y). Finally, IsSectionThrough S x y, for x, y \in T, asserts the existence of a \chi with IsZChartSection S χ and \chi(x\text{-coordinate}) = x, \chi(y\text{-coordinate}) = y. All three are predicates on the given section and the chosen homogeneous presentation of the model; nothing is constructed or proved here.
Relation to Mathlib
Mathlib supplies the homogeneous localisation Away and the open immersion Proj.awayι used here; the projective Weierstrass model as \mathrm{Proj} of a graded quotient, its charts and the predicate that a section passes through a given affine point are the project's own notions, with no Mathlib counterpart.
Where it is used
These predicates provide the language in which a T-section of the projective Weierstrass model is said to have affine coordinates (x,y); the companion module for the chart D_+(Y) treats sections near the origin [0:1:0]. They are used when the Drinfeld level structures and the relative group law on the model are read in coordinates, in particular when comparing the group law on field-valued points with the chord–tangent addition on the affine Weierstrass curve.
References
- R. Hartshorne, Algebraic Geometry, Graduate Texts in Mathematics 52, Springer, 1977, Chapter II.2
- J. H. Silverman, The Arithmetic of Elliptic Curves, Graduate Texts in Mathematics 106, Springer, 1986, Chapter III.1
References are suggested automatically and have not been individually verified.
English text generated automatically from the Lean source; the Lean statement is authoritative.
- 47 lines
- 8 declarations
- used in the statements of 148 theorems and imported by 181 proofs
- imports 3 definition modules
Source file: Definitions/Def_WeierstrassCurve_PointChart.lean
Imports
Imported by
- no other definition module
Declarations
- abbrev
WeierstrassCurve.DrinfeldGlobal.ZChartRing - abbrev
WeierstrassCurve.DrinfeldGlobal.zChartι - def
WeierstrassCurve.DrinfeldGlobal.xOverZ - def
WeierstrassCurve.DrinfeldGlobal.yOverZ - def
WeierstrassCurve.DrinfeldGlobal.IsZChartSection - def
WeierstrassCurve.DrinfeldGlobal.affX - def
WeierstrassCurve.DrinfeldGlobal.affY - def
WeierstrassCurve.DrinfeldGlobal.IsSectionThrough
Source
import Mathlib import Definitions.Def_WeierstrassCurve_ProjModel import Definitions.Def_WeierstrassCurve_DrinfeldBasisGlobal import Definitions.Def_WeierstrassCurve_SectionAtOrigin set_option autoImplicit false universe u noncomputable section open AlgebraicGeometry CategoryTheory WeierstrassProjModel MvPolynomial HomogeneousLocalization open HomogeneousIdealQuotientGrading attribute [local instance] MvPolynomial.gradedAlgebra namespace WeierstrassCurve.DrinfeldGlobal variable {T : Type u} [CommRing T] (W : WeierstrassCurve.Projective T) abbrev ZChartRing : Type u := Away (projModelGradingCR W) (coord W 2) abbrev zChartι : Spec (CommRingCat.of (ZChartRing W)) ⟶ projModelCR W := Proj.awayι (projModelGradingCR W) (coord W 2) (coord_mem W 2) one_pos def xOverZ : ZChartRing W := Away.mk (projModelGradingCR W) (coord_mem W 2) 1 (coord W 0) (by simpa using coord_mem W 0) def yOverZ : ZChartRing W := Away.mk (projModelGradingCR W) (coord_mem W 2) 1 (coord W 1) (by simpa using coord_mem W 1) variable {W} def IsZChartSection (S : Section W) (χ : ZChartRing W →+* T) : Prop := S.1 = Spec.map (CommRingCat.ofHom χ) ≫ zChartι W def affX (χ : ZChartRing W →+* T) : T := χ (xOverZ W) def affY (χ : ZChartRing W →+* T) : T := χ (yOverZ W) def IsSectionThrough (S : Section W) (x y : T) : Prop := ∃ χ : ZChartRing W →+* T, IsZChartSection S χ ∧ affX χ = x ∧ affY χ = y end WeierstrassCurve.DrinfeldGlobal end
Statements phrased using this module (148)
- Tate point of the Γ₀(M')-rigidified problem and level automorphisms
ModularCurve.FullLevel.exists_pt_forall_isLevelAutAt_map_eq_act_of_exists_ringHom_gamma0Pow_of_tate330 below · depth 29 - No q-torsion and alignment above a supersingular place
ModularCurve.FullLevel.forall_nsmul_eq_zero_and_exists_variableChange_of_over_of_eq_map_classify_rigidDataPow_of_tatePoint2,862 below · depth 29 - Rational endomorphism subring acts on the projective Weierstrass model
WeierstrassProjModel.exists_action_rationalEndSubring_of_isAlgClosed81 below · depth 29 - Coordinate-reading points evaluation for the projective Weierstrass model
WeierstrassProjModel.exists_isPointsEval_apply_eq_some_of_eq_comp_zChartInclusion91 below · depth 29 - Cusp-regular integral level-M' functions lie in the j-chart
ModularCurve.FullLevel.Diamond.coeffEmb_mem_chartAlgFin_of_cuspRegular_of_mem_integers827 below · depth 30 - One moduli place for all rigid-chart points over s
ModularCurve.FullLevel.exists_place_forall_isModuliPlaceOf_of_over_of_eq_map_classify_rigidDataPow_of_tatePoint2,858 below · depth 30 - Level automorphisms act on the Tate datum by γ-relabelling
ModularCurve.FullLevel.exists_variableChange_act_mapRing_eq_relabel_of_isLevelAutAt_of_level_fst_gamma0Pow246 below · depth 30 - Tate raw datum: weight-one twist, cusp levels, j=j(mathsf q^{qℓ})
ModularCurve.FullLevel.exists_variableChange_raw_rigidData_tate_weightOne_level_fst_gamma0Pow286 below · depth 30 - Proj of a coefficient homomorphism restricts to the Z-chart
WeierstrassCurve.DrinfeldGlobal.exists_zChartIota_comp_projMap_eq_specMap_comp_zChartIota0 below · depth 30 - Coordinate-reading points-evaluation for the projective Weierstrass model
WeierstrassProjModel.exists_isPointsEval_apply_eq_some_of_eq_comp_zChartInclusion_of_isDomain83 below · depth 30 - Rationally represented endomorphisms come from the projective Weierstrass model
WeierstrassProjModel.exists_schemeHomOver_forall_apply_eq_of_isRationallyRepresented_of_isAlgClosed75 below · depth 30 - Level automorphisms act on the Tate point by diamond relabelling
ModularCurve.FullLevel.Diamond.exists_pt_forall_isLevelAutAt_map_eq_act_of_exists_ringHom_rigidDataH1Pow_of_tate_pinGamma1350 below · depth 31 - Vanishing q-torsion and line alignment at supersingular places
ModularCurve.FullLevel.Diamond.forall_nsmul_eq_zero_and_exists_variableChange_and_inLine_of_over_of_eq_map_classify_rigidDataH1Pow_of_tatePoint_pinGamma12,852 below · depth 31 - Galois translate of the Tate point relabels its Drinfeld pair
ModularCurve.FullLevel.exists_level_snd_snd_act_mapRing_eq_relabel_gamma0Pow230 below · depth 31 - A unit μ with ⟨μ,0,0,0⟩·τ_*x having the curve of x
ModularCurve.FullLevel.exists_units_curve_act_mapRing_eq_of_isLevelAutAt_gamma0Pow147 below · depth 31 - Minimal primes of the full-level moduli ring are conjugate
ModularCurve.FullLevel.ker_classify_mem_minimalPrimes_and_forall_exists_algEquiv_comap_eq_gamma0Pow2,100 below · depth 31 - Level automorphisms fix the Γ₀-slot at the Tate point
ModularCurve.FullLevel.level_fst_act_mapRing_eq_of_curve_eq_units_of_level_fst_gamma0Pow128 below · depth 31 - Level-ℓ slot of the twisted τ-transport is the γ-relabelling
ModularCurve.FullLevel.level_snd_fst_act_mapRing_eq_relabel_gamma0Pow141 below · depth 31 - Equal floor readings and supersingular fibre force equal Γ₀(M')-class
ModularCurve.FullLevel.moduliPoint_mk_eq_of_forall_apply_qExpand_eq_of_eq_map_classify_rigidDataPow_of_tatePoint2,857 below · depth 31 - Diamond relabelling by Γ₀(M') on `rigidDataH1Pow`
ModularCurve.LevelRelabelling.exists_isModuliRelabelling_rigidDataH1Pow180 below · depth 31 - Sections of the finite chart versus affine Weierstrass points
WeierstrassCurve.DrinfeldGlobal.equation_iff_exists_isSectionThrough_and_eq_iff_of_isSectionThrough2 below · depth 31 - Sections through an independent q-torsion pair are a Drinfeld basis
WeierstrassCurve.DrinfeldGlobal.isDrinfeldBasis_of_isSectionThrough_of_torsion_basis118 below · depth 31 - A single moduli place above a supersingular place, H₁ level
ModularCurve.FullLevel.Diamond.exists_place_forall_isModuliPlaceOf_of_over_of_eq_map_classify_rigidDataH1Pow_of_tatePoint_pinGamma12,847 below · depth 32 - Level automorphism at γ⁻¹ realises the diamond relabelling
ModularCurve.FullLevel.Diamond.exists_variableChange_act_mapRing_eq_relabel_of_isLevelAutAt_of_level_fst_rigidDataH1Pow252 below · depth 32 - Tate point of the H₁ moduli problem over K
ModularCurve.FullLevel.Diamond.exists_variableChange_raw_rigidData_tate_weightOne_level_fst_rigidDataH1Pow300 below · depth 32 - Density of the classifying map at the pinned Tate point
ModularCurve.FullLevel.dense_range_classify_of_muTuple_pin_gamma0Pow722 below · depth 32 - Supersingular places read off injectively from Γ₀(M')-classes
ModularCurve.FullLevel.exists_injective_forall_place_eq_of_forall_evalAt_eq_of_eq_map_classify_rigidDataPow_of_tatePoint2,847 below · depth 32 - Level automorphisms act on the Tate point as relabelling
ModularCurve.FullLevel.exists_pt_forall_isLevelAutAt_map_eq_act_of_exists_ringHom_gamma0Pow_of_tate_of_algebra_of_isScalarTower332 below · depth 32 - Minimal primes of the full-level moduli ring as relabelling translates
ModularCurve.FullLevel.forall_exists_algEquiv_comap_ker_classify_eq_of_dense_gamma0Pow1,747 below · depth 32 - Kernel of the classifying map at j(q^{qℓ}) is minimal
ModularCurve.FullLevel.ker_classify_mem_minimalPrimes_of_jOf_eq_jqNModC_gamma0Pow104 below · depth 32 - Automorphisms of the Γ₀(M')-fibre datum over a supersingular place
ModularCurve.FullLevel.natCard_variableChange_act_curve_eq_and_level_fst_eq_eq_two_mul_placeWidthChar_of_over_of_eq_map_classify_rigidDataPow_of_tatePoint2,872 below · depth 32 - Natural [a]-multiplication on Γ₁(ℓ)-data over A-algebras
ModularCurve.LevelRelabelling.exists_natural_zsmul_gamma1Point172 below · depth 32 - Diamond invariance of the in-line product polynomial for sections
WeierstrassCurve.DrinfeldGlobal.exists_isUnit_inLineMulPoly_eq_C_mul_of_isSectionThrough_zsmulSection178 below · depth 32 - Transport along a change of variables on sections through a point
WeierstrassCurve.DrinfeldGlobal.isSectionThrough_act_of_isSectionTransport0 below · depth 32 - Sections of a transported Drinfeld pair pass through f-images
WeierstrassCurve.DrinfeldGlobal.isSectionThrough_map_of_isSectionTransport0 below · depth 32 - Integer combinations of sections pass through the combined points
WeierstrassCurve.DrinfeldGlobal.isSectionThrough_zlinComb_of_isSectionThrough86 below · depth 32 - Transported μ_{p^k} kernel has coefficients in the level-H₁ field
ModularCurve.FullLevel.Diamond.coeff_kernelVariableChangeDeg_mem_range_of_variableChange_tateToricPoint_fst_mem_range_rigidDataH1Pow58 below · depth 33 - Transport of the Drinfeld Γ(q)-pair is relabelling by γ
ModularCurve.FullLevel.Diamond.exists_level_snd_snd_act_mapRing_eq_relabel_rigidDataH1Pow236 below · depth 33 - Level automorphism rescales the Tate datum by a weight-one unit
ModularCurve.FullLevel.Diamond.exists_units_curve_act_mapRing_eq_of_isLevelAutAt_rigidDataH1Pow151 below · depth 33 - K-rationality of the weight-one twist of Tate(mathsf q^q)
ModularCurve.FullLevel.Diamond.exists_variableChange_weightOne_tateBase_mem_laurentBaseChange_and_cuspData_mem_of_exists_ringHom_pinGamma1114 below · depth 33 - Supersingular specialisations of the H₁ datum have no q-torsion
ModularCurve.FullLevel.Diamond.forall_nsmul_eq_zero_of_over_of_eq_map_classify_rigidDataH1Pow104 below · depth 33 - Γ₀(M')-component fixed by the rescaled level automorphism
ModularCurve.FullLevel.Diamond.level_fst_act_mapRing_eq_of_curve_eq_units_of_level_fst_rigidDataH1Pow14 below · depth 33 - Equal floor readings force equal Γ₀(M')-moduli class
ModularCurve.FullLevel.Diamond.moduliPoint_mk_eq_of_forall_apply_eq_of_eq_map_classify_rigidDataH1Pow_of_tatePoint_pinGamma12,846 below · depth 33 - Diamond action: Γ₁(ℓ_g)-point of the τ-transport is γ₀₀-fold
ModularCurve.FullLevel.Diamond.toPoint_level_snd_fst_act_mapRing_eq_zsmul_toPoint_of_curve_eq_units_rigidDataH1Pow142 below · depth 33 - Minimal primes of the moduli ring dominate the j-line
ModularCurve.FullLevel.comap_adjoin_jZero_eq_bot_of_mem_minimalPrimes_gamma0Pow1,397 below · depth 33 - Weil pairings separate relabelled full-level components
ModularCurve.FullLevel.det_eq_of_ker_classify_act_eq_of_relabel_gamma0Pow281 below · depth 33 - Γ₀(M')-layer lies in fractions of classify-values at the Tate point
ModularCurve.FullLevel.exists_classify_eq_of_coe_eq_qExpand_of_mem_laurentBaseChange_gamma0Pow_tatePoint456 below · depth 33 - Read place is a moduli place of the Frobenius-twisted fibre
ModularCurve.FullLevel.exists_isModuliPlaceOf_map_frobenius_of_forall_evalAt_eq_of_eq_map_classify_rigidDataPow_of_tatePoint2,828 below · depth 33 - Generic rank of the moduli component through a dense point
ModularCurve.FullLevel.finrank_fractionRing_tensorProduct_quotient_ker_classify_eq_of_dense_gamma0Pow346 below · depth 33 - Generic fibre of the full-level moduli ring: reduced, of rank ψ(M')|GL₂(𝔽_ℓ)||GL₂(𝔽_q)|/2
ModularCurve.FullLevel.isReduced_and_finrank_fractionRing_tensorProduct_levelModuliPackageAbs_eq_gamma0Pow301 below · depth 33 - Level automorphism fixing the Tate point's classifying image is trivial
ModularCurve.FullLevel.levelAut_eq_one_of_forall_apply_classify_eq_gamma0Pow_tatePoint312 below · depth 33 - Tate-curve divisibility of the level kernel into `inLineMulPoly`
ModularCurve.dvd_inLineMulPoly_of_map_eq_variableChange_tateBase_tateToricPoint_of_map_eq_kernelVariableChangeDeg19 below · depth 33 - Toric ℓ-torsion points give Γ₁(ℓ)-points on the Tate curve
ModularCurve.isGamma1Point_tateBase_tateToricPoint_of_isPrimitiveRoot17 below · depth 33 - Torsion basis at the Tate cusp pair of level q
ModularCurve.torsion_basis_of_map_eq_variableChange_tateBase_cuspData86 below · depth 33 - Non-zero multiples of an ℓ-torsion section avoid infinity
WeierstrassCurve.DrinfeldGlobal.exists_isSectionThrough_zsmulSection_of_eval_prePsi_eq_zero119 below · depth 33 - ℓ-torsion of a section versus vanishing of preΨ_ℓ
WeierstrassCurve.DrinfeldGlobal.nsmul_eq_one_iff_eval_prePsi_eq_zero_of_isSectionThrough138 below · depth 33 - Supersingular places injectively indexed by Γ₀(M')-moduli points
ModularCurve.FullLevel.Diamond.exists_injective_forall_place_eq_of_forall_evalAt_eq_of_eq_map_classify_rigidDataH1Pow_of_tatePoint_pinGamma12,836 below · depth 34 - One rational place reads all admissible functions at H₁ level
ModularCurve.FullLevel.Diamond.exists_place_forall_evalAt_eq_apply_of_eq_map_classify_rigidDataH1Pow864 below · depth 34 - Diamond action on the toric point of the Tate curve
ModularCurve.FullLevel.Diamond.toPoint_levelAut_eq_zsmul_toPoint_of_map_eq_tateToricPoint_rigidDataH1Pow141 below · depth 34 - Level automorphism relabels the Tate cusp pair by γ
ModularCurve.FullLevel.Diamond.zsmul_toPoint_add_zsmul_toPoint_eq_toPoint_levelAut_of_map_eq_cuspData_rigidDataH1Pow146 below · depth 34 - Reading admissible level-M' functions gives a κ_A-embedding
ModularCurve.FullLevel.exists_algHom_modularFunctionFieldFullC_forall_apply_residue_eq_ringHom_of_transcendental_of_tatePoint863 below · depth 34 - Frobenius twist and cyclic-quotient j at a Tate point
ModularCurve.FullLevel.exists_place_curve_reduction_eq_map_frobenius_cyclicQuotientJ_eq_of_levelAut_of_originChart_of_tatePoint2,251 below · depth 34 - Supersingular branch with second Drinfeld section at the origin
ModularCurve.FullLevel.exists_place_ringHom_chartAlgFin_residue_eq_originChart_levelAut_of_forall_nsmul_eq_zero_of_tatePoint2,365 below · depth 34 - Integrality and cusp-regularity of j(qᵈ) for d ∣ M'
ModularCurve.FullLevel.mem_integers_and_cuspRegular_qExpand_jq_of_dvd44 below · depth 34 - No minimal prime of the generic fibre is maximal
ModularCurve.FullLevel.not_isMaximal_of_mem_minimalPrimes_tensorProduct_gamma0Pow230 below · depth 34 - No first-order deformations over a transcendental j-value
ModularCurve.FullLevel.snd_apply_eq_zero_of_apply_jOf_univ_eq_dualNumber_gamma0Pow212 below · depth 34 - Equal classifying kernels give equal q-Weil pairing values
ModularCurve.LevelModuliPackageAbs.weilPairing0_drinfeld_mapRing_eq_of_ker_classify_eq_rigidDataPow254 below · depth 34 - Drinfeld basis sections factor through the affine chart
WeierstrassCurve.DrinfeldGlobal.RawDrinfeldPair.IsLevel.exists_isSectionThrough_of_isUnit99 below · depth 34 - Unit Katz independence elements for Drinfeld Γ(q)-bases
WeierstrassCurve.DrinfeldGlobal.RawDrinfeldPair.IsLevel.isUnit_indepElt_of_isSectionThrough104 below · depth 34 - Base change comparison of relative group laws on projective Weierstrass models
WeierstrassCurve.DrinfeldGlobal.exists_isPullback_comp_nsmul_isSectionThrough_iff_of_one_eq_kwZeroSect26 below · depth 34 - Weil pairing of a Drinfeld Γ(q)-basis is primitive
WeierstrassCurve.DrinfeldGlobal.isPrimitiveRoot_weilPairing0_of_isLevel_of_isSectionThrough_ed2196 below · depth 34 - Relabelled Drinfeld pair passes through explicit cusp points
ModularCurve.FullLevel.AuxLevel.exists_isSectionThrough_relabel_coe_eq_cuspData_of_dvd179 below · depth 35 - Specialisation of the H₁ chart yields a κ(A)-algebra homomorphism
ModularCurve.FullLevel.Diamond.exists_algHom_forall_apply_residue_eq_apply_of_eq_map_classify_rigidDataH1Pow859 below · depth 35 - Existence of a moduli place for the Frobenius-twisted Γ₀(M')-class
ModularCurve.FullLevel.Diamond.exists_isModuliPlaceOf_map_frobenius_of_forall_evalAt_eq_of_eq_map_classify_rigidDataH1Pow_of_tatePoint_pinGamma12,817 below · depth 35 - Tate Γ₁(ℓ_g) point identifies level automorphisms with relabelling, sub-base edition
ModularCurve.FullLevel.Diamond.exists_pt_forall_isLevelAutAt_map_eq_act_of_exists_ringHom_rigidDataH1Pow_of_tate_pinGamma1_of_isScalarTower352 below · depth 35 - Gauss nonunits lie in the supersingular maximal ideal
ModularCurve.FullLevel.Diamond.mem_of_coe_mem_nonunits_of_isMaximal_of_mem_ssJSet_chartAlgFin2,297 below · depth 35 - Specialisation of j(q^{dℓ'}) as the q-th power of a cyclic-quotient j
ModularCurve.FullLevel.apply_eq_cyclicQuotientJ_pow_of_levelAut_of_originChart_of_forall_nsmul_eq_zero_of_tatePoint2,242 below · depth 35 - Every Ω-point of the full-level moduli ring has a tangent vector
ModularCurve.FullLevel.exists_algHom_dualNumber_fst_eq_snd_ne_zero_gamma0Pow221 below · depth 35 - First Drinfeld section is the origin at the Gauss place
ModularCurve.FullLevel.exists_originChart_fst_of_forall_ringHom_eq_zero_iff_mem_nonunits_of_tatePoint23 below · depth 35 - Equal `classify` kernels give equal Drinfeld Weil pairing values
ModularCurve.LevelModuliPackageAbs.weilPairing0_drinfeld_mapRing_eq_of_ker_classify_eq_rigidDataH1Pow254 below · depth 35 - Sum of a level-ℓ section and q-torsion meets the affine chart
WeierstrassCurve.DrinfeldGlobal.exists_isSectionThrough_mul_of_isLevelPStructure_of_nsmul_eq_one121 below · depth 35 - Katz level-q data yield a Drinfeld Γ(q)-basis
WeierstrassCurve.DrinfeldGlobal.isDrinfeldBasis_of_isSectionThrough_of_isLevelPStructure175 below · depth 35 - Drinfeld Γ(q)-bases yield Katz level-q structures
WeierstrassCurve.DrinfeldGlobal.isLevelPStructure_of_isLevel_of_isSectionThrough157 below · depth 35 - Weil pairing of a Drinfeld q-basis is variable-change invariant
WeierstrassCurve.DrinfeldGlobal.weilPairing0_toPoint_variableChange_of_isLevel_of_isSectionThrough160 below · depth 35 - Supersingular maximal ideals agreeing on q-substituted functions coincide
ModularCurve.FullLevel.Diamond.eq_of_isMaximal_of_mem_ssJSet_of_forall_coe_eq_qExpand_iff_chartAlgFin2,214 below · depth 36 - Branch reading gives an embedding of the full level-M' field
ModularCurve.FullLevel.Diamond.exists_algHom_modularFunctionFieldFullC_forall_apply_residue_eq_ringHom_of_transcendental_rigidDataH1Pow_of_tatePoint_pinGamma1864 below · depth 36 - Relabelled Drinfeld pair at the Tate point, level H₁
ModularCurve.FullLevel.Diamond.exists_isSectionThrough_relabel_coe_eq_cuspData_of_dvd_rigidDataH1Pow179 below · depth 36 - Frobenius twist of the H₁ branch after place extension
ModularCurve.FullLevel.Diamond.exists_place_curve_reduction_eq_map_frobenius_cyclicQuotientJ_eq_of_levelAut_of_originChart_rigidDataH1Pow_of_tatePoint_pinGamma12,187 below · depth 36 - Branch place at a supersingular point of the H₁ chart
ModularCurve.FullLevel.Diamond.exists_place_ringHom_chartAlgFin_residue_eq_originChart_levelAut_of_forall_nsmul_eq_zero_rigidDataH1Pow_of_tatePoint_pinGamma12,343 below · depth 36 - Non-constant dual-number point yields a non-zero tangent vector
ModularCurve.FullLevel.exists_algHom_dualNumber_fst_eq_snd_ne_zero_of_exists_pt_dualNumber_gamma0Pow0 below · depth 36 - Preimage in B₀ of j(mathsf q^{qℓ'd}) as cyclic quotient j-invariant
ModularCurve.FullLevel.exists_classify_preimage_forall_apply_eq_cyclicQuotientJ_etale_of_tatePoint_gamma0Pow2,227 below · depth 36 - Non-trivial first-order deformations of full-level Weierstrass moduli points
ModularCurve.FullLevel.exists_pt_dualNumber_map_fstHom_eq_ne_map_inlAlgHom_gamma0Pow219 below · depth 36 - Étale part of the pinned Tate point descends under qmapstoq^q
ModularCurve.FullLevel.exists_raw_etale_map_eq_map_qExpand_of_tatePoint169 below · depth 36 - Transported Tate cusp pair as a q-torsion basis
ModularCurve.torsion_basis_of_map_eq_variableChange_tateBase_cuspData_of_mul_eq86 below · depth 36 - Sum of an ℓ-division point and a q-torsion section is affine
WeierstrassCurve.DrinfeldGlobal.exists_isSectionThrough_mul_of_eval_prePsi_eq_zero_of_nsmul_eq_one121 below · depth 36 - Local dichotomy for sections of a projective Weierstrass model
WeierstrassCurve.DrinfeldGlobal.exists_isSectionThrough_or_exists_reducesToOrigin0 below · depth 36 - Base change of a section through an affine point
WeierstrassCurve.DrinfeldGlobal.isSectionThrough_map_of_comp_projMap_eq_of_isCoefficientHom0 below · depth 36 - Unit difference of abscissae of distinct multiples of an ℓ-division point
WeierstrassCurve.DrinfeldGlobal.isUnit_sub_of_isSectionThrough_zsmulSection_of_eval_prePsi_eq_zero119 below · depth 36 - Specialisation of j(qᵈ) as q-th power of cyclic-quotient invariant
ModularCurve.FullLevel.Diamond.apply_eq_cyclicQuotientJ_pow_of_levelAut_of_originChart_of_forall_nsmul_eq_zero_rigidDataH1Pow_of_tatePoint_pinGamma12,178 below · depth 37 - First Drinfeld section is the origin on the Gauss branch
ModularCurve.FullLevel.Diamond.exists_originChart_fst_of_forall_ringHom_eq_zero_iff_mem_nonunits_rigidDataH1Pow_of_tatePoint_pinGamma123 below · depth 37 - Étale part of the pinned H₁ Tate point as a q-expansion
ModularCurve.FullLevel.Diamond.exists_raw_etale_map_eq_map_qExpand_of_tatePoint_pinGamma1150 below · depth 37 - Tate point: j(mathsf q^{qℓ'd}) as a cyclic quotient j-invariant
ModularCurve.FullLevel.algebraMap_jqNModC_eq_cyclicQuotientJ_of_eq_map_tatePoint_gamma0Pow153 below · depth 37 - Specialising the Tate reading of j(mathsf q^{qℓ'd}) to cyclic quotients
ModularCurve.FullLevel.apply_eq_cyclicQuotientJ_of_classify_eq_jqNModC_of_tatePoint_gamma0Pow92 below · depth 37 - Surjectivity of the Tate-point classifying map onto the j-chart algebra
ModularCurve.FullLevel.exists_clC_eq_of_mem_chartAlgFin_of_tatePoint_gamma0Pow2,211 below · depth 37 - Raw Γ₀(M')×Γ(ℓ) structure on the twisted Tate curve
ModularCurve.FullLevel.exists_variableChange_raw_etale_tate_weightOne_level_fst_gamma0Pow167 below · depth 37 - Drinfeld Γ(2)-basis: x_P-x_Q is a unit
WeierstrassCurve.DrinfeldGlobal.RawDrinfeldPair.IsLevel.isUnit_sub_of_isSectionThrough_of_two99 below · depth 37 - Lifting Drinfeld q-level structures along Ω[ε]→Ω
WeierstrassCurve.DrinfeldGlobal.exists_isLevel_and_map_fstHom_eq_dualNumber_of_isLevel202 below · depth 37 - Affine 2-torsion pair with unit x-difference gives Drinfeld basis
WeierstrassCurve.DrinfeldGlobal.isDrinfeldBasis_two_of_isSectionThrough_of_isUnit_sub166 below · depth 37 - Two-torsion criterion for a section through an affine point
WeierstrassCurve.DrinfeldGlobal.nsmul_two_eq_one_iff_of_isSectionThrough132 below · depth 37 - Classifying preimage of j(mathsf q^{qd}) computing quotient j-invariants
ModularCurve.FullLevel.Diamond.exists_classify_preimage_forall_apply_eq_cyclicQuotientJ_etale_rigidDataH1Pow_of_tatePoint_pinGamma12,170 below · depth 38 - Raw étale Γ₀(M')∩Γ₁(ℓ_g)-structure on the twisted Tate curve
ModularCurve.FullLevel.Diamond.exists_variableChange_raw_etale_tate_weightOne_level_fst_level_snd_fst_of_ker148 below · depth 38 - Full-level moduli ring has (ℓ-1)(q-1) minimal primes
ModularCurve.FullLevel.finite_minimalPrimes_and_ncard_eq_mul_of_jOf_eq_jqNModC_gamma0Pow2,099 below · depth 38 - Unique section through an affine point of the projective model
WeierstrassCurve.DrinfeldGlobal.existsUnique_isSectionThrough3 below · depth 38 - Rechartering a field point from D₊(Y) to D₊(Z)
WeierstrassCurve.DrinfeldGlobal.exists_eq_comp_zChartInclusion_of_eq_comp_originChartInclusion0 below · depth 38 - Uniqueness of small solutions of the origin-chart Weierstrass relation
WeierstrassCurve.DrinfeldGlobal.originChart_rel_unique_of_constantCoeff_eq_zero0 below · depth 38 - Tate point of the H₁ problem reads j(q^{qd})
ModularCurve.FullLevel.Diamond.algebraMap_jqNModC_eq_cyclicQuotientJ_of_eq_map_rigidDataH1Pow_of_tatePoint_pinGamma1153 below · depth 39 - Classify-preimage of j(mathsf q^{qd}) specialises to cyclic-quotient j
ModularCurve.FullLevel.Diamond.apply_eq_cyclicQuotientJ_of_classify_eq_jqNModC_rigidDataH1Pow_of_tatePoint_pinGamma192 below · depth 39 - K''-rationality of transported p^k-kernel polynomial coefficients
ModularCurve.FullLevel.Diamond.coeff_kernelVariableChangeDeg_mem_range_of_variableChange_tateToricPoint_one_fst_mem_range_of_ker58 below · depth 39 - Surjectivity of the rigid H₁ classifying map at the Tate point
ModularCurve.FullLevel.Diamond.exists_clC_eq_of_mem_chartAlgFin_rigidDataH1Pow_of_tatePoint_pinGamma12,132 below · depth 39 - Frobenius on charts gives a homomorphism of group laws
WeierstrassCurve.DrinfeldGlobal.comp_mul_eq_mul_comp_of_zChart_pow_originChart_pow30 below · depth 39 - Multiplication by q kills the kernel of Φ
WeierstrassCurve.DrinfeldGlobal.comp_schemeNsmul_eq_one_of_comp_eq_one_of_zChart_pow_originChart_pow121 below · depth 39 - Lifting a K-point in the chart D₊(Z) to a section through an affine point
WeierstrassCurve.DrinfeldGlobal.exists_isSectionThrough_of_specMap_comp_eq_zChart0 below · depth 39 - Trivialising a deformation from a q-torsion point and Frobenius
WeierstrassCurve.DrinfeldGlobal.exists_iso_projModelCR_map_map_of_frobenius_of_comp_schemeNsmul_eq_one_of_nsmul_eq_one858 below · depth 39 - Existence of relative Frobenius on the projective Weierstrass model
WeierstrassCurve.DrinfeldGlobal.exists_map_frobenius_isFinite_surjective_zChart_pow_originChart_pow13 below · depth 39 - Flatness of the relative Frobenius of a Weierstrass model
WeierstrassCurve.DrinfeldGlobal.flat_of_zChart_pow_originChart_pow_of_isArtinianRing40 below · depth 39 - Equal-rank homomorphisms with a common kernel subscheme vanish together
WeierstrassCurve.DrinfeldGlobal.comp_eq_one_iff_comp_eq_one_of_finrank_eq_of_isClosedImmersion2 below · depth 40 - Factor through a flat surjection is again a homomorphism
WeierstrassCurve.DrinfeldGlobal.comp_mul_eq_mul_comp_of_comp_eq_of_isFinite_of_flat_of_surjective0 below · depth 40 - Frobenius descent: Φ is a homomorphism of the group laws
WeierstrassCurve.DrinfeldGlobal.comp_mul_eq_mul_comp_of_comp_projMap_eq_frobenius24 below · depth 40 - Chart-wise q-power map followed by coefficient projection is absolute Frobenius
WeierstrassCurve.DrinfeldGlobal.comp_projMap_eq_frobenius_of_zChart_pow_originChart_pow7 below · depth 40 - Unique factorisation through a finite flat surjective isogeny
WeierstrassCurve.DrinfeldGlobal.existsUnique_comp_eq_of_isFinite_of_flat_of_surjective_of_forall_eq_one4 below · depth 40 - Constant Verschiebung: reduction modulo ε, then constant extension
WeierstrassCurve.DrinfeldGlobal.exists_hom_isFinite_flat_finrank_eq_of_map_map_eq_dualNumber30 below · depth 40 - Flat degree-q subscheme of ker V_q killed by g
WeierstrassCurve.DrinfeldGlobal.exists_isClosedImmersion_finrank_eq_comp_eq_comp_one_of_comp_eq_schemeNsmul_of_nsmul_eq_one32 below · depth 40 - Isomorphism between quotients with a common kernel
WeierstrassCurve.DrinfeldGlobal.exists_iso_comp_eq_of_isFinite_of_flat_of_surjective_of_forall_eq_one_iff6 below · depth 40 - Chartwise q-th-power morphism of Weierstrass models is finite and surjective
WeierstrassCurve.DrinfeldGlobal.isFinite_locallyOfFinitePresentation_surjective_of_comp_projMap_eq_frobenius_of_zChart_pow_originChart_pow11 below · depth 40 - Frobenius kernel on a Weierstrass model is finite flat of rank q
WeierstrassCurve.DrinfeldGlobal.isFinite_pullback_snd_kwZeroSect_flat_finrank_eq_of_zChart_pow_originChart_pow8 below · depth 40 - Multiplication by n is finite flat of rank n²
WeierstrassCurve.DrinfeldGlobal.isFinite_schemeNsmul_flat_surjective_finrank_eq_sq726 below · depth 40 - Chartwise q-th power map on Weierstrass models is locally quasi-finite
WeierstrassCurve.DrinfeldGlobal.locallyQuasiFinite_of_zChart_pow_originChart_pow11 below · depth 40 - Frobenius kernel killed by q: Artinian local points
WeierstrassCurve.DrinfeldGlobal.nsmul_eq_one_of_comp_eq_one_of_zChart_pow_originChart_pow_of_isArtinianRing119 below · depth 40 - Base change of a morphism of projective Weierstrass models
WeierstrassCurve.DrinfeldGlobal.exists_comp_projMap_eq_projMap_comp_isPullback_of_isCoefficientHom4 below · depth 41 - Rank q closed subscheme generated by a q-torsion section
WeierstrassCurve.DrinfeldGlobal.exists_isClosedImmersion_finrank_eq_of_nsmul_eq_one_of_not_reducesToOrigin1 below · depth 41 - Origin chart modulo ((X/Y)^q,(Z/Y)^q) is T[u]/(u^q)
WeierstrassCurve.DrinfeldGlobal.exists_ringEquiv_originChartRing_quotient_span_xOverY_pow_zOverY_pow_adjoinRoot_X_pow4 below · depth 41 - Kernel of a chartwise q-th power map is finite flat of rank q
WeierstrassCurve.DrinfeldGlobal.isFinite_pullback_snd_kwZeroSect_flat_finrank_eq_of_zChart_pow_originChart_pow_of_ringEquiv_adjoinRoot2 below · depth 41 - Multiplication by q kills nilpotent origin-chart points in characteristic q
WeierstrassCurve.DrinfeldGlobal.nsmul_eq_one_of_comp_originChartIota_of_pow_eq_zero_of_isAdicComplete118 below · depth 41 - Pole orders 2 and 3 with unit leading coefficients under a zero-preserving isomorphism
WeierstrassProjModel.coeff_laurent_zChart_of_iso_of_kwZeroSect_comp_eq8 below · depth 41 - Laurent expansion on the Z-chart and its pole filtration
WeierstrassProjModel.exists_laurent_zChartRing_filtration2 below · depth 41 - Zero-preserving isomorphism of projective models restricts to Z-charts
WeierstrassProjModel.exists_ringEquiv_zChartRing_of_iso_of_kwZeroSect_comp_eq3 below · depth 41 - Variable-change homomorphism on the Z-chart of Proj
WeierstrassProjModel.exists_zChartIota_comp_projMap_eq_specMap_comp_zChartIota_of_isVariableChangeHom0 below · depth 41 - Morphisms from a projective Weierstrass model are determined on the Z-chart
WeierstrassProjModel.hom_ext_of_zChartIota_comp_eq1 below · depth 41