Negation #
The involution (x, y) ↦ (x, -y - a₁x - a₃) of a Weierstrass curve is negation for the group
law. Its pullback on functions is CoordinateRing.conj, the conjugation of the coordinate ring
over F[X], so negation is an isogeny of W with itself, an involution, and of degree one.
Postcomposing with it negates on the hom carrier, which is the Neg structure the carrier's
additive group is built from. That this pullback really is negation, and not just some involution
of degree one, is tautologicalPoint_negPullback: its tautological point is the negated generic
point.
Main definitions #
TauCeti.Isogeny.negPullback: the coordinate pullbackx ↦ conj x.TauCeti.Isogeny.negIsogeny: the same map packaged as anIsogeny W W.TauCeti.Isogeny.Hom.instNeg: negation onHom W₁ W₂, by postcomposition.
Main results #
TauCeti.Isogeny.negIsogeny_comp_negIsogeny: negation is an involution.TauCeti.Isogeny.degree_negIsogeny: negation has degree one, so it is an automorphism ofWfixing the point at infinity.TauCeti.Isogeny.Hom.neg_compandTauCeti.Isogeny.Hom.degree_neg: negation passes through composition, and preserves degrees, on the carrier.TauCeti.Isogeny.tautologicalPoint_negPullback: read at the generic point, negation is the group law's inverse — which is what identifies this pullback as negation rather than merely some degree-one involution.
The MapsInfinity condition says each x of the coordinate ring is integral over the pulled-back
copy. Conjugation is an equivalence, so every function is the pullback of its own conjugate — the
algebraic form of "negation fixes the point at infinity".
References #
The negation coordinate pullback: an element of the coordinate ring is sent to its
conjugate over F[X], viewed in the function field.
Equations
Instances For
The negation pullback is conjugation.
Negation maps the point at infinity to itself.
Negation, as an isogeny W ⟶ W.
Equations
- TauCeti.Isogeny.negIsogeny W = { pullback := TauCeti.Isogeny.negPullback W, mapsInfinity := ⋯ }
Instances For
The negation isogeny's pullback is conjugation.
Negation is an involution.
Negation has degree one, so it is an automorphism of W fixing the point at infinity.
Negation's tautological point is the negated generic point. This is what identifies
negIsogeny as negation: read at the generic point of W, it is the group law's inverse.
Negation on the hom carrier, by postcomposition with the negation isogeny. This is the
Neg structure of the carrier's additive group; the addition is not built here.
Equations
- TauCeti.Isogeny.Hom.instNeg = { neg := fun (f : TauCeti.Isogeny.Hom W₁ W₂) => (TauCeti.Isogeny.Hom.ofIsogeny (TauCeti.Isogeny.negIsogeny W₂)).comp f }
The equation lemma for negation: the definition's body is not exposed across the module boundary, so this is how downstream modules compute with it.
The zero map is its own negative.
Negating a nonzero element postcomposes the underlying isogeny.
Negation on the carrier is an involution, because it is on the curve.
Equations
- TauCeti.Isogeny.Hom.instInvolutiveNeg = { toNeg := TauCeti.Isogeny.Hom.instNeg, neg_neg := ⋯ }
Negation preserves degrees, negation itself having degree one.