Documentation

TauCeti.AlgebraicGeometry.EllipticCurve.Isogeny.Hom.Add

The additive group of morphisms between elliptic curves #

The carrier Isogeny.Hom W₁ W₂ — the isogenies W₁ → W₂ together with the zero map — is identified with the point at infinity together with the points of W₂ over the function field of W₁ whose x-coordinate has a pole at the place at infinity, and inherits the group law of those points.

A morphism is determined by its tautological point: the point at infinity for the zero map, and for an isogeny the point of W₂ over F(W₁) cut out by the pulled-back coordinate functions. That point has a pole at infinity exactly because an isogeny is pointed, and every point with such a pole arises from a pointed coordinate pullback, so the tautological point is a bijection onto the subgroup polePoints W₂ (Place.infinity W₁). The addition on Hom W₁ W₂ is the one making this bijection additive; the zero and the negation are those the carrier already has.

Main definitions #

Main results #

Provenance #

The identification of the morphisms with the pole points is Silverman III.4 read at the generic point. Its ingredients are the tautological point of a coordinate pullback and its injectivity (CoordinatePullback.tautologicalPoint, CoordinatePullback.tautologicalPoint_injective), the sum of two coordinate pullbacks (CoordinatePullback.add), the pole criterion for pointedness (CoordinatePullback.mapsInfinity_of_one_lt_infinityPlace) and the subgroup of points with a pole at a place (polePoints).

References #

The tautological point of a morphism: the point at infinity for the zero map, and the tautological point of the coordinate pullback for an isogeny.

