Documentation

LeanPool.KasamiCyclicAdditive.Geometry.PointFrobenius

Frobenius as a group endomorphism of the Fermat cubic, and its kernel #

This file supplies the two pieces of infrastructure that the geometric bridging statements of Assembly/GeometricChain.lean need but that no other module provides.

  1. Frobenius as an endomorphism. frobPt is the squaring map π on (fer K).toAffine.Point, packaged as an AddMonoidHom. It is obtained from Mathlib's WeierstrassCurve.Affine.Point.map applied to the Frobenius xx ^ 2, viewed as a -algebra map (every ring hom is one), together with the transport along ferZ.baseChange K = fer K. The computation rules frobPt_pt and frobPt_ptInf say that π squares the coordinates in both charts of FermatCubic.

  2. The kernel dictionary. isKernelPoint_iff identifies KasamiCyclicAdditive.FermatCubicFrobenius.IsKernelPoint of Geometry/FermatCubic/RationalKernel.lean — a condition on homogeneous triples — with the group-theoretic condition π^k P = -P. Combined with KasamiCyclicAdditive.FermatCubicFrobenius.rational_kernel_odd this gives kernel_trivial_odd: for odd n the map 1 + π^k is injective on E(K).

point_repr classifies the points of E(K): every one is the origin, a point at infinity ptInf a, or an affine Fermat point pt w t. This is what lets the two charts of FermatCubic be used exhaustively.

The Frobenius endomorphism #

The Fermat cubic in Weierstrass form over ; fer K is its base change.

Equations
Instances For

    fer K is the base change of ferZ along ℤ → K.

    Transport points along an equality of curves.

    Equations
    Instances For

      curveCast leaves the coordinates of an affine point unchanged.

      The inverse of curveCast likewise leaves the coordinates unchanged.

      Frobenius as a group endomorphism of E(K).

      Equations
      • One or more equations did not get rendered due to their size.
      Instances For
        theorem KasamiCyclicAdditive.PointFrobenius.frobPt_pt {K : Type u_1} [Field K] [DecidableEq K] [CharP K 2] {w t : K} (h : w ^ 3 + t ^ 3 = 1) :
        (frobPt K) (FermatCubic.pt w t h) = FermatCubic.pt (w ^ 2) (t ^ 2)

        π squares both Fermat coordinates.

        theorem KasamiCyclicAdditive.PointFrobenius.frobPt_ptInf {K : Type u_1} [Field K] [DecidableEq K] [CharP K 2] {a : K} (ha : a ^ 3 = 1) :

        π squares the parameter of a point at infinity.

        The CM relation. fer is defined over 𝔽₂, where it has exactly three points, so its trace of Frobenius is a = 2 + 1 - 3 = 0 and π² + 2 = 0 in the endomorphism ring.

        Iterated Frobenius #

        π as an element of the endomorphism monoid, so that π ^ k is available.

        Equations
        Instances For
          theorem KasamiCyclicAdditive.PointFrobenius.frobEnd_pow_pt {K : Type u_1} [Field K] [DecidableEq K] [CharP K 2] (k : ) {w t : K} (h : w ^ 3 + t ^ 3 = 1) :
          (frobEnd K ^ k) (FermatCubic.pt w t h) = FermatCubic.pt (w ^ 2 ^ k) (t ^ 2 ^ k)

          π ^ k raises both Fermat coordinates to the 2 ^ k.

          theorem KasamiCyclicAdditive.PointFrobenius.frobEnd_pow_ptInf {K : Type u_1} [Field K] [DecidableEq K] [CharP K 2] (k : ) {a : K} (ha : a ^ 3 = 1) :
          (frobEnd K ^ k) (FermatCubic.ptInf a ha) = FermatCubic.ptInf (a ^ 2 ^ k)

          π ^ k raises the parameter of a point at infinity to the 2 ^ k.

          Classification of the points of E(K) #

          Every point is the origin, a point at infinity, or an affine Fermat point. This is what makes the two charts of FermatCubic exhaustive.

          theorem KasamiCyclicAdditive.PointFrobenius.point_repr {K : Type u_1} [Field K] [DecidableEq K] [CharP K 2] (P : (FermatCubic.fer K).toAffine.Point) :
          P = 0 (∃ (a : K) (ha : a ^ 3 = 1), P = FermatCubic.ptInf a ha) ∃ (w : K) (t : K) (h : w ^ 3 + t ^ 3 = 1), P = FermatCubic.pt w t h

          The two charts of FermatCubic cover E(K).

          The kernel of 1 + π^k #

          KasamiCyclicAdditive.FermatCubicFrobenius.IsKernelPoint of Geometry/FermatCubic/RationalKernel.lean is a statement about homogeneous triples; on the affine chart it is exactly π^k P = -P.

          theorem KasamiCyclicAdditive.PointFrobenius.isKernelPoint_iff {K : Type u_1} [Field K] [DecidableEq K] [CharP K 2] {k : } {w t : K} (h : w ^ 3 + t ^ 3 = 1) :

          The dictionary. For an affine Fermat point, Geometry/FermatCubic/RationalKernel.lean's triple condition IsKernelPoint k W T 1 is the group-theoretic statement π^k P = -P.

          theorem KasamiCyclicAdditive.PointFrobenius.kernel_trivial_odd {K : Type u_1} [Field K] [DecidableEq K] [CharP K 2] [Fintype K] {n k : } (hn : Odd n) (hkn : k.Coprime n) (hcard : Fintype.card K = 2 ^ n) {P : (FermatCubic.fer K).toAffine.Point} (hP : (frobEnd K ^ k) P + P = 0) :
          P = 0

          Trivial rational kernel for odd n. The map 1 + π^k is injective on E(K): its only zero is the origin. This is KasamiCyclicAdditive.FermatCubicFrobenius.rational_kernel_odd transported through the dictionary.