- Introduction
- Creation Functions
- Creation of a Hyperelliptic Curve
- HyperellipticCurve(f, h) : RngUPolElt, RngUPolElt -> CrvHyp
- HyperellipticCurve(P, f, h) : Prj, RngUPolElt, RngUPolElt -> CrvHyp
- HyperellipticCurveOfGenus(g, f, h) : RngIntElt, RngUPolElt, RngUPolElt -> CrvHyp
- HyperellipticCurve(E) : CrvEll -> CrvHyp, Map
- Creation Predicates
- Changing the Base Ring
- Models
- SimplifiedModel(C) : CrvHyp -> CrvHyp, MapIsoSch
- HasOddDegreeModel(C) : CrvHyp -> BoolElt, CrvHyp, MapIsoSch
- IntegralModel(C) : CrvHyp -> CrvHyp, MapIsoSch
- MinimalWeierstrassModel(C) : CrvHyp -> CrvHyp, MapIsoSch
- pIntegralModel(C, p) : CrvHyp, RngIntElt -> CrvHyp, MapIsoSch
- pNormalModel(C, p) : CrvHyp, RngIntElt -> CrvHyp, MapIsoSch
- pMinimalWeierstrassModel(C, p) : CrvHyp, RngIntElt -> CrvHyp, MapIsoSch
- ReducedModel(C) : CrvHyp -> CrvHyp, MapIsoSch
- ReducedMinimalWeierstrassModel(C) : CrvHyp -> CrvHyp, MapIsoSch
- SetVerbose("CrvHypReduce", v) : MonStgElt, RngIntElt ->
- Minimization and Reduction of Binary Forms
- SetVerbose("Minimize", v) : MonStgElt, RngIntElt ->
- MinimizeAtP(f, p) : RngMPolElt, RngIntElt -> RngMPolElt, AlgMatElt, RngIntElt
- MinRedBinaryForm(f) : RngMPolElt -> RngMPolElt, AlgMatElt, RngIntElt
- MinRedBinaryForm(f) : RngUPolElt -> RngUPolElt, AlgMatElt, RngIntElt
- Example CrvHyp_bin_form_min_red (H134E3)
- Predicates on Models
- Type Change Predicates
- Operations on Curves
- Function Field
- Points
- Jacobians
- Richelot Isogenies
- Points on the Jacobian
- Creation of Points
- J ! 0 : JacHyp, RngIntElt -> JacHypPt
- J ! [a, b] : JacHyp, [ RngUPolElt ] -> JacHypPt
- P - Q : PtHyp, PtHyp -> JacHypPt
- J ! [S, T] : JacHyp, [SeqEnum] -> JacHypPt
- JacobianPoint(J, D) : JacHyp, DivCrvElt -> JacHypPt
- J ! P : JacHyp, JacHypPt -> JacHypPt
- Points(J, a, d) : JacHyp, RngUPolElt, RngIntElt -> SetIndx
- Example CrvHyp_point_creation_jacobian (H134E13)
- Example CrvHyp_point_creation_jacobian2 (H134E14)
- Example CrvHyp_point_creation_jacobian3 (H134E15)
- Random Points
- Booleans and Predicates for Points
- Access Operations
- Arithmetic of Points
- Order of Points on the Jacobian
- Order(P) : JacHypPt -> RngIntElt
- Order(P, l, u) : JacHypPt, RngIntElt, RngIntElt -> RngIntElt
- Order(P, l, u, n, m) : JacHypPt, RngIntElt, RngIntElt ,RngIntElt, RngIntElt -> RngIntElt
- HasOrder(P, n) : JacHypPt, RngIntElt -> BoolElt
- Frobenius
- Weil Pairing
- Rational Points and Group Structure over Finite Fields
- Jacobians over Number Fields or Q
- Two-Selmer Set of a Curve
- Chabauty's Method
- Cyclic Covers of P1
- Points
- Descent
- Monic Models
- Descent on the Jacobian
- PhiSelmerGroup(f,q) : RngUPolElt, RngIntElt -> GrpAb, Map
- PicnDescent(f,q) : RngUPolElt, RngIntElt -> RngIntElt, GrpAb, Tup, RngIntElt, Map, GrpAb
- RankBound(f,q) : RngUPolElt, RngIntElt -> RngIntElt
- Example CrvHyp_qcoverdescent (H134E40)
- Partial Descent
- Kummer Surfaces
- Points on the Kummer Surface
- Creation of Points
- K ! 0 : SrfKum, RngIntElt -> SrfKumPt
- K ! [x1, x2, x3, x4] : SrfKum, [ RngElt ] -> SrfKumPt
- K ! P : SrfKum, SrfKumPt -> SrfKumPt
- IsPoint(K, S) : SrfKum, [RngElt] -> BoolElt, SrfKumPt
- Points(K,[x1, x2, x3]) : SrfKum, [RngElt] -> SetIndx
- Access Operations
- Predicates on Points
- Arithmetic of Points
- - P : SrfKumPt -> SrfKumPt
- n * P : RngIntElt, SrfKumPt -> SrfKumPt
- Double(P) : SrfKumPt -> SrfKumPt
- PseudoAdd(P1, P2, P3) : SrfKumPt, SrfKumPt, SrfKumPt -> SrfKumPt
- PseudoAddMultiple(P1, P2, P3, n) : SrfKumPt, SrfKumPt, SrfKumPt, RngIntElt -> SrfKumPt
- Rational Points on the Kummer Surface
- Pullback to the Jacobian
- Analytic Jacobians of Hyperelliptic Curves
- Creation and Access Functions
- Period Matrices
- Maps between Jacobians
- ToAnalyticJacobian(x, y, A) : FldComElt, FldComElt, AnHcJac -> Mtrx
- FromAnalyticJacobian(z, A) : Mtrx, AnHcJac -> SeqEnum
- Example CrvHyp_Analytic_Jacobian_Addition (H134E43)
- Isomorphisms, Isogenies and Endomorphism Rings of Analytic Jacobians
- To2DUpperHalfSpaceFundamentalDomain(z) : Mtrx -> Mtrx, Mtrx
- AnalyticHomomorphisms(t1, t2) : Mtrx, Mtrx -> SeqEnum
- IsIsomorphicSmallPeriodMatrices(t1,t2) : Mtrx, Mtrx -> Bool, Mtrx
- IsIsomorphicBigPeriodMatrices(P1, P2) : Mtrx, Mtrx -> Bool, Mtrx, Mtrx
- IsIsomorphic(A1, A2) : AnHcJac, AnHcJac -> Bool, Mtrx, Mtrx
- IsIsogenousPeriodMatrices(P1, P2) : Mtrx, Mtrx -> Bool, Mtrx
- IsIsogenous(A1, A2) : AnHcJac, AnHcJac -> Bool, Mtrx, Mtrx
- EndomorphismRing(P) : Mtrx -> AlgMat
- EndomorphismRing(A) : AnHcJac -> AlgMat, SeqEnum
- Example CrvHyp_Find_Rational_Isogeny (H134E44)
- ToAnalyticJacobianMumford(pt, AJ) : JacHypPt, AnHcJac-> Mtrx
- ToAnalyticJacobianMumford(pt, AJ, conj) : JacHypPt, AnHcJac, RngIntElt -> Mtrx
- FromAnalyticJacobianProjective(z, A) : Mtrx[FldCom], AnHcJac -> SeqEnum
- From Period Matrix to Curve
- Voronoi Cells
- Invariants
- Igusa Invariants
- ClebschInvariants(C) : CrvHyp -> SeqEnum
- ClebschInvariants(f) : RngUPolElt -> SeqEnum
- IgusaClebschInvariants(C: parameters) : CrvHyp -> SeqEnum
- IgusaClebschInvariants(f, h) : RngUPolElt, RngUPolElt -> SeqEnum
- IgusaClebschInvariants(f: parameters) : RngUPolElt -> SeqEnum
- IgusaInvariants(C: parameters): CrvHyp -> SeqEnum, SeqEnum
- IgusaInvariants(f, h: parameters): RngUPolElt, RngUPolElt -> SeqEnum, SeqEnum
- IgusaInvariants(f: parameters) : RngUPolElt -> SeqEnum
- IgusaAlgebraicRelations(JI) : SeqEnum -> SeqEnum
- IgusaInvariantsEqual(JI1, JI2) : SeqEnum, SeqEnum -> BoolElt
- DiscriminantFromIgusaInvariants(JI) : SeqEnum -> Any
- ScaledIgusaInvariants(f, h): RngUPolElt, RngUPolElt -> SeqEnum
- ScaledIgusaInvariants(f): RngUPolElt -> SeqEnum
- AbsoluteInvariants(C) : CrvHyp -> SeqEnum
- ClebschToIgusaClebsch(Q) : SeqEnum -> SeqEnum
- IgusaClebschToIgusa(S) : SeqEnum -> SeqEnum
- G2Invariants(C) : CrvHyp -> SeqEnum
- G2ToIgusaInvariants(GI) : SeqEnum -> SeqEnum
- IgusaToG2Invariants(JI) : SeqEnum -> SeqEnum
- Shioda Invariants
- Creation from Invariants
- Isomorphisms and Transformations
- Creation of Isomorphisms
- Invariants of Isomorphisms
- Automorphism Group and Isomorphism Testing
- IsIsomorphic(C1, C2) : CrvHyp, CrvHyp -> BoolElt, MapIsoSch
- AutomorphismGroup(C) : CrvHyp -> GrpPerm, Map, Map
- Example CrvHyp_Automorphism_Group (H134E49)
- IsIsomorphicHyperellipticCurves(X1, X2) : CrvHyp, CrvHyp -> BoolElt, List
- Example CrvHyp_Is_Isomorphic_Hyperelliptic_Curves (H134E50)
- IsomorphismsOfHyperellipticCurves(X1, X2) : CrvHyp, CrvHyp -> List
- AutomorphismsOfHyperellipticCurve(X) : CrvHyp -> List
- AutomorphismGroupOfHyperellipticCurve(X, Autos) : CrvHyp, List -> GrpPerm, Map
- AutomorphismGroupOfHyperellipticCurve(X) : CrvHyp -> GrpPerm, Map
- Example CrvHyp_Automorphism_Group_Of_HyperellipticCurve (H134E51)
- GeometricAutomorphismGroup(C) : CrvHyp : -> GrpPerm
- GeometricAutomorphismGroupFromShiodaInvariants(JI) : SeqEnum -> GrpPerm
- Example CrvHyp_Geometric_Automorphism_Group (H134E52)
- GeometricAutomorphismGroupGenus2Classification(F) : FldFin -> SeqEnum, SeqEnum
- GeometricAutomorphismGroupGenus3Classification(F) : FldFin -> SeqEnum,SeqEnum
- Example CrvHyp_aut_class (H134E53)
- Twisting Hyperelliptic Curves
- Reduced Automorphism Group and Reduced Isomorphism Testing
- IsGL2Equivalent(f, g, n) : RngUPolElt, RngUPolElt, RngIntElt -> BoolElt, SeqEnum
- IsGL2EquivalentExtended(f1, f2, deg) : RngUPolElt, RngUPolElt, RngIntElt -> BoolElt, List
- IsReducedIsomorphicHyperellipticCurves(X1, X2) : CrvHyp , CrvHyp -> BoolElt, List
- ReducedIsomorphismsOfHyperellipticCurves(X1, X2) : CrvHyp , CrvHyp -> List
- ReducedAutomorphismsOfHyperellipticCurve(X) : CrvHyp -> List
- ReducedAutomorphismGroupOfHyperellipticCurve(X, Autos) : CrvHyp , List -> GrpPerm, Map
- ReducedAutomorphismGroupOfHyperellipticCurve(X) : CrvHyp -> GrpPerm, Map
- Bibliography
V2.28, 13 July 2023