Documentation

LeanPool.KloostermanWeil.Stepanov.CurveCount

Adapted from Charlie Dorsey’s Apache-2.0 Weil Bounds Toolkit for Lean Pool’s module system, Mathlib version, quality requirements and compilation performance.

Counting points on a hyperelliptic curve #

Relates points on y² = f(x) to quadratic-character sums and square/nonsquare fibers. Compare Harcos (2015), equations (11)–(12), and Stepanov (1972).

The finite set of affine points on y² = f(x).

Equations
Instances For

    Fiber decomposition of the affine point count.

    The affine point count is q + ∑ χ(f(x)).

    noncomputable def KloostermanWeil.Stepanov.quadraticValueFinset {F : Type u_1} [Field F] [Fintype F] (f : Polynomial F) (a : ℤ) :

    Inputs on which the quadratic character has the specified integer value.

    Equations
    Instances For

      A quadratic-character sum is the number of square inputs minus the number of nonsquare inputs.

      Exact square-versus-nonsquare form of the affine point-count defect, equation (12) in the Stepanov proof.

      theorem KloostermanWeil.Stepanov.quadraticChar_eq_one_iff_pow_half {F : Type u_1} [Field F] [Fintype F] [DecidableEq F] (hF : ringChar F ≠ 2) (hqodd : Odd (Fintype.card F)) (z : F) :
      (quadraticChar F) z = 1 ↔ z ^ ((Fintype.card F - 1) / 2) = 1

      Euler's criterion in the exact exponent convention used by the Stepanov auxiliary polynomial.

      theorem KloostermanWeil.Stepanov.quadraticChar_eq_neg_one_iff_pow_half {F : Type u_1} [Field F] [Fintype F] [DecidableEq F] (hF : ringChar F ≠ 2) (hqodd : Odd (Fintype.card F)) (z : F) :
      (quadraticChar F) z = -1 ↔ z ^ ((Fintype.card F - 1) / 2) = -1

      The nonsquare half of Euler's criterion in the Stepanov exponent convention.

      noncomputable def KloostermanWeil.Stepanov.quadraticZeroOrValueFinset {F : Type u_1} [Field F] [Fintype F] (f : Polynomial F) (a : ℤ) :

      The union of the zero-character fiber and one prescribed character fiber, denoted N₀ + Nₐ in the source.

      Equations
      Instances For
        noncomputable def KloostermanWeil.Stepanov.stepanovValueFinset {F : Type u_1} [Field F] [Fintype F] (f : Polynomial F) (a : F) :

        The same source fiber in the power-value convention consumed by the Stepanov auxiliary polynomial.

        Equations
        Instances For

          The exact disjoint-cardinality decomposition #(N₀ ∪ Nₐ)=N₀+Nₐ.

          Euler's criterion identifies the source N₀+N₁ fiber with the power-value set used in equation (14).

          The analogous Euler-criterion bridge for the N₀+N₋₁ fiber.

          The three quadratic-character fibers partition the finite field.