Equations
Instances For
    @[simp]

    A morphism vanishes exactly when its tautological point is the point at infinity.

    A morphism is determined by its tautological point.

    Extensionality: morphisms with the same tautological point are equal.

    @[simp]

    The tautological point of -f is the negative of that of f.

    The tautological point of a morphism has a pole at infinity, or is the point at infinity.

    noncomputable def TauCeti.Isogeny.Hom.ofPolePoint {F : Type u_1} [Field F] {W₁ W₂ : WeierstrassCurve.Affine F} [WeierstrassCurve.IsElliptic W₂] (Q : ↥(W₂.polePoints (Place.infinity W₁))) :
    Hom W₁ W₂

    The morphism with a given tautological point: the zero map at the point at infinity, and otherwise the isogeny whose pullback evaluates the coordinate functions at the point, pointed because x has a pole at infinity there.

    Equations
    Instances For
      @[simp]

      The tautological point of ofPolePoint Q is Q.

      @[instance_reducible]
      noncomputable instance TauCeti.Isogeny.Hom.instAdd {F : Type u_1} [Field F] {W₁ W₂ : WeierstrassCurve.Affine F} [WeierstrassCurve.IsElliptic W₂] :
      Add (Hom W₁ W₂)

      Addition of morphisms: the morphism whose tautological point is the sum of the tautological points.

      Equations
      @[instance_reducible]
      noncomputable instance TauCeti.Isogeny.Hom.instSub {F : Type u_1} [Field F] {W₁ W₂ : WeierstrassCurve.Affine F} [WeierstrassCurve.IsElliptic W₂] :
      Sub (Hom W₁ W₂)
      Equations
      @[instance_reducible]
      noncomputable instance TauCeti.Isogeny.Hom.instSMulNat {F : Type u_1} [Field F] {W₁ W₂ : WeierstrassCurve.Affine F} [WeierstrassCurve.IsElliptic W₂] :
      SMul ℕ (Hom W₁ W₂)
      Equations
      @[instance_reducible]
      noncomputable instance TauCeti.Isogeny.Hom.instSMulInt {F : Type u_1} [Field F] {W₁ W₂ : WeierstrassCurve.Affine F} [WeierstrassCurve.IsElliptic W₂] :
      SMul ℤ (Hom W₁ W₂)
      Equations
      @[simp]

      The tautological point of a sum is the sum of the tautological points.

      @[simp]

      The tautological point of a difference is the difference of the tautological points.

      @[simp]

      The tautological point of n • f is n • f.tautologicalPoint.

      @[simp]

      The tautological point of n • f is n • f.tautologicalPoint, for an integer n.

      @[instance_reducible]
      noncomputable instance TauCeti.Isogeny.Hom.instAddCommGroup {F : Type u_1} [Field F] {W₁ W₂ : WeierstrassCurve.Affine F} [WeierstrassCurve.IsElliptic W₂] :
      AddCommGroup (Hom W₁ W₂)

      The additive group of morphisms, transported from the points with a pole at infinity along the tautological point.

      Equations
      noncomputable def TauCeti.Isogeny.Hom.polePointsAddEquiv {F : Type u_1} [Field F] {W₁ W₂ : WeierstrassCurve.Affine F} [WeierstrassCurve.IsElliptic W₂] :
      Hom W₁ W₂ ≃+ ↥(W₂.polePoints (Place.infinity W₁))

      Morphisms are the point at infinity together with the points with a pole at infinity, as additive groups.

      Equations
      • One or more equations did not get rendered due to their size.
      Instances For
        @[simp]

        The inverse of the additive equivalence is ofPolePoint.

        Two isogenies whose tautological points cancel sum to the zero map.

        theorem TauCeti.Isogeny.Hom.ofIsogeny_add_ofIsogeny {F : Type u_1} [Field F] {W₁ W₂ : WeierstrassCurve.Affine F} [WeierstrassCurve.IsElliptic W₂] (φ ψ : Isogeny W₁ W₂) (h : φ.pullback.tautologicalPoint + ψ.pullback.tautologicalPoint ≠ 0) :
        ofIsogeny φ + ofIsogeny ψ = ofIsogeny { pullback := φ.pullback.add ψ.pullback h, mapsInfinity := ⋯ }

        Addition of morphisms is the sum of coordinate pullbacks where the latter is defined.

        @[simp]

        The tautological point of a composite with an isogeny is the image of the outer morphism's tautological point under the isogeny's function-field pullback.

        @[simp]
        theorem TauCeti.Isogeny.Hom.add_comp {F : Type u_1} [Field F] {W₁ W₂ W₃ : WeierstrassCurve.Affine F} [WeierstrassCurve.IsElliptic W₃] (g g' : Hom W₂ W₃) (f : Hom W₁ W₂) :
        (g + g').comp f = g.comp f + g'.comp f

        Composition is additive in the outer morphism.

        @[simp]
        theorem TauCeti.Isogeny.Hom.sub_comp {F : Type u_1} [Field F] {W₁ W₂ W₃ : WeierstrassCurve.Affine F} [WeierstrassCurve.IsElliptic W₃] (g g' : Hom W₂ W₃) (f : Hom W₁ W₂) :
        (g - g').comp f = g.comp f - g'.comp f

        Composition respects subtraction in the outer morphism.

        noncomputable def TauCeti.Isogeny.Hom.compRightHom {F : Type u_1} [Field F] {W₁ W₂ W₃ : WeierstrassCurve.Affine F} [WeierstrassCurve.IsElliptic W₃] (f : Hom W₁ W₂) :
        Hom W₂ W₃ →+ Hom W₁ W₃

        Precomposition by f, as a homomorphism of the additive groups of morphisms.

        Equations
        Instances For
          @[simp]
          theorem TauCeti.Isogeny.Hom.compRightHom_apply {F : Type u_1} [Field F] {W₁ W₂ W₃ : WeierstrassCurve.Affine F} [WeierstrassCurve.IsElliptic W₃] (f : Hom W₁ W₂) (g : Hom W₂ W₃) :
          @[simp]
          theorem TauCeti.Isogeny.Hom.zsmul_comp {F : Type u_1} [Field F] {W₁ W₂ W₃ : WeierstrassCurve.Affine F} [WeierstrassCurve.IsElliptic W₃] (n : ℤ) (g : Hom W₂ W₃) (f : Hom W₁ W₂) :
          (n • g).comp f = n • g.comp f

          Composition is ℤ-linear in the outer morphism.

          @[simp]
          theorem TauCeti.Isogeny.Hom.nsmul_comp {F : Type u_1} [Field F] {W₁ W₂ W₃ : WeierstrassCurve.Affine F} [WeierstrassCurve.IsElliptic W₃] (n : ℕ) (g : Hom W₂ W₃) (f : Hom W₁ W₂) :
          (n • g).comp f = n • g.comp f

          Composition is ℕ-linear in the outer morphism, the rule for a natural scalar.