Twists#

Using classical reductions to compute the cohomology set \(H^1({\rm Gal}(\overline{k}/k),{\rm Aut}(C))\) over finite fields, the function Twists computes a list of representatives of all twists of a smooth plane quartic over a finite field. This relies on the prior computation of the geometric automorphism group of \(C\), which the algorithms return as a second value when requested.

TwistsOfPlaneQuartic(C, Autos): Crv, SeqEnum -> SeqEnum[Crv], GrpPerm#
AutomorphismGroup: BoolElt                    Default: false

Compute the twists of the plane quartic curve \(C\) from its geometric automorphism group \(Autos\). If AutomorphismGroup is set to true, then the furnished automorphism group is additionally returned as an abstract group.

For more details, see [Lercier et al., 2014, Meagher and Top, 2010].

Twists(C): Crv -> SeqEnum, GrpPerm#
AutomorphismGroup: BoolElt                    Default: false

Compute the twists of the elliptic, hyperelliptic or plane quartic curve \(C\). If AutomorphismGroup is set to true, then the geometric automorphism group of \(C\) is additionally returned as an abstract group.

Example: Twists Ex (ex-ae635c)#

We compute the twists of the Klein quartic over \({\mathbb{F}}_{31}\).

> P<x,y,z> := PolynomialRing(GF(31), 3);
> PP := ProjectiveSpace(P);
> f := x^3*y + y^3*z + z^3*x;
> C := Curve(ProjectiveSpace(P), f);
> #Twists(C);
4

Run in calculator