CoCalc Public Fileswww / tables / magma_src / ModFrm / abelian_varieties.mOpen with one click!
Author: William A. Stein
1
freeze;
2
3
/****-*-magma-* EXPORT DATE: 2004-03-08 ************************************
4
5
MODFORM: Modular Forms in MAGMA
6
7
William A. Stein
8
9
FILE: abelian_varieties.m
10
11
$Header: /home/was/magma/packages/ModFrm/code/RCS/abelian_varieties.m,v 1.3 2002/08/26 20:11:25 was Exp was $
12
13
$Log: abelian_varieties.m,v $
14
Revision 1.3 2002/08/26 20:11:25 was
15
Use MF_NewformModularSymbols.
16
17
Revision 1.2 2002/01/18 06:56:13 was
18
Added a function!
19
20
Revision 1.1 2001/05/16 03:50:33 was
21
Initial revision
22
23
24
***************************************************************************/
25
26
import "modular_symbols.m" : MF_NewformModularSymbols;
27
28
intrinsic TorsionBound(f::ModFrmElt, n::RngIntElt) -> RngIntElt
29
{A bound on the size of the rational torsion subgroup of the
30
associated abelian variety A_f obtained by looking at the first n good odd primes.}
31
32
require IsNewform(f) : "Argument 1 must be a newform.";
33
require assigned f`mf_modular_symbols : "Associated space of modular symbols not known.";
34
A := MF_NewformModularSymbols(f);
35
eps := DirichletCharacter(f);
36
orders := [Integers()!Norm(Evaluate(
37
CharacteristicPolynomial(DualHeckeOperator(A,p)),
38
1 + Evaluate(eps,p)*p)) : p in [3..n] |
39
IsPrime(p) and Level(f) mod p ne 0];
40
return GCD(orders);
41
end intrinsic;
42
43
/* Example:
44
function J1tor(p, n)
45
S := CuspidalSubspace(ModularForms(Gamma1(p)));
46
ans := 1;
47
for i in [1..NumberOfNewformClasses(S)] do
48
f := Newform(S,i);
49
ans := ans*TorsionBound(f,n);
50
end for;
51
return ans;
52
end function;
53
54
for p in P do j:=J1tor(p,17); p, j, factor(j); end for;
55
13 19 [ <19, 1> ]
56
17 584 [ <2, 3>, <73, 1> ]
57
19 4383 [ <3, 2>, <487, 1> ]
58
23 9406793 [ <11, 1>, <23, 1>, <37181, 1> ]
59
29 65973497856 [ <2, 12>, <3, 1>, <7, 1>, <43, 1>, <17837, 1> ]
60
31 549578344700 [ <2, 2>, <5, 2>, <7, 1>, <11, 1>, <31, 1>, <2302381, 1> ]
61
37 160516686697605 [ <3, 2>, <5, 1>, <7, 1>, <19, 1>, <37, 1>, <73, 1>, <577, 1>, <17209, 1> ]
62
41 107768799408099440 [ <2, 4>, <5, 1>, <13, 1>, <31, 2>, <431, 1>, <250183721,1> ]
63
43 3127105065969759812 [ <2, 2>, <7, 1>, <19, 1>, <29, 1>, <463, 1>, <1051, 1>, <416532733, 1> ]
64
47 3279937688802933030787 [ <23, 1>, <139, 1>, <82397087, 1>, <12451196833, 1> ]
65
66
(These are orders of congruences between cuspidal and eisenstein subspaces.)
67
*/
68