Genus One Models as Coverings#

The curve defined by a genus one model of degree \(n\) is a principal homogeneous space for some elliptic curve (namely the Jacobian of the curve). The data of the Jacobian, and the covering map of degree \(n^2\), can be read from the invariants and covariants of the model.

Any two models with the same Jacobian can be added together as elements of the Weil-Châtelet group. Below are functions for adding two models of degree 3, and for “doubling” models of degree 4 or 5.

A related function for degree 3 models is ThreeSelmerElement (see Section Three-Descent and Five-Descent). For degree 4 models the maps can also be computed using AssociatedEllipticCurve and AssociatedHyperellipticCurve from the package on four descent (see Section Four-Descent).

Jacobian(model): ModelG1 -> CrvEll#
Jacobian(C): Crv -> CrvEll#

The Jacobian, returned as an elliptic curve, of the given genus one model, or of the curve \(C\) corresponding to a genus one model.

nCovering(model : parameters): ModelG1 -> Crv, CrvEll, MapSch#
E: CrvEll                    Default: 

The covering map from the given genus one model to its Jacobian. Three values are returned: the curve \(C\) of degree \(n\) corresponding to the given model, its Jacobian as an elliptic curve \(E\), and a map of schemes \(C \to E\).

If an elliptic curve \(E\) is given it must be isomorphic to the Jacobian and then this curve will be the image of the map.

AddCubics(cubic1, cubic2 : parameters): RngMPolElt, RngMPolElt -> RngMPolElt#
AddCubics(model1, model2 : parameters): ModelG1, ModelG1 -> ModelG1#
model1 + model2: ModelG1, ModelG1 -> ModelG1#
E         : CrvEll                     Default: 
ReturnBoth: BoolElt                    Default: false

Given two ternary cubic polynomials, or two genus one models of degree \(3\), that both have the same invariants, returns the sum of the corresponding elements of \(H^1({\mathbb{Q}},E[3])\).

An error results if the two cubics do not belong to the same elliptic curve \(E\), See Section Three-Descent and Five-Descent for more information about AddCubics.

DoubleGenusOneModel(model): ModelG1 -> ModelG1#

Given a genus one model of degree 4 or 5, this function computes twice the associated element in the Weil-Châtelet group and returns this as a genus one model (which will have degree 2 or 5, respectively).

FourToTwoCovering(model : parameters): ModelG1 -> Crv, Crv, MapSch#
FourToTwoCovering(C : parameters): Crv -> Crv, Crv, MapSch#
C2: Crv                    Default: 

Given a genus one model of degree 4 or an associated curve, this function returns three values: the curve \(C_4\) in \({\mathbb{P}}^3\) corresponding to the model, a plane quartic curve \(C_2\) representing twice the model in the Weil-Châtelet group, and the map of schemes \(C_4 \to C_2\). Calling AssociatedHyperellipticCurve(Curve(model)) provides the same information.