Hasse's theorem: for elliptic curves over finite fields
OpenBSD.hasse_boundbirch-swinnerton-dyerelliptic-curvesfinite-fieldsnumber-theory
Let be a finite field with elements and let be an elliptic curve over , given by a Weierstrass equation with non-zero discriminant. Let denote the number of -rational points of , including the point at infinity. Then
equivalently .
This is Hasse's theorem (1933), the Riemann hypothesis for elliptic curves over finite fields. The integer is the trace of Frobenius, and the inequality says that the roots of have absolute value .
Formalization Note is a WeierstrassCurve F with [E.IsElliptic]; is Nat.card E.toAffine.Point, where Mathlib's type of points of the affine model already includes the point at infinity (the constructor zero). The field is arbitrary finite (any characteristic, including 2 and 3), with given by Nat.card F.
Preamble
import Mathlib
Formal statement
namespace BSD
theorem hasse_bound {F : Type*} [Field F] [Finite F] (E : WeierstrassCurve F) [E.IsElliptic] :
((Nat.card F : ℤ) + 1 - Nat.card E.toAffine.Point) ^ 2 ≤ 4 * Nat.card F := by sorry
end BSDSource
J. H. Silverman, The Arithmetic of Elliptic Curves, 2nd ed., GTM 106, Springer 2009, Chapter V, Theorem 1.1 (Hasse); H. Hasse, Zur Theorie der abstrakten elliptischen Funktionenkörper I–III, J. Reine Angew. Math. 175 (1936).