The following functions are used for computing information about certain torsion points on modular abelian varieties.
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.
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 .
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.
> 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); 2Because the torsion multiple is 2, some of the cuspidal subgroup can not be defined over Q.
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.
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).
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].
> 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
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.
> 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 ]