Weak Mordell–Weil: is finite
OpenBSD.weak_mordell_weilLet be an elliptic curve over , given by a Weierstrass equation with rational coefficients and non-zero discriminant, and let be its group of rational points (the point at infinity together with the rational affine solutions, under chord–tangent addition).
Weak Mordell–Weil theorem. The subgroup has finite index in ; equivalently, the quotient is finite.
In Lean, is the range of the doubling homomorphism nsmulAddMonoidHom 2 on W.toAffine.Point, and the conclusion is AddSubgroup.FiniteIndex of that range.
Standard proofs: (i) if has a rational -torsion point, via the -isogeny descent map , , whose image lies in the finite subgroup generated by and the primes dividing the discriminant; (ii) in general, via the Kummer map with the cubic algebra of the -division polynomial, with image in a Selmer-type group that is finite by finiteness of class groups and finite generation of -units.
Combined with the (already proved) descent theorem WeierstrassCurve.Affine.Point.addGroup_fg_of_finiteIndex, this yields Mordell's theorem BSD.mordell.
import Mathlib
namespace BSD
theorem weak_mordell_weil (W : WeierstrassCurve ℚ) [W.IsElliptic] :
(nsmulAddMonoidHom 2 : W.toAffine.Point →+ W.toAffine.Point).range.FiniteIndex := by sorry
end BSD