Definitions/Def_ModularCurve_LegendreJ.lean
The -invariant of the Legendre curve as a rational function
This module introduces a single total function. For a field K and an element t \in K, ModularCurve.legendreJ t is the element
2^{8}\,\frac{(t^{2}-t+1)^{3}}{t^{2}\,(t-1)^{2}} \in K,
written exactly as that quotient of polynomial expressions in t. Classically this is the j-invariant of the Legendre curve E_t : y^{2} = x(x-1)(x-t), equivalently of the Weierstrass model y^{2} = x^{3} - (1+t)x^{2} + t x, so that t \mapsto legendreJ t is the degree-six map from the \lambda-line to the j-line, invariant under the six substitutions t,\ 1-t,\ 1/t,\ 1/(1-t),\ t/(t-1),\ (t-1)/t.
The definition is made for an arbitrary field, with no hypothesis on t and no hypothesis on the characteristic; it is a formula, not an assertion about a curve. Since division in a Lean field is total with x/0 = 0, the value at the two points t = 0 and t = 1, where the cubic x(x-1)(x-t) acquires a double root and the Legendre curve degenerates, is 0 by that convention and carries no geometric meaning. Accordingly, results about legendreJ elsewhere in the development are stated under the hypotheses t \neq 0 and t \neq 1, which also make the denominator invertible.
Relation to Mathlib
Mathlib provides the j-invariant of a Weierstrass curve, but no dedicated function for the Legendre family; ModularCurve.legendreJ is the project's own abbreviation for the rational expression in the parameter.
Where it is used
The \lambda-to-j map is used to parametrise j-invariants of elliptic curves together with a chosen 2-torsion structure, in particular to identify the supersingular j-invariants in characteristic p as the images under legendreJ of the roots of the Deuring polynomial, which in turn feeds the mass formula for supersingular points.
References
- J. H. Silverman, The Arithmetic of Elliptic Curves, Graduate Texts in Mathematics 106, Springer, 1986, III.1
- R. Hartshorne, Algebraic Geometry, Graduate Texts in Mathematics 52, Springer, 1977, IV.4
- M. Deuring, Die Typen der Multiplikatorenringe elliptischer Funktionenkörper, Abh. Math. Sem. Univ. Hamburg 14 (1941), 197–272
References are suggested automatically and have not been individually verified.
English text generated automatically from the Lean source; the Lean statement is authoritative.
- 11 lines
- 1 declarations
- used in the statements of 14 theorems and imported by 19 proofs
- imports 0 definition modules
Source file: Definitions/Def_ModularCurve_LegendreJ.lean
Declarations
Source
import Mathlib set_option autoImplicit false namespace ModularCurve def legendreJ {K : Type*} [Field K] (t : K) : K := 2 ^ 8 * (t ^ 2 - t + 1) ^ 3 / (t ^ 2 * (t - 1) ^ 2) end ModularCurve
Statements phrased using this module (14)
- Eichler–Deuring mass formula in Hasse-invariant form
ModularCurve.sum_inv_jWidth_of_ssJSetHasse19 below · depth 15 - Hasse-supersingular j-set as image of Deuring roots
ModularCurve.ssJSetHasse_eq_image_legendreJ_toFinset6 below · depth 16 - Eichler–Deuring mass formula in Legendre–Deuring form
ModularCurve.sum_inv_jWidth_of_deuringPolynomial11 below · depth 16 - Anharmonic orbit size times j-width equals 6
ModularCurve.card_orbit_mul_jWidth2 below · depth 17 - Fibres of the Legendre j-map: the anharmonic orbit
ModularCurve.legendreJ_eq_legendreJ_iff2 below · depth 17 - Hasse-supersingular j-invariants are the j(λ) with H_q(λ)=0
ModularCurve.ssJSetHasse_eq_image_legendreJ5 below · depth 17 - Surjectivity of the Legendre j-invariant over algebraically closed fields
ModularCurve.exists_legendreJ_eq0 below · depth 18 - j(λ)=1728 exactly for λ∈{-1,2,1/2}
ModularCurve.legendreJ_eq_ofNat_iff0 below · depth 18 - Vanishing of the Legendre j-invariant
ModularCurve.legendreJ_eq_zero_iff0 below · depth 18 - Invariance of the Legendre j-map under t ↦ t⁻¹
ModularCurve.legendreJ_inv0 below · depth 18 - Invariance of the Legendre j-map under t ↦ 1-t
ModularCurve.legendreJ_one_sub0 below · depth 18 - Hasse invariant of the Legendre curve via the Deuring polynomial
WeierstrassCurve.hasseInvariant_legendreCurve0 below · depth 18 - The j-invariant of the Legendre curve
WeierstrassCurve.j_legendreCurve0 below · depth 18 - Finiteness of the Hasse-supersingular j-invariants
ModularCurve.ssJSetHasse_finite6 below · depth 19