Documentation

TauCeti.AlgebraicGeometry.EllipticCurve.GaloisCohomology.Descent

The Kummer map of an elliptic curve and the m-descent sequence #

Let W be an elliptic curve over a field K, Kˢ a separable closure, G_K its Galois group, and m a natural number invertible in K. The Kummer sequence

0 ⟶ E(Kˢ)[m] ⟶ E(Kˢ) ⟶ E(Kˢ) ⟶ 0

of discrete G_K-modules is WeierstrassCurve.kummerShortExact. Its degree-zero connecting map, read through the identification WeierstrassCurve.basePointEquivInvariants of H⁰(G_K, E(Kˢ)) with E(K), is the Kummer map E(K) → H¹(G_K, E[m]). This file constructs it, computes it on cocycles, and proves the m-descent exact sequence (Silverman VIII.2, X.4)

0 ⟶ E(K) ⧸ m E(K) ⟶ H¹(G_K, E[m]) ⟶ H¹(G_K, E)[m] ⟶ 0.

The computation is the classical one. Choose Q ∈ E(Kˢ) with m • Q = P; then σ ↦ σ Q - Q takes values in E[m], since P is fixed by G_K, and it is a continuous 1-cocycle, its image in E(Kˢ) being the coboundary of Q. Its class is the Kummer class of P.

The three exactness statements are read off the long exact sequence of continuous cohomology. At E(K) ⧸ m E(K) it is exactness at H⁰(G_K, E(Kˢ)), explicitLongExact_H0C, together with the commuting square WeierstrassCurve.explicitCoeff0_basePointEquivInvariants: multiplication by m on the invariants is multiplication by m on E(K). At H¹(G_K, E[m]) it is exactness at the node where δ⁰ lands, explicitLongExact_H1A. At H¹(G_K, E) it is exactness at the middle node, explicitLongExact_H1B, together with the fact that multiplication by m on coefficients induces multiplication by m on H¹.

The construction follows that of the Kummer map of the multiplicative group, TauCeti.kummerMap. That map is surjective by Hilbert 90; here the cokernel H¹(G_K, E)[m] is the m-torsion of the Weil–Châtelet group H¹(G_K, E), which is not zero in general. Over a number field, local conditions cut the m-Selmer group out of the middle term H¹(G_K, E[m]) and the m-torsion of the Shafarevich–Tate group out of the right-hand term H¹(G_K, E)[m].

Main definitions #

Main results #

References #

The map H¹(G_K, E[m]) → H¹(G_K, E)[m] #

The map H¹(G_K, E[m]) → H¹(G_K, E)[m], the last map of the m-descent sequence: the map induced by the inclusion E(Kˢ)[m] → E(Kˢ), which lands in the m-torsion because m kills E(Kˢ)[m]. It is surjective (WeierstrassCurve.torsionCoeffInclH1_surjective), with kernel the image of the Kummer map (WeierstrassCurve.exact_kummerClassMap_torsionCoeffInclH1).

Instances For

    The image of H¹(G_K, E[m]) → H¹(G_K, E) is the m-torsion of H¹(G_K, E), the last exactness statement of the m-descent sequence.

    H¹(G_K, E[m]) → H¹(G_K, E)[m] is surjective, the right end of the m-descent sequence.

    The Kummer cocycle #

    The Kummer difference is m-torsion: if m • Q is the image of a point of E(K), then σ Q - Q is killed by m, because G_K fixes m • Q.

    noncomputable def WeierstrassCurve.kummerCocycle {K : Type u_1} [Field K] [DecidableEq K] {W : WeierstrassCurve K} {m : ℕ} {P : W.toAffine.Point} {Q : W.PointCoeff} (hQ : m • Q = W.basePointCoeff P) :

    The Kummer cocycle σ ↦ σ Q - Q attached to a point Q of E(Kˢ) with m • Q in E(K).

    Instances For
      @[simp]
      theorem WeierstrassCurve.coe_kummerCocycle {K : Type u_1} [Field K] [DecidableEq K] {W : WeierstrassCurve K} {m : ℕ} {P : W.toAffine.Point} {Q : W.PointCoeff} (hQ : m • Q = W.basePointCoeff P) (σ : TauCeti.AbsoluteGaloisGroup K) :
      ↑(kummerCocycle hQ σ) = σ • Q - Q

      The Kummer cocycle is a continuous 1-cocycle: its image in E(Kˢ) is the coboundary of Q.

      The Kummer map #

      The Kummer map E(K) → H¹(G_K, E[m]): the degree-zero connecting homomorphism of the Kummer sequence of W, read on E(K) through its identification with the invariants of E(Kˢ).

      Instances For
        @[simp]

        The Kummer map is the degree-zero connecting homomorphism of the Kummer sequence, read on P through the identification of E(K) with the invariants of E(Kˢ).

        Multiplication by m on the invariants of E(Kˢ) is multiplication by m on E(K). This is the commuting square that turns exactness of the long exact sequence at H⁰(G_K, E(Kˢ)) into the computation of the kernel of the Kummer map.

        theorem WeierstrassCurve.ker_kummerMap {K : Type u_1} [Field K] [DecidableEq K] (W : WeierstrassCurve K) [W.IsElliptic] (m : ℕ) (hm : IsUnit ↑m) :

        The kernel of the Kummer map is m E(K).

        The Kummer class of P is represented by σ ↦ σ Q - Q, for any Q ∈ E(Kˢ) with m • Q = P (Silverman X.4). Such a Q exists because E(Kˢ) is divisible by m.

        theorem WeierstrassCurve.kummerMap_eq_zero_iff {K : Type u_1} [Field K] [DecidableEq K] {W : WeierstrassCurve K} [W.IsElliptic] {m : ℕ} (hm : IsUnit ↑m) {P : W.toAffine.Point} :
        (W.kummerMap m hm) P = 0 ↔ ∃ (Q : W.toAffine.Point), m • Q = P

        A point has trivial Kummer class exactly when it is divisible by m in E(K).

        The Kummer map on E(K) ⧸ m E(K) #

        The Kummer map on E(K) ⧸ m E(K), the first map of the m-descent sequence. It is injective (WeierstrassCurve.kummerClassMap_injective).

        Instances For
          @[simp]
          theorem WeierstrassCurve.kummerClassMap_mk {K : Type u_1} [Field K] [DecidableEq K] (W : WeierstrassCurve K) [W.IsElliptic] (m : ℕ) (hm : IsUnit ↑m) (P : W.toAffine.Point) :
          (W.kummerClassMap m hm) ↑P = (W.kummerMap m hm) P

          The quotient Kummer map agrees with kummerMap on representatives.

          E(K) ⧸ m E(K) injects into H¹(G_K, E[m]), the kernel of the Kummer map being exactly m E(K).

          Exactness at H¹(G_K, E[m]) #

          The image of the Kummer map is the kernel of H¹(G_K, E[m]) → H¹(G_K, E).

          The m-descent sequence is exact at H¹(G_K, E[m]): the kernel of H¹(G_K, E[m]) → H¹(G_K, E)[m] is the image of E(K) ⧸ m E(K) under the Kummer map. Together with WeierstrassCurve.kummerClassMap_injective and WeierstrassCurve.torsionCoeffInclH1_surjective this is the short exact sequence 0 → E(K) ⧸ m E(K) → H¹(G_K, E[m]) → H¹(G_K, E)[m] → 0.