Definitions/Def_WeierstrassCurve_RationalEnd.lean
Rationally represented homomorphisms; rational endomorphism subring
Fix a field F, an F-algebra k which is again a field, and Weierstrass curves over F. The helper WeierstrassCurve.evalEvalBC k p x y takes p \in F[X][Y], pushes its coefficients along F \to k (via mapRingHom (algebraMap F k)) and evaluates the result at the inner variable x and the outer variable y, giving the value p(x,y) \in k.
The central predicate IsRationallyRepresented k W₁ W₂ α, for an additive homomorphism \alpha from the group of affine points of W₁.baseChange k to that of W₂.baseChange k, asserts the existence of four polynomials n_X, d_X, n_Y, d_Y \in F[X][Y] and a finite subset B \subseteq k such that for every nonsingular affine point (x,y) of W_1 over k whose abscissa satisfies x \notin B, one has d_X(x,y) \neq 0, d_Y(x,y) \neq 0, and \alpha sends that point to the affine point with coordinates \bigl(n_X(x,y)/d_X(x,y),\, n_Y(x,y)/d_Y(x,y)\bigr) — in particular \alpha is required to take an affine, not infinite, value there, and a nonsingularity witness for the image is part of the existential. Note that the exceptional set is a set of x-coordinates only.
Then rationalHomSet k W₁ W₂ is the set of additive homomorphisms that are either identically zero or rationally represented in this sense (a plain union, with no group or ring structure asserted), and rationalEndSubring k W is the subring of the ring AddMonoid.End of the k-points of W.baseChange k (multiplication being composition) generated by rationalHomSet k W W.
The accompanying lemmas record that 0 lies in rationalHomSet; that the identity is rationally represented by the quadruple (X, 1, Y, 1) with B = \varnothing, hence lies in rationalHomSet and the unit lies in rationalEndSubring; and that if \sigma : k \to k is an F-algebra map with \sigma(x) = x^q for all x, then the induced map on points is rationally represented by (X^q, 1, Y^q, 1) with B = \varnothing, so it lies in rationalEndSubring k W.
Relation to Mathlib
Mathlib supplies the ambient notions used here — WeierstrassCurve, baseChange, the group of affine points toAffine.Point, the functorial point map Affine.Point.map, and bivariate evaluation evalEval — but has no notion of isogeny, rational map or endomorphism ring of a Weierstrass curve; the predicate on homomorphisms of groups of k-points and the generated subring of AddMonoid.End are the project's own.
Where it is used
These definitions give the project a concrete, elementary substitute for \mathrm{Hom}_F(W_1,W_2) and \mathrm{End}_F(W): rationality is expressed by a quadruple of polynomials over F representing the map on all but finitely many abscissae, so that, for instance, the q-power Frobenius of a curve over a finite field is available as an element of the endomorphism subring. They are intended for use with k algebraically closed, where this set coincides with the image of the genuine F-rational homomorphisms.
References
- J. H. Silverman, The Arithmetic of Elliptic Curves, Graduate Texts in Mathematics 106, Springer, 1986, Chapter III, §4
- H. Darmon, F. Diamond and R. Taylor, Fermat's Last Theorem, in: Current Developments in Mathematics 1995, International Press, 1995, 1–154
References are suggested automatically and have not been individually verified.
English text generated automatically from the Lean source; the Lean statement is authoritative.
- 83 lines
- 10 declarations
- used in the statements of 157 theorems and imported by 164 proofs
- imports 0 definition modules
Source file: Definitions/Def_WeierstrassCurve_RationalEnd.lean
Imports
- only Mathlib
Imported by
Declarations
- def
WeierstrassCurve.evalEvalBC - def
WeierstrassCurve.IsRationallyRepresented - def
WeierstrassCurve.rationalHomSet - def
WeierstrassCurve.rationalEndSubring - theorem
WeierstrassCurve.zero_mem_rationalHomSet - theorem
WeierstrassCurve.isRationallyRepresented_id - theorem
WeierstrassCurve.isRationallyRepresented_map_of_pow - theorem
WeierstrassCurve.map_mem_rationalEndSubring_of_pow - theorem
WeierstrassCurve.one_mem_rationalEndSubring - theorem
WeierstrassCurve.id_mem_rationalHomSet
Source
import Mathlib noncomputable section open Polynomial open scoped Polynomial.Bivariate namespace WeierstrassCurve universe u v variable {F : Type u} [Field F] (k : Type v) [Field k] [Algebra F k] def evalEvalBC (p : F[X][Y]) (x y : k) : k := (p.map (mapRingHom (algebraMap F k))).evalEval x y variable [DecidableEq k] def IsRationallyRepresented (W₁ W₂ : WeierstrassCurve F) (α : (W₁.baseChange k).toAffine.Point →+ (W₂.baseChange k).toAffine.Point) : Prop := ∃ (nX dX nY dY : F[X][Y]) (B : Set k), B.Finite ∧ ∀ (x y : k) (h : (W₁.baseChange k).toAffine.Nonsingular x y), x ∉ B → evalEvalBC k dX x y ≠ 0 ∧ evalEvalBC k dY x y ≠ 0 ∧ ∃ h', α (.some x y h) = .some (evalEvalBC k nX x y / evalEvalBC k dX x y) (evalEvalBC k nY x y / evalEvalBC k dY x y) h' def rationalHomSet (W₁ W₂ : WeierstrassCurve F) : Set ((W₁.baseChange k).toAffine.Point →+ (W₂.baseChange k).toAffine.Point) := {α | α = 0 ∨ IsRationallyRepresented k W₁ W₂ α} def rationalEndSubring (W : WeierstrassCurve F) : Subring (AddMonoid.End (W.baseChange k).toAffine.Point) := Subring.closure (rationalHomSet k W W) theorem zero_mem_rationalHomSet (W₁ W₂ : WeierstrassCurve F) : (0 : (W₁.baseChange k).toAffine.Point →+ (W₂.baseChange k).toAffine.Point) ∈ rationalHomSet k W₁ W₂ := Or.inl rfl theorem isRationallyRepresented_id (W : WeierstrassCurve F) : IsRationallyRepresented k W W (AddMonoidHom.id _) := by refine ⟨C X, 1, X, 1, ∅, Set.finite_empty, fun x y h _ => ?_⟩ simp only [evalEvalBC, Polynomial.map_one, Polynomial.map_X, Polynomial.map_C, Polynomial.coe_mapRingHom, evalEval_one, evalEval_C, eval_X, evalEval_X, ne_eq, one_ne_zero, not_false_eq_true, div_one, AddMonoidHom.id_apply, true_and] exact ⟨h, trivial⟩ theorem isRationallyRepresented_map_of_pow (W : WeierstrassCurve F) (σ : k →ₐ[F] k) (q : ℕ) (hσ : ∀ x, σ x = x ^ q) : IsRationallyRepresented k W W (Affine.Point.map (W' := W) σ) := by refine ⟨C (X ^ q), 1, X ^ q, 1, ∅, Set.finite_empty, fun x y h _ => ?_⟩ have e0 : evalEvalBC k (1 : F[X][Y]) x y = 1 := by simp [evalEvalBC, Polynomial.evalEval] have e1 : evalEvalBC k (C (X ^ q) : F[X][Y]) x y / evalEvalBC k (1 : F[X][Y]) x y = σ x := by simp [evalEvalBC, Polynomial.evalEval, hσ] have e2 : evalEvalBC k (X ^ q : F[X][Y]) x y / evalEvalBC k (1 : F[X][Y]) x y = σ y := by simp [evalEvalBC, Polynomial.evalEval, hσ] refine ⟨by rw [e0]; exact one_ne_zero, by rw [e0]; exact one_ne_zero, ?_⟩ suffices H : ∀ a b : k, a = σ x → b = σ y → ∃ h', Affine.Point.map (W' := W) σ (.some x y h) = .some a b h' from H _ _ e1 e2 rintro a b rfl rfl exact ⟨_, Affine.Point.map_some σ h⟩ theorem map_mem_rationalEndSubring_of_pow (W : WeierstrassCurve F) (σ : k →ₐ[F] k) (q : ℕ) (hσ : ∀ x, σ x = x ^ q) : (Affine.Point.map (W' := W) σ : AddMonoid.End (W.baseChange k).toAffine.Point) ∈ rationalEndSubring k W := Subring.subset_closure (Or.inr (isRationallyRepresented_map_of_pow k W σ q hσ)) theorem one_mem_rationalEndSubring (W : WeierstrassCurve F) : (1 : AddMonoid.End (W.baseChange k).toAffine.Point) ∈ rationalEndSubring k W := Subring.one_mem _ theorem id_mem_rationalHomSet (W : WeierstrassCurve F) : (AddMonoidHom.id _ : (W.baseChange k).toAffine.Point →+ (W.baseChange k).toAffine.Point) ∈ rationalHomSet k W W := Or.inr (isRationallyRepresented_id k W) end WeierstrassCurve end
Statements phrased using this module (157)
- Right translation by n corresponds to Atkin–Lehner on supersingular places
CerednikDrinfeld.autOnPlaces_eq_of_isAtkinLehnerLevelAut_of_forall_toValuationSubring_eq_comap_moduliPlace575 below · depth 16 - Eichler class set bijects with level-N supersingular places
CerednikDrinfeld.exists_classSet_equiv_ssPlaces_forall_toValuationSubring_eq_comap_moduliPlace_ker726 below · depth 16 - Degeneracy inclusion is compatible with the two class-set dictionaries
CerednikDrinfeld.restrictAlong_levelAlphaC_eq_of_forall_toValuationSubring_eq_comap_moduliPlace_of_prime513 below · depth 16 - Frobenius matrix on supersingular places equals the prime Hecke matrix
CerednikDrinfeld.ssFrobMatrixC_apply_eq_classSetHeckeMatrix_primeHeckeSet_of_forall_toValuationSubring_eq_comap_moduliPlace528 below · depth 16 - Supersingular U_ℓ matrix equals class-set Hecke matrix, ℓ ∣ N
CerednikDrinfeld.ssHeckeMatrixC_apply_eq_classSetHeckeMatrix_levelHeckeUSet_of_dvd_of_forall_toValuationSubring_eq_comap_moduliPlace_of_five_le1,082 below · depth 16 - Supersingular Hecke matrix equals the Brandt matrix at ℓ
CerednikDrinfeld.ssHeckeMatrixC_apply_eq_classSetHeckeMatrix_primeHeckeSet_of_forall_toValuationSubring_eq_comap_moduliPlace593 below · depth 16 - Place width equals class weight at level Nq
CerednikDrinfeld.toPNat_placeWidth_eq_classWeight_of_forall_toValuationSubring_eq_comap_moduliPlace623 below · depth 16 - Normalised connecting idele between two maximal orders
QuaternionAlgebra.exists_conjByFiniteIdele_eq_mem_finiteAdeleBox_smul_inv_mem_of_relIndex_eq30 below · depth 16 - Normal form n=n₀z for a level-Nq Eichler idele
QuaternionAlgebra.exists_eq_mul_mem_primeHeckeSet_mem_normalizer_meetOrder_eq_of_isEichlerOrder_meetOrder33 below · depth 16 - A q-sandwich bound for prime Hecke elements
QuaternionAlgebra.smul_inv_mul_mem_finiteAdeleBox_of_mem_primeHeckeSet_of_inv_mul_mul_mem3 below · depth 16 - Rationally represented homomorphisms are closed under addition
WeierstrassCurve.add_mem_rationalHomSet0 below · depth 16 - Rational dual isogeny with integral trace
WeierstrassCurve.exists_mem_rationalHomSet_isDualPair_and_add_eq_smul_id13 below · depth 16 - Deuring surjectivity: every maximal order is a supersingular endomorphism ring
WeierstrassCurve.exists_supersingular_rationalEndSubring_range_eq_of_isMaximalOrder770 below · depth 16 - Endomorphism with β²-sβ+2=0 is Vélu's 2-isogeny
WeierstrassCurve.exists_variableChange_smul_eq_veluQuotient2_forall_apply_eq_of_comp_self_add_two_smul_eq_smul38 below · depth 16 - Deuring's first step: β equals Vélu's quotient map up to coordinate change
WeierstrassCurve.exists_variableChange_smul_eq_veluQuotient_forall_apply_eq_of_comp_self_add_smul_eq_smul88 below · depth 16 - Finiteness of the units of End of an elliptic curve
WeierstrassCurve.finite_rationalHomSet_units2 below · depth 16 - Nonzero rational homomorphisms of elliptic curves are surjective
WeierstrassCurve.surjective_of_mem_rationalHomSet0 below · depth 16 - Deuring correspondence: equal idèle classes iff isomorphic curves
CerednikDrinfeld.classSet_mk_eq_iff_nonempty_variableChange_of_kernelIdealSet115 below · depth 17 - Level-one Deuring correspondence with Brandt matrices
CerednikDrinfeld.exists_classSet_equiv_ssPlaces_one_kernelIdealSet_of_rationalEndSubring721 below · depth 17 - Kernel-ideal realisation of xg by an isogeny from W
CerednikDrinfeld.exists_dualPair_image_kernelIdealSet_comp_eq_star_smul_ofFiniteIdele_mul_of_mem_finiteAdeleBox100 below · depth 17 - Type-m sublattices of Iₓ and cyclic N-subgroups of W
CerednikDrinfeld.exists_equiv_ofFiniteIdele_mul_isAddCyclic_forall_ker_eq_of_kernelIdealSet_comp_eq194 below · depth 17 - Realisation of finite idele classes by cyclic N-isogenies
CerednikDrinfeld.exists_kernelIdealSet_realisation_isAddCyclic_ker_of_inf_conjByFiniteIdele173 below · depth 17 - Unit translate of lattices iff isomorphic pairs (W,kerψ)
CerednikDrinfeld.exists_smul_eq_iff_exists_ker_eq_map_of_comp_eq_smul_id_of_card_ker_eq182 below · depth 17 - Kernel ideal of an intermediate quotient, coprime case
CerednikDrinfeld.image_kernelIdealSet_comp_eq_of_ker_eq_div_nsmul_ker_of_coprime11 below · depth 17 - Kernel-ideal transport along a Hecke idele at q
CerednikDrinfeld.image_kernelIdealSet_comp_eq_star_smul_ofFiniteIdele_mul_and_exists_dualPair_ker_eq_map_of_meetOrder_eq_of_conjByFiniteIdele_eq113 below · depth 17 - Frobenius twist shifts the kernel ideal by P
CerednikDrinfeld.image_kernelIdealSet_ratPointHom_frobenius_comp_eq_star_smul_ofFiniteIdele_mul50 below · depth 17 - Units of a conjugated Eichler order count automorphisms preserving kerψ
CerednikDrinfeld.natCard_isUnitOf_conjByFiniteIdele_eq_natCard_rationalAut_map_ker_eq_of_image_kernelIdealSet_comp_eq216 below · depth 17 - Squared isogeny degree equals the relative index of kernel ideals
CerednikDrinfeld.natCard_ker_sq_eq_relIndex_ofFiniteIdele_mul_of_image_kernelIdealSet_comp_eq106 below · depth 17 - Brandt U_ℓ count at a prime dividing the level
CerednikDrinfeld.natCard_ofFiniteIdele_levelHeckeUSet_eq_natCard_subgroup_dualPair_ker_of_dvd_of_inf_conjByFiniteIdele191 below · depth 17 - Level-N Brandt count equals enhanced supersingular ℓ-isogeny count
CerednikDrinfeld.natCard_ofFiniteIdele_primeHeckeSet_eq_natCard_subgroup_dualPair_ker_of_inf_conjByFiniteIdele176 below · depth 17 - Geometric Frobenius carries the place of (W,C) to that of its twist
ModularCurve.frobOnPlacesGeomLevel_toValuationSubring_eq_comap_moduliPlace_map_frobenius413 below · depth 17 - Supersingular Hecke entry at ℓ∣ N counts ℓ-isogenies
ModularCurve.ssHeckeMatrixC_apply_eq_natCard_subgroup_dualPair_of_dvd_of_five_le_of_moduliPlace961 below · depth 17 - Supersingular Hecke matrix entries count ℓ-isogenies preserving Γ₀(N)-structure
ModularCurve.ssHeckeMatrixC_apply_eq_natCard_subgroup_dualPair_of_moduliPlace473 below · depth 17 - Twice the width of a moduli place counts level-preserving automorphisms
ModularCurve.two_mul_placeWidth_eq_natCard_rationalAut_map_eq_of_toValuationSubring_eq_comap_moduliPlace431 below · depth 17 - Ramified-prime Hecke idele: its lattice and commutation with the level
QuaternionAlgebra.IsMaximalOrder.mem_ofFiniteIdele_iff_and_ofFiniteIdele_mul_mul_eq_of_mem_primeHeckeSet_of_finiteAdeleEvalAt_eq_one13 below · depth 17 - Connecting idele of an Eichler order of level N has index N²
QuaternionAlgebra.relIndex_ofFiniteIdele_mul_eq_sq_of_mem_finiteAdeleBox_of_relIndex_inf_conjByFiniteIdele_eq38 below · depth 17 - Rationally represented point maps are closed under composition
WeierstrassCurve.comp_mem_rationalHomSet0 below · depth 17 - Existence of dual endomorphisms in the rational endomorphism subring
WeierstrassCurve.dualIsogenyExistence_rationalEndSubring11 below · depth 17 - Vélu's 2-isogeny: rationality, dual isogeny and factorisation
WeierstrassCurve.exists_coe_eq_veluPointMap2_and_mem_rationalHomSet_and_comp_eq_two_smul18 below · depth 17 - Frobenius twist of a dual pair of isogenies
WeierstrassCurve.exists_frobenius_conjugate_dualPair_mem_rationalHomSet0 below · depth 17 - Kernel ideals and endomorphism rings via finite idèles
WeierstrassCurve.exists_image_kernelIdealSet_eq_star_smul_ofFiniteIdele_and_range_eq_conjByFiniteIdele205 below · depth 17 - Deuring: supersingular endomorphism ring is a maximal order
WeierstrassCurve.exists_isMaximalOrder_range_eq_rationalEndSubring_of_isDefiniteRamifiedExactlyAt185 below · depth 17 - Rational homomorphism killing N-torsion is N times one
WeierstrassCurve.exists_mem_rationalHomSet_eq_smul_of_forall_smul_eq_zero6 below · depth 17 - Vélu quotient with prescribed kernel and its universal property
WeierstrassCurve.exists_mem_rationalHomSet_ker_eq_forall_exists_eq_comp79 below · depth 17 - Supersingular elliptic curves in characteristic p are isogenous
WeierstrassCurve.exists_ne_zero_mem_rationalHomSet_of_forall_nsmul_char_eq_zero336 below · depth 17 - Polynomial form of an injective rational homomorphism
WeierstrassCurve.exists_polynomial_rep_of_injective_of_mem_rationalHomSet0 below · depth 17 - Isomorphism of enhanced curves via rational maps or variable change
WeierstrassCurve.exists_rationalHomSet_comp_eq_id_map_eq_iff_exists_variableChange_smul_eq9 below · depth 17 - Atkin–Lehner automorphism transports moduli places along a q-isogeny
WeierstrassCurve.exists_rationalHom_ker_eq_zmultiples_toValuationSubring_autOnPlaces_eq_comap_moduliPlace_map_sup_ker_nsmul480 below · depth 17 - Supersingular curve with level structure and odd-degree s-power endomorphism
WeierstrassCurve.exists_supersingular_endomorphism_natCard_ker_eq_odd_pow_stabilizing_cyclic227 below · depth 17 - Invertible rational homomorphisms arise from variable changes
WeierstrassCurve.exists_variableChange_forall_eq_equivOfVariableChangeEq_of_comp_eq_id2 below · depth 17 - Universality of the ℓ-isogeny quotient with level structure
WeierstrassCurve.exists_variableChange_heq_vcInvFun_iff_exists_dualPair14 below · depth 17 - Vanishing q'-torsion transfers along a nonzero rational homomorphism
WeierstrassCurve.forall_smul_eq_zero_of_mem_rationalHomSet_of_forall_smul_eq_zero16 below · depth 17 - Primitive endomorphism with X²-sX+m has cyclic kernel of order m
WeierstrassCurve.isAddCyclic_ker_and_card_ker_eq_of_comp_self_add_smul_eq_smul19 below · depth 17 - Vélu's quotient map is rational and universal
WeierstrassCurve.veluPointHom_mem_rationalHomSet_and_exists_mem_rationalHomSet_comp_eq6 below · depth 17 - Every finite idèle class arises as a kernel ideal
CerednikDrinfeld.exists_kernelIdealSet_eq_star_smul_ofFiniteIdele128 below · depth 18 - Kernel ideal of ψ∘χ as an adelic lattice
CerednikDrinfeld.exists_mem_finiteAdeleBox_image_kernelIdealSet_comp_eq_star_smul_ofFiniteIdele_mul_of_dualPair130 below · depth 18 - Deuring's isomorphism criterion with markings and level transport
CerednikDrinfeld.exists_mem_rationalHomSet_comp_eq_id_forall_mem_ker_of_image_kernelIdealSet_eq_image_mul115 below · depth 18 - Endomorphism ring of an isogenous curve as left order
CerednikDrinfeld.exists_ringHom_range_eq_conjByFiniteIdele_forall_apply_eq_mul_of_image_kernelIdealSet_eq213 below · depth 18 - Isomorphic targets give kernel ideals differing by a unit
CerednikDrinfeld.exists_units_image_kernelIdealSet_eq_image_mul_of_exists_variableChange18 below · depth 18 - Isomorphic enhanced curves give kernel-ideal pairs differing by a unit
CerednikDrinfeld.exists_units_image_kernelIdealSet_pair_eq_image_mul_of_comp_eq_id_forall_mem_ker176 below · depth 18 - One prime Hecke step in the kernel-ideal dictionary
CerednikDrinfeld.forall_exists_natCard_eq_image_setOf_comp_eq_star_smul_ofFiniteIdele_mul_of_mem_primeHeckeSet29 below · depth 18 - Deuring: Frobenius kernel ideal is the prime above q'
CerednikDrinfeld.image_kernelIdealSet_ratPointHom_frobenius_eq_setOf_padicValRat_nrd28 below · depth 18 - Cyclic kernel versus primitivity of the idele g
CerednikDrinfeld.isAddCyclic_ker_iff_forall_inv_smul_not_mem_finiteAdeleBox_of_image_kernelIdealSet_comp_eq106 below · depth 18 - Primitivity of g forces cyclic kernel for ψ
CerednikDrinfeld.isAddCyclic_ker_of_forall_inv_smul_not_mem_finiteAdeleBox_of_image_kernelIdealSet_comp_eq26 below · depth 18 - Prime-ℓ Hecke sub-ideals versus dual-pair ℓ-isogeny kernels
CerednikDrinfeld.natCard_subideal_primeHeckeSet_eq_natCard_subgroup_dualPair_of_kernelIdealSet168 below · depth 18 - Ramification-weighted Hecke fibres count cyclic ℓ-overgroups with dual pairs
ModularCurve.finsum_ramificationIndexAlong_heckeAlphaC_eq_natCard_overgroup_dualPair_of_moduliPlace463 below · depth 18 - Level-one supersingular Hecke entry counts ℓ-isogeny kernels
ModularCurve.ssHeckeMatrixC_one_apply_eq_natCard_subgroup_dualPair487 below · depth 18 - Primitivity of a normalised connecting idele at level N
QuaternionAlgebra.forall_inv_smul_not_mem_finiteAdeleBox_of_mem_of_smul_inv_mem_of_relIndex_inf_conjByFiniteIdele_eq33 below · depth 18 - Deuring's theorem on supersingular endomorphism rings
WeierstrassCurve.exists_isDefiniteRamifiedExactlyAt_isMaximalOrder_range_eq_rationalEndSubring177 below · depth 18 - Existence of a dual pair for rational homomorphisms
WeierstrassCurve.exists_isDualPair_of_mem_rationalHomSet15 below · depth 18 - Lifting a variable change of the reduced model
WeierstrassCurve.exists_map_residue_eq_and_reduceHom_comp_eq_of_variableChange_smul_eq0 below · depth 18 - Variable change as mutually inverse rational homomorphisms
WeierstrassCurve.exists_mem_rationalHomSet_apply_eq_equivOfVariableChangeEq1 below · depth 18 - Rational homomorphisms extend from k₀-points to k-points
WeierstrassCurve.exists_mem_rationalHomSet_apply_map_eq_map_apply0 below · depth 18 - Rational homomorphisms separate ℓ-torsion under quaternionic endomorphisms
WeierstrassCurve.exists_mem_rationalHomSet_apply_ne_zero_of_prime_nsmul_eq_zero22 below · depth 18 - Rational factorisation of a homomorphism through a separable isogeny
WeierstrassCurve.exists_mem_rationalHomSet_comp_eq_of_ker_le_of_separable2 below · depth 18 - Factorisation through an isogeny with contained kernel and p^e-abscissae
WeierstrassCurve.exists_mem_rationalHomSet_comp_eq_of_ker_le_of_xCoord_expand5 below · depth 18 - Supersingular curves admit an endomorphism with square -pm²
WeierstrassCurve.exists_mem_rationalHomSet_comp_self_add_char_mul_sq_smul_id_eq_zero104 below · depth 18 - Dividing a quadratic endomorphism by N along a separable isogeny
WeierstrassCurve.exists_mem_rationalHomSet_comp_self_add_smul_eq_smul_of_natCast_mul88 below · depth 18 - Reduction of geometric homomorphisms at good reduction
WeierstrassCurve.exists_mem_rationalHomSet_reduceHom_comp_eq_comp_reduceHom6 below · depth 18 - Deuring: β-[k₀] is p times an endomorphism
WeierstrassCurve.exists_mem_rationalHomSet_sub_smul_id_eq_char_smul_of_dvd_of_sq_dvd17 below · depth 18 - Separable rational homomorphism onto a supersingular curve
WeierstrassCurve.exists_mem_rationalHomSet_wronskian_ne_zero_of_forall_nsmul_eq_zero108 below · depth 18 - Isogeny of elliptic curves with the same quadratic multiplication
WeierstrassCurve.exists_ne_zero_mem_rationalHomSet_of_comp_self_add_smul_eq_smul26 below · depth 18 - Quotient by a finite subgroup: dual pair and kernel ideal
WeierstrassCurve.exists_quotient_dualPair_kernelIdealSet_comp_eq89 below · depth 18 - Supersingular [p] is Frobenius squared up to isomorphism
WeierstrassCurve.exists_ratPointHom_frobenius_comp_ratPointHom_frobenius_eq_comp_nsmul_of_forall_nsmul_eq_zero12 below · depth 18 - Mutually inverse rational maps give an F-variable change
WeierstrassCurve.exists_variableChange_of_comp_eq_id_of_mem_rationalHomSet1 below · depth 18 - Rational isomorphisms of elliptic curves are variable changes
WeierstrassCurve.exists_variableChange_smul_eq_and_apply_some_eq_of_comp_eq_id_of_mem_rationalHomSet1 below · depth 18 - Deuring's lifting theorem for curves with an endomorphism
WeierstrassCurve.exists_variableChange_smul_eq_and_reduceHom_comp_eq_comp_reduceHom_of_mem_rationalHomSet313 below · depth 18 - Abscissa of a rational additive map depends only on x
WeierstrassCurve.exists_xCoord_rep_of_mem_rationalHomSet1 below · depth 18 - Deuring: supersingular rational endomorphism ring has ℤ-rank four
WeierstrassCurve.free_and_finrank_rationalEndSubring_eq_four86 below · depth 18 - The subring generated by rational endomorphisms is already the set of rational endomorphisms
WeierstrassCurve.mem_rationalEndSubring_iff_mem_rationalHomSet3 below · depth 18 - Automorphism-weighted symmetry of the ℓ-isogeny correspondence
WeierstrassCurve.natCard_rationalAut_mul_natCard_overgroup_dualPair_eq_natCard_rationalAut_mul_natCard_subgroup_dualPair12 below · depth 18 - Negation preserves rationally represented homomorphisms
WeierstrassCurve.neg_mem_rationalHomSet0 below · depth 18 - Stabiliser of an elliptic Weierstrass curve as unit group
WeierstrassCurve.nonempty_stabilizer_variableChange_mulEquiv_units_rationalEndSubring4 below · depth 18 - Kernel-ideal dictionary at ℓ for Hom(W,X₀)
WeierstrassCurve.relIndex_annihilator_eq_sq_natCard_and_mem_of_forall_apply_torsion_eq_zero20 below · depth 18 - Kernel ideal of Frobenius is the prime above q'
CerednikDrinfeld.exists_injective_mem_rationalHomSet_kernelIdealSet_eq_nrd_dvd28 below · depth 19 - Rational homomorphisms of lattice curves lift to z ↦ az
PeriodPair.exists_forall_apply_toPoint_eq_toPoint_mul_of_mem_rationalHomSet2 below · depth 19 - Lattice multipliers give rational homomorphisms of Weierstrass curves
PeriodPair.exists_mem_rationalHomSet_forall_apply_toPoint_eq_toPoint_mul2 below · depth 19 - Integral right ideals split off a power of the ramified prime
QuaternionAlgebra.IsMaximalOrder.exists_ofFiniteIdele_eq_inf_setOf_le_padicValRat_nrd14 below · depth 19 - Anticommuting pair of rational endomorphisms when Frobenius is an integer
WeierstrassCurve.exists_anticommuting_pair_mem_rationalHomSet_of_frobenius_eq_smul84 below · depth 19 - p-saturation of integral rational endomorphisms (Deuring)
WeierstrassCurve.exists_eq_char_smul_of_sq_sub_smul_add_smul_eq_zero_rationalEndSubring18 below · depth 19 - Rational factorisation up to Frobenius twist
WeierstrassCurve.exists_frobenius_comp_rational_of_comp_eq_of_mem_rationalHomSet3 below · depth 19 - Homomorphisms of elliptic curves do not grow under algebraically closed extensions
WeierstrassCurve.exists_mem_rationalHomSet_apply_map_eq_map_apply_of_mem_rationalHomSet_baseChange1 below · depth 19 - Lifting ℓ-torsion homomorphisms to rational homomorphisms W→ X₀
WeierstrassCurve.exists_mem_rationalHomSet_forall_torsionBy_apply_eq_of_rationalEndSubring_range_eq_quaternionOrder20 below · depth 19 - Vélu quotient by a finite subgroup and its kernel ideal
WeierstrassCurve.exists_mem_rationalHomSet_ker_eq_and_forall_comp_and_kernelIdealSet_eq81 below · depth 19 - Deuring's criterion: endomorphism with p ∣ q, p ∤ t forces ordinarity
WeierstrassCurve.exists_ne_zero_and_char_nsmul_eq_zero_of_comp_self_add_smul_eq_smul_of_dvd_of_not_dvd20 below · depth 19 - Rational Verschiebung: [p] via F-rational functions of (xᵖ,yᵖ)
WeierstrassCurve.exists_rational_verschiebung_of_charP9 below · depth 19 - Deuring lifting for an endomorphism with order maximal at p
WeierstrassCurve.exists_variableChange_smul_eq_and_reduceHom_comp_eq_comp_reduceHom_of_comp_self_add_smul_eq_smul311 below · depth 19 - The rational endomorphism ring of an elliptic curve is a domain
WeierstrassCurve.isDomain_rationalEndSubring3 below · depth 19 - Left ideals of supersingular endomorphism rings are kernel ideals
WeierstrassCurve.mem_ideal_rationalEndSubring_of_forall_apply_eq_zero15 below · depth 19 - ℤ_ℓotimesEnd(X)≅ M₂(ℤ_ℓ) for supersingular X
WeierstrassCurve.nonempty_padicInt_tensorProduct_rationalEndSubring_algEquiv_matrix147 below · depth 19 - Integral Frobenius forces a non-commuting pair of rational endomorphisms
WeierstrassCurve.exists_comp_ne_comp_of_frobenius_eq_smul76 below · depth 20 - Reduction detects divisibility of rational homomorphisms by n
WeierstrassCurve.exists_mem_rationalHomSet_eq_smul_of_forall_reduceHom_apply_eq_zero7 below · depth 20 - Supersingular curves descend to a finite field with integral Frobenius
WeierstrassCurve.exists_subfield_model_frobenius_eq_smul_rationalEndSubring_equiv12 below · depth 20 - Deuring lifting over the Witt disc
WeierstrassCurve.exists_valuationSubring_residueField_equiv_and_reduceHom_comp_eq_of_isAlgClosed_of_comp_self_add_smul_eq_smul246 below · depth 20 - Algebraisation over ℚ̄ of a lifted endomorphism
WeierstrassCurve.exists_valuationSubring_variableChange_smul_eq_and_ratPointHom_reduceHom_comp_eq_of_isAlgebraic_j8 below · depth 20 - Halving a lift of an endomorphism at a place above 2
WeierstrassCurve.exists_variableChange_smul_eq_and_reduceHom_comp_eq_of_exists_reduceHom_comp_eq_two_smul_of_charP_two156 below · depth 20 - Tate's theorem for T_ℓ when t²=4q
WeierstrassCurve.tateModule_end_eq_sum_smul_of_frobenius_equivariant_of_sq_eq138 below · depth 20 - Tate's theorem for T_ℓ: non-scalar Frobenius case
WeierstrassCurve.tateModule_end_eq_sum_smul_of_frobenius_equivariant_of_sq_ne65 below · depth 20 - Conjugation by an isogeny agrees with Frobenius transport
WeierstrassCurve.comp_ratPointHom_iterateFrobenius_eq_of_comp_eq_comp19 below · depth 21 - Rigidity: an automorphism fixing the N-torsion is the identity
WeierstrassCurve.eq_id_of_comp_eq_id_of_forall_torsion_apply_eq_self22 below · depth 21 - Automorphism fixing the 2-torsion is ± 1
WeierstrassCurve.eq_id_or_eq_neg_id_of_comp_eq_id_of_forall_two_torsion_apply_eq_self23 below · depth 21 - Rational isogeny with rational dual killing a Frobenius-stable ℓ-subgroup
WeierstrassCurve.exists_mem_rationalHomSet_ker_eq_zmultiples_of_map_mem_zmultiples64 below · depth 21 - Ascending a 2-isogeny: halving an endomorphism γ
WeierstrassCurve.exists_mem_rationalHomSet_two_smul_comp_eq_comp_of_comp_self_add_smul_eq_smul88 below · depth 21 - Removing a Frobenius twist from a lifting statement at a place
WeierstrassCurve.exists_reduceHom_comp_eq_of_exists_reduceHom_comp_eq_map_iterateFrobenius4 below · depth 21 - Rational endomorphism subring is invariant under variable change
WeierstrassCurve.exists_ringEquiv_rationalEndSubring_apply_eq_of_variableChange_smul_eq0 below · depth 21 - Rational endomorphisms with equal cyclic kernel differ by an automorphism
WeierstrassCurve.exists_unit_rationalHomSet_comp_eq_of_ker_le_of_comp_eq_smul_id85 below · depth 21 - Frobenius acting as an integer descends all endomorphisms
WeierstrassCurve.rationalEndSubring_baseChange_eq_of_frobenius_eq_smul8 below · depth 21 - Commutativity of rational endomorphisms of an ordinary curve
WeierstrassCurve.comp_eq_comp_of_mem_rationalHomSet_of_char_nsmul_eq_zero18 below · depth 22 - Descent of Frobenius-equivariant homomorphisms to a finite field
WeierstrassCurve.mem_rationalHomSet_of_mem_rationalHomSet_baseChange_of_forall_apply_smul7 below · depth 22 - Decomposition order at a supersingular point equals #Aut(E,C)
ModularCurve.FullLevel.rigidChart_decompositionOrder_eq_natCard_rationalAut_of_moduliPlace_of_decompositionUnique_linkedScalars2,907 below · depth 28 - Twice the characteristic width of a moduli place counts level-preserving automorphisms
ModularCurve.two_mul_placeWidthChar_eq_natCard_rationalAut_map_eq_of_toValuationSubring_eq_comap_moduliPlace432 below · depth 28 - Decomposition order equals the number of rational automorphisms of (E,C)
ModularCurve.FullLevel.Diamond.rigidChart_decompositionOrder_eq_natCard_rationalAut_of_moduliPlace_of_decompositionUnique_linkedScalars_of_eq_three_of_dvd2,897 below · depth 29 - Twice the decomposition order counts automorphisms of (E,Cyc), q=2
ModularCurve.FullLevel.Diamond.two_mul_rigidChart_decompositionOrder_eq_natCard_rationalAut_of_moduliPlace_of_decompositionUnique_linkedScalars_of_eq_two_of_dvd2,897 below · depth 29 - Level-automorphism stabiliser of y counts Aut(E,Cyc)
ModularCurve.FullLevel.natCard_levelAut_stabilizer_eq_natCard_rationalAut_of_moduliPlace2,904 below · depth 29 - Level automorphisms: stabilising Wₜ iff fixing the chart point
ModularCurve.FullLevel.rigidChart_decompositionAut_iff_fixesPoint_linkedScalars0 below · depth 29 - Exactly n level automorphisms stabilise the exceptional valuation ring
ModularCurve.FullLevel.rigidChart_natCard_decompositionAut_eq_linkedScalars64 below · depth 29 - Moduli place width counts automorphisms of (W,C), all characteristics
ModularCurve.two_mul_placeWidthChar_eq_natCard_rationalAut_map_eq_of_toValuationSubring_eq_comap_moduliPlace_of_prime434 below · depth 29 - Rational endomorphism subring acts on the projective Weierstrass model
WeierstrassProjModel.exists_action_rationalEndSubring_of_isAlgClosed81 below · depth 29 - Level-automorphism stabiliser equals rational automorphism count, q=3
ModularCurve.FullLevel.Diamond.natCard_levelAut_stabilizer_eq_natCard_rationalAut_of_moduliPlace_of_eq_three_of_dvd2,894 below · depth 30 - Stabilising the exceptional valuation iff fixing the supersingular point (q=3)
ModularCurve.FullLevel.Diamond.rigidChart_decompositionAut_iff_fixesPoint_linkedScalars_of_eq_three_of_dvd0 below · depth 30 - Stabilising the exceptional valuation iff fixing the supersingular point (q=2)
ModularCurve.FullLevel.Diamond.rigidChart_decompositionAut_iff_fixesPoint_linkedScalars_of_eq_two_of_dvd0 below · depth 30 - Exactly n level automorphisms stabilise the exceptional valuation, q=3
ModularCurve.FullLevel.Diamond.rigidChart_natCard_decompositionAut_eq_linkedScalars_of_eq_three_of_dvd31 below · depth 30 - Exactly n chart-stabilising level automorphisms at q=2
ModularCurve.FullLevel.Diamond.rigidChart_natCard_decompositionAut_eq_linkedScalars_of_eq_two_of_dvd31 below · depth 30 - Stabiliser of a supersingular point versus Aut(E,C) at q=2
ModularCurve.FullLevel.Diamond.two_mul_natCard_levelAut_stabilizer_eq_natCard_rationalAut_of_moduliPlace_of_eq_two_of_dvd2,894 below · depth 30 - Supersingular fibre count times #Aut(E,Cyc) equals #SL₂(ℤ/ℓ')
ModularCurve.FullLevel.natCard_isMaximal_over_mul_natCard_rationalAut_eq_natCard_specialLinearGroup_of_moduliPlace2,896 below · depth 30 - Orbit–stabiliser count for level automorphisms at a supersingular point
ModularCurve.FullLevel.natCard_levelAut_attached_eq_natCard_isMaximal_over_mul_natCard_stabilizer2,871 below · depth 30 - Level automorphisms attached to Γ(q)∩Γ₀(M') number #SL₂(ℤ/ℓ')
ModularCurve.FullLevel.natCard_levelAut_attached_eq_natCard_specialLinearGroup_zmod414 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 - Model-fixing coordinate changes versus rational automorphisms preserving ⟨ g⟩
ModularCurve.natCard_variableChange_smul_eq_and_kernelVariableChangeDeg_eq_eq_natCard_rationalAut_map_zmultiples_eq22 below · depth 33 - Kernel tuple fixed iff the cyclic subgroup is preserved
ModularCurve.forall_kernelVariableChangeDeg_eq_iff_image_equivOfVariableChangeEq_zmultiples_eq17 below · depth 34
… and 7 more statements (search for the module name to find them).