The invariant differential of an elliptic curve #
For an elliptic curve E over a field F this file constructs the invariant differential
ω = dx / (2y + a₁x + a₃) inside the module of Kähler differentials Ω[K(E)/F] of the
function field, and proves that ω is a basis: Ω[K(E)/F] is a one-dimensional K(E)-vector
space, so every differential of K(E) is c • ω for a unique c ∈ K(E).
The imported function-field API proves that x is a separating element of K(E)/F. The general
separating-element API then says that dx is a basis of the Kähler differentials; rescaling it
by W_Y⁻¹ gives the invariant-differential basis.
Main definitions #
WeierstrassCurve.Affine.invariantDifferentialDenom: the denominator2y + a₁x + a₃.WeierstrassCurve.Affine.invariantDifferential: the invariant differentialω, as an element ofΩ[K(E)/F].WeierstrassCurve.Affine.invariantDifferentialBasis:ωas a basis ofΩ[K(E)/F].WeierstrassCurve.Affine.zsmul_invariantDifferential_eq_zero_iff: an integer multiple ofωvanishes exactly when the integer does in the base field.
Main results #
WeierstrassCurve.Affine.invariantDifferentialDenom_ne_zero: the denominator is nonzero.WeierstrassCurve.Affine.existsUnique_smul_invariantDifferential: every differential isc • ωfor a uniquec.
References #
- J. Silverman, The Arithmetic of Elliptic Curves, III.1 and III.5.
Silverman's III.1.5 says more than anything proved here: that div ω = 0, so that ω is
regular and nonvanishing at every point. This file proves that ω is a basis of
Ω[K(E)/F], which does not imply that — a nonzero rational differential may have both zeros
and poles. The divisor statement needs a pointwise regularity and nonvanishing theory not
developed here.
Provenance #
Ported from the AINTLIB HasseWeil project (Chris Birkbeck), Apache-2.0, at commit
513e83879e2f: HasseWeil/InvariantDifferential.lean (D_x_ne_zero, denom_ne_zero,
invariantDifferential and invariantDifferential_ne_zero) and
HasseWeil/FormalGroupCorrespondence.lean (kaehler_rank_one, the one-dimensionality, proved
there by the same span-of-dx argument).
The denominator 2y + a₁x + a₃ #
The denominator 2y + a₁x + a₃ of the invariant differential, as an element of K(E). It
is the value at the generic point of the partial derivative W_Y = polynomialY, which is
invariantDifferentialDenom_eq_evalEval_polynomialY;
invariantDifferentialDenom_ne_zero shows it is nonzero when E is elliptic. The converse
fails: y² = x³ over ℚ is singular, yet its W_Y = 2y is nonzero.
Equations
- E.invariantDifferentialDenom = 2 * E.genericY + (algebraMap F E.FunctionField) E.a₁ * E.genericX + (algebraMap F E.FunctionField) E.a₃
Instances For
The defining formula for invariantDifferentialDenom.
The denominator is W_Y at the generic point. This is the reading that makes it the
denominator of ω = dx / W_Y.
The denominator of the invariant differential is nonzero. It is the image of W_Y in
K(E), and W_Y is a nonzero polynomial of degree below deg W, so it survives both
F[X][Y] → F[E] and F[E] → K(E).
The invariant differential #
The invariant differential ω = dx / (2y + a₁x + a₃), as an element of Ω[K(E)/F].
Equations
Instances For
The defining formula for invariantDifferential. The definition body is not exposed, so this
equation lemma is how a consumer in another module computes with it. Not @[simp]: the point of
naming invariantDifferentialDenom is that the nonvanishing results can be stated over it, which
unfolding everywhere would defeat.
The invariant differential is nonzero as an element of Ω[K(E)/F]. It is the product of
an inverse of the nonzero denominator with dx, both nonzero.
The invariant differential spans Ω[K(E)/F]: it differs from dx by an invertible
scalar.
ω is a basis of Ω[K(E)/F], the module being one-dimensional and ω nonzero.
Equations
- E.invariantDifferentialBasis = (TauCeti.kaehlerBasisOfSeparating ⋯).unitsSMul fun (x : Unit) => Units.mk0 E.invariantDifferentialDenom⁻¹ ⋯
Instances For
The unique Unit-indexed vector of invariantDifferentialBasis is the invariant differential
ω.
Every differential of K(E) is c • ω for a unique c ∈ K(E). This is the form the
differential calculus of isogenies consumes: the pullback coefficient of an isogeny φ is the
scalar attached to φ^*ω by this statement.
An integer multiple of ω vanishes exactly when the integer does in the base field.