Rational Torsion Subgroups

The following functions are used for computing information about certain torsion points on modular abelian varieties.

Contents

Cuspidal Subgroup

For simplicity, assume A is a modular abelian variety and π:J0(N)to A is the modular parameterization (the case when J0(N) is replaced by a more general modular abelian variety is similar). The cuspidal subgroup of J0(N) is the finite torsion group generated by all classes of differences of cusps on X0(N). The cuspidal subgroup of A(Qbar) is the image under π of the cuspidal subgroup of J0(N). The rational cuspidal subgroup is the subgroup generated by differences of cusps that are defined over Q. (Computation of the rational points in the cuspidal subgroup has not yet been implemented.) One important use of the rational cuspidal subgroup is that it gives a lower bound on the cardinality (and structure) of the torsion subgroup of A(Q), which is important in computations involving the Birch and Swinnerton-Dyer conjecture.

CuspidalSubgroup(A) : ModAbVar -> ModAbVarSubGrp
The subgroup of the abelian variety A generated by all differences of cusps, where we view A as a quotient of a modular symbols abelian variety. Note that this subgroup need not be defined over Q .
RationalCuspidalSubgroup(A) : ModAbVar -> ModAbVarSubGrp
Return the finite subgroup of the abelian variety A generated by all differences of Q-rational cusps, where we view A in some way as a quotient of a modular symbols abelian variety.

Example ModAbVar_Torsion-Cuspidal_Subgroup (H145E109)

We compute the cuspidal and rational cuspidal subgroups of J0(100).
> J := JZero(100);
> G := CuspidalSubgroup(J); G;
Finitely generated subgroup of abelian variety with invariants
[ 6, 30, 30, 30, 30 ]
> [Eltseq(x) : x in Generators(G)];
[
    [ 29/30, -2/5, 16/15, 121/30, -2, -61/30, 3/5, 31/15, 1,
    -89/30, -7/2, -3/2, -3, -1 ],
    [ 1, -5/6, 0, -1, -1, 2/3, -3/2, 0, -2, 0, 2, 5/3, 5/6, 0 ],
    [ -2, 17/15, 1/10, -29/15, 89/30, 26/15, 7/10, -2, 2/5, 2,
    -3/10, -7/30, 59/30, -1/2 ],
    [ 29/30, -1, 1/2, 67/15, -2, -3/2, 14/15, 91/30, 1, -3,
    -38/15, -29/30, -91/30, 1/2 ],
    [ 31/30, -31/30, 2/5, 67/15, -29/15, -43/30, 5/6, 3, 1, -3,
    -13/5, -31/30, -91/30, 0 ]
]
> H := RationalCuspidalSubgroup(J); H;
Finitely generated subgroup of abelian variety with invariants
[ 3, 15, 30 ]
Next we compute the cuspidal and rational subgroups for the optimal new elliptic curve of conductor 100.
> D := Decomposition(J); A := D[1];
> CuspidalSubgroup(A);
Finitely generated subgroup of abelian variety with invariants
[ 2, 2 ]
> Generators(CuspidalSubgroup(A));
[
    Element of abelian variety defined by [0 1/2] modulo homology,
    Element of abelian variety defined by [1/2 0] modulo homology
]
> RationalCuspidalSubgroup(A);
Finitely generated subgroup of abelian variety with invariants []
> TorsionMultiple(A);
2
Because the torsion multiple is 2, some of the cuspidal subgroup can not be defined over Q.

Upper and Lower Bounds

Let A be an abelian variety over a number field K. Magma can compute upper and lower bounds on the cardinality of the torsion subgroup of A(K) in the form of a multiple and a divisor of this cardinality.

TorsionLowerBound(A) : ModAbVar -> RngIntElt
Given an abelian variety A return a divisor of the cardinality of the K-rational torsion subgroup of A(K). Currently, to compute a bound we require that A be the base extension of an abelian variety B over Q, and the lower bound is simply the cardinality of the rational cuspidal subgroup of B(Q).
TorsionMultiple(A) : ModAbVar -> RngIntElt
TorsionMultiple(A, n) : ModAbVar, RngIntElt -> RngIntElt
Given an abelian variety A return a multiple of the cardinality of the K-rational torsion subgroup of A over K. If n is not given it is assumed to be 50.

This multiple is usually fairly sharp, and is computed as follows. For each good prime p ≤n with [K:Q] + 1<p and such that p does not divide the level of A, Magma computes #A(k), where k varies over residue class fields of K of characteristic p. Since reduction on torsion is injective for such primes, the greatest common divisor of the #A(k) is a multiple of the order of the torsion subgroup of A(K). Magma computes #A(k) by using Hecke operators to find the characteristic polynomial of Frobenius on a Tate module of A, and uses this characteristic polynomial to deduce #A(k). For details, see [AS05].

Example ModAbVar_Torsion-Upper_and_Lower_Bounds (H145E110)

> J := JZero(100);
> TorsionLowerBound(J);
1350
> #RationalCuspidalSubgroup(J);
1350
> TorsionMultiple(J);
16200
> 16200/1350;
12
> J2 := BaseExtend(J,QuadraticField(2));
> TorsionMultiple(J2);
129600
> 129600/16200;
8

Torsion Subgroup

TorsionSubgroup(A) : ModAbVar -> BoolElt, ModAbVarSubGrp
Let A be an abelian variety over a field K. Attempt to compute the subgroup of torsion elements in A(K). Return either false and a subgroup of the torsion subgroup, or true and the exact torsion subgroup of A over the base field.

Example ModAbVar_Torsion-Torsion_Subgroup (H145E111)

> TorsionSubgroup(JZero(11));
true Finitely generated subgroup of abelian variety with invariants [ 5 ]
> TorsionSubgroup(JZero(33));
false Finitely generated subgroup of abelian variety with
invariants [ 10, 10 ]
> TorsionSubgroup(BaseExtend(JZero(11),QuadraticField(5)));
true Finitely generated subgroup of abelian variety with
invariants [ 5 ]
> TorsionSubgroup(ChangeRing(JZero(11),GF(5)));
false { 0 }: finitely generated subgroup of abelian variety with
invariants []
> TorsionSubgroup(JZero(100));
false Finitely generated subgroup of abelian variety with
invariants [ 3, 15, 30 ]
> TorsionSubgroup(JZero(125));
true Finitely generated subgroup of abelian variety with
invariants [ 25 ]
V2.28, 13 July 2023