Sharedwww / talks / pyrex / mod-paper.texOpen in CoCalc
Author: William A. Stein
1
\documentclass[12pt, landscape]{article}
2
\usepackage{fullpage}
3
\title{Modular Symbols, Modular Forms and Modular Abelian
4
Varieties in MAGMA}
5
\author{William Stein\\
6
{\tt http://modular.fas.harvard.edu}}
7
\date{IHP Minicourse: October 4--8, 2004}
8
\include{macros}
9
\usepackage[hypertex]{hyperref}
10
\usepackage{python}
11
\setlength{\parindent}{0cm}
12
13
\begin{document}
14
\sf\large
15
\maketitle
16
17
\begin{abstract}
18
\LARGE
19
\par\noindent{}I found MAGMA frustrating and incomprehensible until Allan Steel
20
visited Berkeley and intensely explained it to me for two days.
21
Since then, MAGMA has seemed much easier. Now it is my turn. In these lectures, I'll
22
try to show you the central ideas needed to compute with modular
23
forms and modular abelian varieties in MAGMA. These are the
24
insights I often tell people when discussing computing with modular
25
forms.
26
\end{abstract}
27
28
\newpage
29
\tableofcontents
30
\newpage
31
32
\setlength{\parskip}{1em}
33
\mbox{}\vspace{1cm}
34
35
\begin{center}
36
{\Huge \bf Background}
37
\end{center}
38
39
\begin{itemize}
40
\item You are very familiar with the basics of MAGMA
41
\item I will not assume you know about modular symbols and modular forms.
42
\end{itemize}
43
44
\vspace{2ex}
45
46
\begin{center}
47
{\Huge \bf Acknowledgements}
48
\end{center}
49
\begin{itemize}
50
\item {\bf Kevin Buzzard} had a major influence on how I designed the modular
51
symbols and Dirichlet characters code for MAGMA.
52
\item {\bf David Kohel} wrote
53
an early version of the Dirichlet characters package.
54
\item The main reason
55
any of this code is efficient is that {\bf Allan Steel} has massively
56
optimized the exact dense linear algebra core of MAGMA, partly in
57
response to my requests.
58
\item The algorithms owe a major debt to
59
{\bf John Cremona}'s book and {\bf Loic Merel}'s modular symbols article.
60
\end{itemize}
61
\newpage
62
63
\section{Dirichlet Characters}
64
Spaces of modular forms of integer weight $\geq 2$ are built out of spaces
65
defined by a level, weight, and Dirichlet character.
66
A \defn{Dirichlet character} over a domain~$R$ is a map $\eps:\Z\to R$ such
67
that for some homomorphism $f:(\Z/N\Z)^* \to R^*$
68
we have
69
$$
70
\eps(a) = \begin{cases} 0 & \text{if }(a,N)\neq 1,\\
71
f(a \text{ mod } N) & \text{if }(a,N)=1.
72
\end{cases}
73
$$
74
75
Create Dirichlet characters by creating the group
76
of all Dirichlet characters of modulus $N$ over a ring $R$
77
using the {\tt DirichletGroup} command.
78
\begin{verbatim}{Creation of a DirichletGroup}
79
> G<a,b,c> := DirichletGroup(8*13, CyclotomicField(12));
80
> G;
81
Group of Dirichlet characters of modulus 104 over Cyclotomic
82
Field of order 12 and degree 4
83
84
> // WARNING: The default ring is Q, not Q(zeta_n), where n=exponent((Z/nZ)^*) !
85
> DirichletGroup(8*13);
86
Group of Dirichlet characters of modulus 104 over Rational Field
87
\end{verbatim}
88
89
\newpage
90
The three generators of $G$ correspond to the decomposition
91
$$
92
(\Z/104\Z)^* = \langle 79 \rangle \times \langle 53 \rangle
93
\times \langle 41 \rangle,
94
$$
95
where $79\con -1\pmod{4}$ generates $(\Z/4\Z)^*$,
96
the element $53 \con 5\pmod{8}$ generates the non-$\pm 1$ factor
97
of $(\Z/8\Z)^*$, and $41\con 2\pmod{13}$ generates $(\Z/13\Z)^*$.
98
\begin{verbatim}{Invariants of characters}
99
> Order(a);
100
2
101
> Order(b);
102
2
103
> Order(c);
104
12
105
> Conductor(a);
106
4
107
> Conductor(b);
108
8
109
> Conductor(c);
110
13
111
> a(3);
112
-1
113
> b(3);
114
-1
115
> c(3);
116
zeta_12^2 - 1
117
\end{verbatim}
118
We can also do arithmetic with Dirichlet characters.
119
\begin{verbatim}{Arithmetic with characters}
120
> G<a> := DirichletGroup(5,CyclotomicField(4));
121
> H<b> := DirichletGroup(7,RationalField());
122
> Parent(a*b);
123
Group of Dirichlet characters of modulus 35 over Cyclotomic Field
124
of order 4 and degree 2
125
\end{verbatim}
126
127
128
In addition to the handbook, I encourage you to look at the source code, which
129
is completely available in the following file (nothing is in C):
130
\begin{center}
131
{\tt package/Geometry/ModSym/dirichlet.m}
132
\end{center}
133
134
\newpage\section{Modular Symbols}
135
\subsection{Introduction}
136
Computation of spaces $\sM_k(N,\eps)$ of {\bf modular symbols}
137
is the heart of most of the algorithms in MAGMA for computing
138
with modular forms and modular abelian varieties:
139
\begin{itemize}
140
\item Computing spaces $M_k(N,\eps)$ of {\bf modular forms}
141
involves modular symbols algorithms and enumeration of Eisenstein
142
series.
143
\item Modular abelian varieties viewed
144
as complex vector spaces modulo lattices, where the lattices are
145
naturally viewed as spaces of modular symbols.
146
\end{itemize}
147
148
References:
149
\begin{itemize}
150
\item My Ph.D. thesis {\em Explicit Approaches to Modular Abelian Varieties}
151
\item Loic Merel's {\em Universal Fourier Expansions of Modular Forms}.
152
\end{itemize}
153
154
Fix a positive integer~$N$, an integer $k\geq 2$, and a Dirichlet
155
character~$\eps$ of level~$N$. Let $\sM_k(N,\eps)$ be the
156
space of modular symbols of level $N$, weight $k$, and character $\eps$,
157
which we view as being defined by the following algorithm.
158
As motivation for computing modular symbols, keep in mind
159
that there is an isomorphism of $\T$-modules
160
$$
161
\sM_k(N,\eps) \isom S_k(N,\eps)^{\oplus 2} \oplus E_k(N,\eps),
162
$$
163
where $S_k(N,\eps)$ is the space of cusp forms of type
164
$N,k,\eps$, and $E_k$ is the space of Eisenstein series
165
of that type.
166
167
\begin{algorithm}{Manin Symbols}\label{alg:manin}
168
This algorithm computes a presentation for the space
169
$\sM_k(N,\eps)$ of modular symbols,
170
as a vector space over $K=\Q(\eps)$.
171
\begin{steps}
172
173
\item{}[Generating Manin Symbols]
174
Create a list of the distinct Manin symbols $[X^i Y^{k-2-i}, (c,d)]$,
175
where $i=0,\ldots, k-2$, and $(c,d)\in\P^1(N)$, so
176
$c,d\in\Z/N\Z$ and $\gcd(c,d,N)=1$. Let $V$ be the $K$-vector
177
space generated by these Manin symbols.
178
179
\item{}[Subspace of Relations] \label{step:rels}
180
The group $\GL_2(\Q)$ acts on $V$ on the right by
181
$$[P(X,Y),\,(c,d)].\abcd{a}{b}{c}{d} = [P(dX-bY,-cX+aY),\,(au+cv,bu+dv)].$$
182
Let $S=\abcd{0}{-1}{1}{0}$ and $T=\abcd{0}{-1}{1}{-1}$, and
183
let $W$ be the suspace of $V$ generated by the elements
184
\begin{equation}\label{eqn:maninrels}
185
x + xT \qquad\text{and}\qquad x + xS + xS^2
186
\end{equation}
187
for all generating manin symbols $x$.
188
189
\item{}[Quotient] Using sparse linear algebra techniques,
190
compute and output the quotient
191
$
192
\sM_k(N,\eps) \isom V/W,
193
$
194
This is essentially the same as finding the reduced row echelon form
195
of the matrix whose rows are given by the relations (\ref{eqn:maninrels}).
196
The output is a list of freely generating Manin symbols
197
$x_0,\ldots, x_n$, and all other Manin symbols written as linear
198
combinations of $x_0,\ldots, x_n$.
199
\end{steps}
200
\end{algorithm}
201
202
There is a \defn{star involution} $*$ on $\sM_k(N,\eps)$, and
203
for many computations it is sufficient to compute in
204
one of the quotients
205
$$\sM_k(N,\eps)/(*-1)\qquad\text{or}\qquad \sM_k(N,\eps)/(*+1).$$
206
We compute this quotient
207
directly by including the relations $x+xI$ or $x-xI$ in~$W$
208
in Step~\ref{step:rels}, where $I=\abcd{-1}{0}{0}{1}$.
209
210
We illustrate modular symbols by using MAGMA to compute a presentation
211
for $\sM_5(13,\eps)$, where $\eps$ has order~$4$, so $K=\Q(i)$.
212
\begin{verbatim}{Modular symbols creation}
213
> G<eps> := DirichletGroup(13, CyclotomicField(4));
214
> eps(-1);
215
-1
216
> Order(eps);
217
4
218
> M := ModularSymbols(eps, 5);
219
> M;
220
Full modular symbols space of level 13, weight 5, character eps,
221
and dimension 8 over Cyclotomic Field of order 4 and degree 2
222
\end{verbatim}
223
Thus $\sM_5(13,\eps)$ has dimension~$8$ as a vector space over $\Q(i)$.
224
Note that the level $N=13$ is encoded as the modulus of $\eps$,
225
so it is not necessary to specify $N$ when defining $\sM_k(N,\eps)$.
226
The following command enumerates a basis represented as Manin symbols.
227
\begin{verbatim}{Basis of Manin symbols}
228
> [ManinSymbol(x)[1] : x in Basis(M)];
229
[
230
<X^3, (0 1)>,
231
<X^3, (1 11)>,
232
<X^3, (1 5)>,
233
<X^3, (1 3)>,
234
<X^3, (1 4)>,
235
<X^3, (1 6)>,
236
<X^3, (1 12)>,
237
<X^3, (1 0)>
238
]
239
\end{verbatim}
240
The command {\tt ManinSymbol} is necessary because elements
241
of $\sM_k(N,\eps)$ print by default as modular symbols.
242
If $[P(X,Y),(c,d)]$ is a Manin symbol, and $g=\abcd{a}{b}{c'}{d'}\in\SL_2(\Z)$
243
satisfies $c\con c'$ and $d\con d' \pmod{N}$, then
244
the corresponding modular symbol is
245
$P(dX-bY,-cX+aY) \{g(0),g(\infty)\}$.
246
\begin{verbatim}{Corresponding modular symbol}
247
> M.1;
248
X^3*{0, oo}
249
> M.2;
250
(1331*X^3 + 363*X^2*Y + 33*X*Y^2 + Y^3)*{-1/11, 0}
251
\end{verbatim}
252
253
\begin{remark}
254
I think my current implementation of computation of the presentation
255
for modular symbols in MAGMA take significantly more memory than it
256
should.
257
\end{remark}
258
259
\subsection{Efficiency Trick: Work Mod~$p$}
260
For many computations computing with modular symbols modulo~$p$
261
is enough, and can be {\em vastly more efficient}. If we create a group
262
{\tt DirichletGroup(N,R)} of Dirichlet characters with $R$
263
a finite field, then the corresponding space of modular symbols
264
is a vector space over~$R$. In MAGMA this vector space
265
is defined by Algorithm~\ref{alg:manin} but with $K=R$.
266
267
\begin{verbatim}{Modular symbols mod}
268
> G<a,b,c> := DirichletGroup(2000,GF(5));
269
> Conductor(c);
270
5
271
> Order(c);
272
4
273
> M := ModularSymbols(c,3);
274
> M;
275
Full modular symbols space of level 2000, weight 3, character c,
276
and dimension 1200 over Finite field of size 5
277
\end{verbatim}
278
Most code for modular symbols views the base field
279
as generic, so it is identical for finite fields and
280
characteristic~$0$.
281
282
\vspace{1ex}
283
284
\par\noindent{\bf BIG WARNING:} {\em This need {\em not} be a
285
``mod~$p$ reduction'' of the space in characteristic $0$. In
286
particular when $p$ is small it is possible that there is
287
``spurious'' torsion.}
288
\begin{verbatim}{Spurious torsion}
289
> function f(N,k)
290
return Dimension(ModularSymbols(N,k,GF(2))) -
291
Dimension(ModularSymbols(N,k));
292
end function;
293
> [N : N in [2..100] | f(N,2) gt 0];
294
[ 5, 10, 13, 17, 25, 26, 29, 34, 37, 41, 50, 53, 58, 61, 65, 73,
295
74, 82, 85, 89, 97 ]
296
\end{verbatim}
297
In each case the dimension is one bigger, except for
298
$65$ and $85$, when it is off by~$3$.
299
300
For an application of this efficient trick, see
301
Buzzard-Stein, ``A Mod~$5$ Approach to Artin's Conjecture''.
302
303
\subsection{Hecke Operators}
304
The spaces $\sM_k(N,\eps)$ are equipped with a commuting
305
ring of Hecke operators $T_n$, for all positive integers~$n$.
306
MAGMA computes these Hecke operators using Merel's Heilbronn matrix
307
formulas. For each~$n$, Merel defines a computable set $S_n$ (in fact
308
various sets) of matrices of determinant`$n$ such that
309
$$
310
T_n(x) = \sum_{g\in S_n} x|g.
311
$$
312
The sets $S_n$ only depend on $n$, not on $k,N,\eps$, and the
313
cardinality of $S_n$ is $O(n\log(n))$ [[double check--maybe only
314
for $n$ prime]].
315
316
The command to list the set $S_n$ for a given~$n$, returns
317
the matrices as a sequence whose entries are the integer
318
sequences corresponding to the elements of $S_n$.
319
\begin{verbatim}{Heilbronn matrices}
320
> HeilbronnMerel(2);
321
[
322
[ 1, 0, 0, 2 ],
323
[ 1, 0, 1, 2 ],
324
[ 2, 0, 0, 1 ],
325
[ 2, 1, 0, 1 ]
326
]
327
> #HeilbronnMerel(29);
328
199
329
> #HeilbronnMerel(10007);
330
337977
331
> #HeilbronnCremona(10007); # in some cases these can be used...
332
67698
333
\end{verbatim}
334
We next compute a Hecke operator on the space $\sM_5(13,\eps)$ defined
335
above. We do not print the full Hecke operator out here,
336
since that would take too much space, but instead print
337
the factorization of its characteristic polynomial.
338
\begin{verbatim}{Hecke operators}
339
> T_2 := HeckeOperator(M,2);
340
> Nrows(T_2);
341
8
342
> T_2[1];
343
(zeta_4 + 16 -3/4 1/4 3/4 -3/4 0 2 -3/2)
344
> Factorization(CharacteristicPolynomial(T_2));
345
[
346
<$.1 - 16*zeta_4 - 1, 1>,
347
<$.1 - zeta_4 - 16, 1>,
348
<$.1^3 + (zeta_4 + 1)*$.1^2 - 23*zeta_4*$.1 - 29*zeta_4 + 29, 2>
349
]
350
\end{verbatim}
351
The characteristic polynomial has $2$ factors that appear
352
with multiplicity one, which correspond to Eisenstein series,
353
and a factor with multiplicity $2$, which corresponds
354
to the space of cusp forms.
355
356
357
\subsection{Subspaces}
358
The spaces $\sM_k(N,\eps)$ have many important subspaces.
359
MAGMA computes the cuspidal subspace $\sS_k(N,\eps)$ as
360
the kernel of a natural map to a space of {\em boundary
361
modular symbols}; this subspace corresponds is
362
isomorphic to $S_k(N,\eps)^{\oplus 2}$.
363
\begin{verbatim}{Cuspidal subspace}
364
> S := CuspidalSubspace(M); S;
365
Modular symbols space of level 13, weight 5, character eps, and
366
dimension 6 over Cyclotomic Field of order 4 and degree 2
367
> Factorization(CharacteristicPolynomial(HeckeOperator(S,2)));
368
[
369
<$.1^3 + (zeta_4 + 1)*$.1^2 - 23*zeta_4*$.1 - 29*zeta_4 + 29, 2>
370
]
371
\end{verbatim}
372
373
There are other interesting subspaces, such as the new and
374
old subspaces. The old subspace is the subspace generated
375
by the images of all maps from lower level, and the new subspace
376
is the kernel of all maps to lower level. In the following
377
example we compute the new subspace of
378
$\sM_2(33,1)$, where $1$ denotes the trivial character.
379
\begin{verbatim}{New subspace}
380
> M := ModularSymbols(33);
381
> M;
382
Full modular symbols space for Gamma_0(33) of weight 2 and
383
dimension 9 over Rational Field
384
> NewSubspace(M);
385
Modular symbols space for Gamma_0(33) of weight 2 and dimension 3
386
over Rational Field
387
\end{verbatim}
388
389
\subsection{Decomposition}
390
For many applications, the most important operation on spaces of
391
modular symbols is {\tt Decomposition}, which involves writing
392
$\sM_k(N,\eps)$ as a sum of spaces that cannot be split
393
further using Hecke operators of index coprime to the level
394
up to some bound $b$. Since the Hecke algebra is commutative,
395
each subspace is preserved by the Hecke operators.
396
397
\begin{verbatim}{Decomposition}
398
> M := ModularSymbols(33,2);
399
> Decomposition(M,2);
400
[
401
Modular symbols space for Gamma_0(33) of weight 2 and
402
dimension 3 over Rational Field,
403
Modular symbols space for Gamma_0(33) of weight 2 and
404
dimension 2 over Rational Field,
405
Modular symbols space for Gamma_0(33) of weight 2 and
406
dimension 4 over Rational Field
407
]
408
\end{verbatim}
409
410
The command {\tt HeckeBound} returns an integer~$b$, so
411
that {\tt Decomposition(M,c)} equals {\tt Decomposition(M,b)}
412
for all $c\geq b$.
413
\begin{verbatim}{Hecke bound}
414
> HeckeBound(M);
415
8
416
\end{verbatim}
417
418
\begin{remark}
419
I think that a careful complexity analysis of decomposition would
420
reveal that the complexity is at least $O((Nk)^6)$, the running time
421
being dominated by the factorization of characteristic polynomials
422
on a space of dimension $O(Nk)$. No such complexity analysis has
423
been done, as far as I know, except that Giesbrecht has given a
424
carefully analyzed algorithm for computing rational Jordan form,
425
which is a problem closely related to decomposing modular symbols
426
spaces.
427
\end{remark}
428
429
The precise algorithm used for decomposition in MAGMA was created and
430
implemented by Allan Steel, and I don't completely understand it, and
431
I don't think it's been published anywhere.
432
433
\section{Modular Forms}
434
\subsection{Definitions}
435
\begin{definition}[Modular Forms]
436
The finite-dimensional complex vector space
437
$
438
M_k(N,\eps)
439
$
440
of \defn{modular forms} of level~$N$, weight~$k$, and character~$\eps$ is
441
the set of holomorphic functions~$f$ on
442
$$
443
\h^* = \{z \in \C \,:\, \Im(z) > 0 \} \union \P^1(\Q)
444
$$
445
such
446
$$
447
f|[g]_k := \det(g)^{k-1} (cz+d) f(g(z)) = \eps(g) f,
448
$$
449
where $\eps(g) = \eps(a)$.
450
\end{definition}
451
452
A \defn{cusp form} is a modular form such that $f(\P^1(\Q)) = \{0\}$,
453
and we denote the subspace of cusp forms by $S_k(N,\eps)$.
454
455
Any $f\in M_k(N,\eps)$ has a representation
456
$$
457
f(z) = \sum_{n=0}^{\infty} a_n q^n, \qquad q(z) = e^{2\pi i z}.
458
$$
459
The Hecke operators $T_p$, for~$p$ prime, act on $M_k(N,\eps)$ by
460
$$
461
T_p(f) = \sum_{n=0}^{\infty} a_{np} q^n + \eps(p) p^{k-1} f(q^n),
462
$$
463
and there is a similar definition of $T_n$ for any~$n$.
464
465
\subsection{Computing Modular Forms Using MAGMA}
466
Given $N,k,\eps$, MAGMA can compute a basis of power series expensions
467
as above, modulo a power of~$q$.
468
One way to compute a basis for all cusp forms is to use
469
the {\tt qExpansionBasis} command, applied to the cuspidal
470
subspace of a space of modular symbols.
471
472
%\begin{example}
473
First we compute $S_2(13,\eps)$, where $\eps$ has
474
order~$6$. This space has dimension~$1$ over the
475
complex numbers.
476
477
\begin{verbatim}{Power Series}
478
> G<eps> := DirichletGroup(13,CyclotomicField(6));
479
> M := ModularSymbols(eps,2, +1);
480
> S := CuspidalSubspace(M);
481
> S;
482
Modular symbols space of level 13, weight 2, character eps, and
483
dimension 1 over Cyclotomic Field of order 6 and degree 2
484
> qExpansionBasis(S,4);
485
[
486
q + (-zeta_6 - 1)*q^2 + (2*zeta_6 - 2)*q^3 + O(q^4)
487
]
488
\end{verbatim}
489
The {\tt +1} in the {\tt ModularSymbols} command computes
490
the quotient $$\sM_k(N,\eps)/(*-1),$$ which is all that
491
is needed to compute $S_k(N,\eps)$, since
492
$\sM_2(13,\eps)/(*-1)\isom S_k(N,\eps) \oplus E_k(N,\eps)'$,
493
where $E_k(N,\eps)'$ is a certain subspace of the Eisenstein
494
space.
495
496
The following example has bigger dimension and there
497
are old forms.
498
\begin{verbatim}{Oldforms and expansions}
499
> M := ModularSymbols(33,2);
500
> S := CuspidalSubspace(M);
501
> qExpansionBasis(S,10);
502
[
503
q - q^5 - 2*q^6 + 2*q^7 - 2*q^8 - q^9 + O(q^10),
504
q^2 - q^4 - q^5 - q^6 + 2*q^7 - q^8 + q^9 + O(q^10),
505
q^3 - 2*q^6 - q^9 + O(q^10)
506
]
507
> qExpansionBasis(OldSubspace(S),10);
508
[
509
q - 2*q^2 + 2*q^4 + q^5 - 2*q^7 - 3*q^9 + O(q^10),
510
q^3 - 2*q^6 - q^9 + O(q^10)
511
]
512
> qExpansionBasis(NewSubspace(S),10);
513
[
514
q + q^2 - q^3 - q^4 - 2*q^5 - q^6 + 4*q^7 - 3*q^8 + q^9 +
515
O(q^10)
516
]
517
\end{verbatim}
518
In this example we compute a basis of $q$-expansion corresponding
519
to a simple factor of $S_2(389,1)$.
520
\begin{verbatim}{Basis of expansions}
521
> M := ModularSymbols(389,2, 1);
522
> S := CuspidalSubspace(M);
523
> D := Decomposition(S,2);
524
> V := D[3]; V;
525
Modular symbols space for Gamma_0(389) of weight 2 and dimension
526
3 over Rational Field
527
> qExpansionBasis(V,10);
528
[
529
q - q^5 - 2*q^6 - q^7 + 2*q^8 - q^9 + O(q^10),
530
q^2 - q^3 + O(q^10),
531
q^4 - q^5 - q^6 + q^9 + O(q^10)
532
]
533
> qEigenform(V,6); // eigenform in span of above q-expansions
534
q + a*q^2 - a*q^3 + (a^2 - 2)*q^4 + (-a^2 + 1)*q^5 + O(q^6)
535
> BaseRing(Modulus(Parent($1)));
536
Univariate Quotient Polynomial Algebra in a over Rational Field
537
with modulus a^3 - 4*a - 2
538
\end{verbatim}
539
%\end{example}
540
541
The {\tt qExpansionBasis} command does not work on the full space of
542
modular symbols, because the algorithm compute the $q$-expansions
543
using systems of Hecke eigenvalues on modular symbols (and
544
Atkin-Lehner-Li theory), and these do not determine the constant terms
545
of the $q$-expansions of Eisenstein series.
546
547
I wrote a package for computing with modular forms that makes no
548
direct reference to modular symbols, but which is mostly built on the
549
modular symbols machinery.
550
The command {\tt ModularForms(N,k,eps)} creates the
551
direct sum
552
$$
553
\bigoplus_{\text{$\Gal(\Qbar/\Q)$-conjugates }\eps'} M_k(N,\eps')
554
$$
555
where the sum is over all $\Gal(\Qbar/\Q)$-conjugates~$\eps'$ of~$\eps$.
556
This is a vector space over $\Q$, and even better, a free $\Z$-module.
557
558
\begin{remark}
559
{\bf WARNING.}
560
I think that defining {\tt ModularForms(N,k,eps)} this way was a
561
{\em bad design decision} (on my part!), and I should have defined
562
{\tt ModularForms(N,k,eps)} to be $M_k(N,\eps)$ as a
563
$\Q(\eps)$-vector space, and I intend to change this (while keeping
564
the old definition as an option). The advantage of the choice
565
I made is that, e.g., reduction modulo~$p$ make sense.
566
\end{remark}
567
568
\begin{definition}[Newform]
569
A \defn{newform} is an element $f\in S_k(N,\eps)$ that is in the kernel
570
of the maps to level properly dividing~$N$, is an eigenvector
571
for every Hecke operator, and is normalized so the coefficient of~$q$
572
is~$1$.
573
\end{definition}
574
575
One can compute Eisenstein series and a list of all newforms (gathered
576
together in $\Gal(\Qbar/\Q)$-conjugacy classes) using spaces of
577
modular forms using the {\tt Newforms} command.
578
579
In the following example we compute the two newforms in $M_{12}(1)$.
580
One newform is the Ramanajun $\Delta$ function, and the other is
581
the normalized Eisenstein series of weight~$12$.
582
\begin{verbatim}{Newforms}
583
> M := ModularForms(1,12);
584
> Newforms(M);
585
[* [*
586
q - 24*q^2 + 252*q^3 - 1472*q^4 + 4830*q^5 - 6048*q^6 - 16744*q^7
587
+ O(q^8)
588
*], [*
589
691/65520 + q + 2049*q^2 + 177148*q^3 + 4196353*q^4 +
590
48828126*q^5 + 362976252*q^6 + 1977326744*q^7 + O(q^8)
591
*] *]
592
\end{verbatim}
593
In the next example, we compute $S_2(23)$, which is spanned by
594
two conjugate eigenforms.
595
\begin{verbatim}{Conjugate eigenforms}
596
> M := ModularForms(23,2);
597
> S := CuspidalSubspace(M);
598
> S;
599
Space of modular forms on Gamma_0(23) of weight 2 and dimension 2
600
over Integer Ring.
601
> Newforms(S);
602
[* [*
603
q + a*q^2 + (-2*a - 1)*q^3 + (-a - 1)*q^4 + 2*a*q^5 + (a - 2)*q^6
604
+ (2*a + 2)*q^7 + O(q^8),
605
q + b*q^2 + (-2*b - 1)*q^3 + (-b - 1)*q^4 + 2*b*q^5 + (b - 2)*q^6
606
+ (2*b + 2)*q^7 + O(q^8)
607
*] *]
608
> Parent($1[1][1]);
609
Space of modular forms on Gamma_0(23) of weight 2 and dimension 2
610
over Number Field with defining polynomial x^2 + x - 1 over the
611
Rational Field.
612
\end{verbatim}
613
Listing all the conjugate newforms is somewhat silly, because they
614
all look identical; they are just defined over different copies
615
of the field generated by the Fourier coefficients. In particular,
616
adding the two newforms together is not defined in MAGMA (it
617
doesn't give the trace).
618
\begin{verbatim}{Arithmetic Problem}
619
> f := Newforms(S)[1][1]; g := Newforms(S)[1][2];
620
> f + g;
621
>> f + g;
622
^
623
Runtime error in '+': Arguments 1 and 2 have incompatible
624
coefficient rings.
625
\end{verbatim}
626
For many computations that really require arithmetic with
627
all the conjugates of a form, one should just embed the forms
628
in the complex numbers or a $p$-adic field, where $p$ split.
629
Computation of such embeddings is built in:
630
\begin{verbatim}{Embeddings}
631
> ComplexEmbeddings(f);
632
[* [*
633
q - 1.618033988749894848204586834365638117720*q^2 + [ truncated ... ]
634
q + 0.618033988749894848204586834365638117720*q^2 - [ truncated ...]
635
*] *]
636
> $1[1][1] + $1[1][2];
637
2*q - q^2 - q^4 - 2.0...*q^5 -
638
> pAdicEmbeddings(f,2);
639
[* [*
640
O(2^20) + (1 + O(2^20))*q + ((1 + O(2^20))*a + O(2^20))*q^2 + [ truncated ]
641
O(2^20) + (1 + O(2^20))*q + ((1 + O(2^20))*b + O(2^20))*q^2 + [ truncated ]
642
*] *]
643
> $1[1][1] + $1[1][2]; // since 2 doesn't split.
644
>> $1[1][1] + $1[1][2];
645
^
646
Runtime error in '+': Arguments 1 and 2 have incompatible
647
coefficient rings.
648
> pAdicEmbeddings(f,11);
649
[* [*
650
O(11^20) + (1 + O(11^20))*q + (273946294811098331671 + [ truncated ... ]
651
*], [*
652
O(11^20) + (1 + O(11^20))*q - (273946294811098331672 + [ truncated ... ]
653
*] *]
654
> $1[1][1] + $1[2][1];
655
O(11^20) + (2 + O(11^20))*q - (1 + O(11^20))*q^2 + [ truncated ... ]
656
\end{verbatim}
657
The output of the embedding commands are also modular forms,
658
so one can compute them to higher precision, etc.
659
Also one can reduce newforms to characteristic~$p$.
660
\begin{verbatim}{Reductions}
661
> Reductions(f,2);
662
[* [*
663
q + $.1*q^2 + q^3 + $.1^2*q^4 + $.1*q^6 + O(q^8),
664
q + $.1^2*q^2 + q^3 + $.1*q^4 + $.1^2*q^6 + O(q^8)
665
*] *]
666
> Reductions(f,11);
667
[* [*
668
q + 7*q^2 + 7*q^3 + 3*q^4 + 3*q^5 + 5*q^6 + 5*q^7 + O(q^8)
669
*], [*
670
q + 3*q^2 + 4*q^3 + 7*q^4 + 6*q^5 + q^6 + 8*q^7 + O(q^8)
671
*] *]
672
> f11 := Reductions(f,11)[1][1];
673
> Type(f11);
674
ModFrmElt
675
> f11;
676
q + 7*q^2 + 7*q^3 + 3*q^4 + 3*q^5 + 5*q^6 + 5*q^7 + O(q^8)
677
> PowerSeries(f11,15);
678
q + 7*q^2 + 7*q^3 + 3*q^4 + 3*q^5 + 5*q^6 + 5*q^7 + 7*q^8 + 2*q^9
679
+ 10*q^10 + 4*q^11 + 10*q^12 + 3*q^13 + 2*q^14 + O(q^15)
680
\end{verbatim}
681
682
The following examples illustrates how {\tt ModularForms(N,k,eps)}
683
is (confusingly) defined to be the direct sum of spaces for the
684
conjugates of $\eps$.
685
\begin{verbatim}{Modular forms are over the integers}
686
> G<eps> := DirichletGroup(13, CyclotomicField(6));
687
> M := ModularForms(eps);
688
> BaseRing(M);
689
Integer Ring
690
> S := CuspidalSubspace(M);
691
> S;
692
Space of modular forms on Gamma_1(13) with character all
693
conjugates of [eps], weight 2, and dimension 2 over Integer Ring.
694
> Basis(S);
695
[
696
q - 4*q^3 - q^4 + 3*q^5 + 6*q^6 + O(q^8),
697
q^2 - 2*q^3 - q^4 + 2*q^5 + 2*q^6 + O(q^8)
698
]
699
\end{verbatim}
700
Recall from before though that the dimension of $S_2(13,\eps)$
701
as a $\Q(\zeta_6)$-vector space is $1$. However, there are two
702
$\Gal(\Qbar/\Q)$-conjugates:
703
\begin{verbatim}{Galois conjugates}
704
> Newforms(S);
705
[* [*
706
q + (-a - 1)*q^2 + (2*a - 2)*q^3 + a*q^4 + (-2*a + 1)*q^5 + (-2*a
707
+ 4)*q^6 + O(q^8),
708
q + (-b - 1)*q^2 + (2*b - 2)*q^3 + b*q^4 + (-2*b + 1)*q^5 + (-2*b
709
+ 4)*q^6 + O(q^8)
710
*] *]
711
\end{verbatim}
712
713
714
\section{Modular Abelian Varieties}
715
An abelian variety is a projective variety that is equipped with an
716
algebraic group structure. Since the variety is projective, the group
717
structure must be abelian. The abelian varieties of dimension~$1$ are
718
exactly the elliptic curves. Jacobians of curves of genus $>1$ are
719
examples of abelian varieties of dimension $>1$, and it is a theorem that
720
every abelian variety over an infinite field is a quotient of a Jacobian.
721
722
The modular Jacobians $J_1(N)$ are a special class of Jacobians that
723
are very well understood because of their connection with modular
724
forms. The abelian variety $J_1(N)$ is the Jacobian of the modular
725
curve $X_1(N)$, which over~$\C$ is the quotient of the extended
726
upper half plane $\h^*$ by
727
$$
728
\Gamma_1(N) = \left\{
729
\mtwo{a}{b}{c}{d}\in\SL_2(\Z) \, : \,
730
\mtwo{a}{b}{c}{d} \con \mtwo{1}{*}{0}{1}\pmod{N}
731
\right\}.
732
$$
733
734
735
\begin{definition}[Modular Abelian Variety]
736
An abelian variety~$A$ over a number field~$K$
737
is a \defn{modular abelian variety} of level~$N$
738
if it is a quotient of $J_1(N)$.
739
\end{definition}
740
741
There is an analogue of the Shimura-Taniyama-Weil conjecture for
742
abelian varieties. Over $\Q$, the simple modular abelian
743
varieties~$A$ are supposed to be the simple abelian varieties of
744
$\GL_2$-type, i.e., those whose endomorphism ring is an order in a
745
number field of degree $\dim(A)$. For more about this {\em open
746
conjecture}, see Ribet's beautiful paper {\em Abelian Varieties
747
over~$\Q$ and Modular Forms}.
748
749
The new quotient of $J_1(N)$ breaks up as a product $\prod A_f$
750
corresponding to the $\Gal(\Qbar/\Q)$-conjugacy classes of
751
newforms~$f$. The newform abelian varieties $A_f$ are simple abelian
752
varieties over~$\Q$ and the dimension of $A_f$ is the degree of the
753
field generated by the coefficients of~$f$. For example, the isogeny
754
classes of elliptic curves over~$\Q$ are in bijection with the
755
$A_f$ with $f\in\Z[[q]]$.
756
757
I wrote a MAGMA package for doing fairly general computations with
758
modular abelian varieties, which builds on the modular symbols
759
machinery described earlier in this paper. Also, there are many
760
functions that take spaces of modular symbols as input, and compute
761
some quantity associated to the corresponding modular abelian
762
varieties. I've used this code mainly for investigations into
763
visibility of Shafarevich-Tate groups.
764
765
Here is a list of some items that one one wants to compute about
766
modular abelian variety over~$\Q$:
767
\begin{enumerate}
768
\item (*) The {\em modular degree}, i.e., the square root of the
769
degree of the natural map $A\to A^{\vee}$ induced by virtual of $A$
770
being modular.
771
\item Defining equations for $A$.
772
\item (*) The Birch and Swinnerton-Dyer quotient $L(A,1)/\Omega_A$.
773
\item\label{anrank} (*?) The order of vanishing $r=\ord_{s=1} L(A,s)$ and leading coefficient $L^{r}(A,1)/r!$
774
of the expansion of $L(A,s)$ about $s=1$.
775
\item\label{mordell-weil} The Mordell-Weil group of $A$ and the regulator $\Reg_A$.
776
\item\label{padic} The $p$-adic $L$-functions attached to $A$.
777
\item (*?) The Tamagawa numbers $c_p$ of $A$.
778
\item (*?) The torsion subgroup $A(\Q)_{\tor}$.
779
\item (*) The intersection $A\cap B$, where $A,B\subset J$.
780
\item (*) Whether $A$ is isomorphic to $A^{\vee}$, and more
781
generally the minimal degree of a homomorphism $A \to A^{\vee}$.
782
\item (?) Enumeration of the isogeny class of $A$ over~$\Q$.
783
(Perhaps via images of $A$ under natural maps into other modular Jacobians,
784
and quotients of~$A$ by carefully chosen finite subgroups.)
785
\end{enumerate}
786
My impression is that even for elliptic curves, unfortunately nobody
787
has any clue about how to {\em provably} compute $r=\ord_{s=1} L(A,s)$
788
when $r>3$; however, if we don't care about provable correctness, then
789
computing~$r$ is straightforward (see, e.g., Cremona's book). Except
790
for (\ref{anrank}), algorithms to solve the above problems are in
791
reasonable shape when $\dim(A)=1$, and would all provably terminate if
792
we knew finiteness of $\Sha(A)$. So far the situation for modular
793
abelian varieties isn't nearly as complete. The items in the above
794
list indicated with a (*) are at least partially implemented in MAGMA
795
for simple modular abelian varieties.
796
797
Substantial work has been done on finding defining equations when
798
$\dim(A)$ is small and $A = \Jac(X)$ for some curve~$X$, e.g., by the
799
researchers in Essen. The paper {\em Empirical evidence for the
800
{B}irch and {S}winnerton-{D}yer conjectures for modular {J}acobians
801
of genus 2 curves} then discussed methods for computing such an~$A$
802
when $X$ has genus~$2$, along with the Cassels-Flynn book and many
803
other papers. In contrast to this trend, my approach has been to
804
compute as much as possible about~$A$ without writing down defining
805
questions; instead I exploit the special structure coming from the
806
modularity of~$A$. Regarding (\ref{mordell-weil}), computing the
807
regulator and Mordell-Weil group seems to require having defining
808
equations. For (\ref{padic}) Robert Pollack could likely do much
809
about adding computation of $p$-adic $L$-functions of abelian
810
varieties to MAGMA.
811
812
I found the algorithm for computing component groups and Tamagawa
813
numbers. It computes the order of the component group at primes~$p$
814
such that $A_f$ has multiplicative reduction and $A_f$ is a quotient
815
of $J_0(N)$. In all cases it can find the Tamagawa number up to a
816
power of~$2$, and in many cases it can also find the Tamagawa number.
817
The reason it doesn't find the Tamagawa number in all cases is because
818
the algorithm finds the order of the group, not its group structure,
819
and the Tamagawa number is either the order of the group or the order
820
of the $2$-torsion subgroup. When the level is not prime, this
821
algorithm relies on David Kohel's MAGMA package for computing with
822
ideal classes in an Eichler order in a quaternion algebra, which is
823
unfortunately the main code that my modular forms code depends on that
824
I don't understand. It was what got me into using MAGMA in the first
825
place.
826
827
When $A$ is simple, I implemented an algorithm in MAGMA for computing
828
the exact endomorphism ring of~$A$. Then computing the minimal degree
829
of any homomorphism $A\to A^{\vee}$ can be reduced to finding all
830
solutions to a diophantine norm equation, up to units. Fortunately
831
MAGMA contains code for solving norm equations. This summer Tseno
832
Tselkov did a project with me, in which he implemented an algorithm to
833
find the minimal degree of an isogeny between $A_f$ and $A_f^{\vee}$
834
(which is not yet in the standard MAGMA distribution). Very
835
surprisingly, in all the data he computed, when $f\in
836
S_2(\Gamma_0(N))$, the minimal degree is a power of~$2$. This is
837
hopefully the first step toward an algorithm to enumerate every
838
element of the isogeny class of any $A_f$.
839
840
841
\subsection{Modular Abelian Varieties and Modular Symbols}
842
The following examples illustrate computation of most of the starred
843
items in the list above. In each case we create a simple space~$V$ of
844
modular symbols; associated to $V$ there is a newform~$f$, and
845
associated to~$f$ there is an abelian variety $A_f$, which in the
846
examples is an optimal quotient of $J_0(N)$. The space of modular
847
symbols ``is'' the homology of $A_f$, which is a rich object equipped
848
with structure coming from the modularity of $A_f$. For example, the
849
homology has a Hecke action.
850
851
In the first example, we compute with simple factors of $J_0(389)$
852
using commands applied to spaces of modular symbols (note that $389$
853
is prime). In
854
Section~\ref{sec:modabvarpackage} we will do the same computations but
855
using the modular abelian varieties package, which provides a nicer
856
wrapper around these functions (and adds other things that are not
857
possible using just modular symbols). However, to most effectively
858
use MAGMA, it is best to know about both ways of doing these
859
computations.
860
\begin{verbatim}{Modular abelian varieties via modular symbols}
861
> M := ModularSymbols(389);
862
> S := CuspidalSubspace(M);
863
> D := NewformDecomposition(S);
864
> [Dimension(A)/2 : A in D]; // dimensions of abvars A_f
865
[ 1, 2, 3, 6, 20 ]
866
> [ModularDegree(D[i]) : i in [1..#D]];
867
[ 40, 144, 992, 17856, 20480 ]
868
> [LRatio(D[i],1) : i in [1..#D]]; // BSD Ratios L(A_f,1)/Omega
869
[ 0, 0, 0, 0, 51200/97 ]
870
> Factorization(51200);
871
[ <2, 11>, <5, 2> ]
872
> LSeriesLeadingCoefficient(D[1],1,100);
873
0.75931650029224679065762600319 2
874
> E := EllipticCurve(A); AnalyticRank(E); // Watkin's new code
875
2 0.7593000000
876
> LSeriesLeadingCoefficient(D[2],1,100);
877
1.487184621319346836916654326667 1
878
> TamagawaNumber(D[1],389); // c_{389} = 1 for elliptic curve
879
1
880
> TamagawaNumber(D[5],389); // c_{389} = 97 for 20-dim quotient
881
97
882
> TorsionBound(D[5],13); // multiple of order of torsion
883
97
884
> #RationalCuspidalSubgroup(D[5]); // divisor of order of torsion
885
97
886
> Invariants(IntersectionGroup(D[1],D[2]));
887
[ 2, 2 ]
888
> Invariants(IntersectionGroup(D[1],D[5]));
889
[ 20, 20 ]
890
\end{verbatim}
891
\begin{remark}
892
If $E$ is the elliptic curve factor and $A$ is the $20$-dimensional
893
factor, then the above computation, the BSD conjecture, and
894
visibility theory imply
895
that $\Sha(A) = 5^2 \cdot 2^?$ and
896
$$(\Z/5\Z)^2 \isom E(\Q)/5 E(\Q)\subset \Sha(A).$$
897
\end{remark}
898
899
900
\subsection{The Modular Abelian Varieties Package}
901
\label{sec:modabvarpackage}
902
903
Given a Dirichlet character $\eps$ of modulus $N$, there is an abelian
904
variety $J(N,\eps)$ whose rational homology corresponds to
905
$\sS_2(N,\eps)$ viewed as a $\Q$-vector space; thus $J(N,\eps)$ is an
906
abelian variety over $\Q$ (not $\Q(\eps)$!) that is isogenous to a
907
product of abelian varieties $A_f$ attached to the
908
$\Gal(\Qbar/\Q)$-conjugacy classes of newforms of level dividing $N$
909
with character~$\eps$.
910
911
If $A\subset J(N,\eps)$ is an abelian subvariety, then
912
the image of $\H_1(A,\Q)$ in $\sS_2(N,\eps)$ is a vector
913
subspace $V_A$, and $A$ is determined by $V_A$.
914
915
An \defn{explicitly given modular abelian variety} is a modular
916
abelian variety $B$ that is specified by giving
917
a vector subspace $V \subset \sS_2(N,\eps)$ that
918
corresponds to an abelian variety $A\subset J(N,\eps)$
919
and a finite subgroup $G\subset A$. Then $B\isom A/G$.
920
Every modular abelian variety can be specified in this
921
way, though it can be a highly nontrivial problem
922
to figure out how. For example, Jaocbians of Shimura curves
923
are modular abelian varieties, but determining them explicitly
924
in terms of abelian varieties $J(N,\eps)$ is nontrivial
925
(see e.g. David Helm's Ph.D. thesis for more).
926
927
MAGMA includes a package for computing with explicitly given modular
928
abelian varieties. The following code illustrates the computations
929
that we did above, but instead uses the modular abelian varieties
930
package:
931
\begin{verbatim}{Modular abelian varieties package}
932
> J := JZero(389); J;
933
Modular abelian variety JZero(389) of dimension 32 and level 389
934
over Q
935
> D := Decomposition(J);
936
> [Dimension(A) : A in D];
937
[ 1, 2, 3, 6, 20 ]
938
> [ModularDegree(A) : A in D];
939
[ 40, 144, 992, 17856, 20480 ]
940
> [LRatio(A,1) : A in D];
941
[ 0, 0, 0, 0, 51200/97 ]
942
> L := LSeries(D[1]); L;
943
L(389A,s): L-series of Modular abelian variety 389A of dimension
944
1, level 389 and conductor 389 over Q
945
> LeadingCoefficient(L,1,200);
946
0.75931650029224679065762600319 2
947
> TamagawaNumber(D[1],389);
948
1 1 true
949
> TamagawaNumber(D[5],389);
950
97 97 true
951
> TorsionLowerBound(D[5]);
952
97
953
> TorsionMultiple(D[5]);
954
97
955
> G := RationalCuspidalSubgroup(D[5]); G;
956
Finitely generated subgroup ... with invariants [ 97 ]
957
> B := D[5]/G; B; // quotients by anything are defined.
958
Modular abelian variety of dimension 20 and level 389 over Q
959
> H := D[1] meet D[5]; // takes a while
960
> H;
961
Finitely generated subgroup ... with invariants [ 20, 20 ]
962
\end{verbatim}
963
964
\begin{remark}
965
I found (trivial-to-fix) bugs in my implementation of {\tt
966
ModularDegree} and {\tt LeadingCoefficient} functions while
967
preparing this talk; if you try the above example in MAGMA V2.11-6
968
you will get the wrong answers. I'll upload a fix right after this
969
conference.
970
\end{remark}
971
972
The modular abelian varieties package allows for creation of much more
973
general abelian varieties than the modular symbols package; for
974
example, it supports arbitrary finite direct sums and quotients by
975
finite subgroups. Also, it includes explicit computation of endomorphism
976
rings and hom rings over $\Q$.
977
\begin{verbatim}{Computation of End}
978
> J := JZero(22);
979
> [Matrix(phi) : phi in Basis(End(J))];
980
...
981
\end{verbatim}
982
This gives the following four matrices as generators:
983
$$
984
\left(\begin{matrix}
985
1 & 0 & 0 & 0 \\
986
0 & 1 & 0 & 0 \\
987
0 & 0 & 1 & 0 \\
988
0 & 0 & 0 & 1
989
\end{matrix}\right),\quad
990
\left(\begin{matrix}
991
0 & 1 & 0 & 1 \\
992
0 & 0 & 0 & 0 \\
993
1 & 0 & 1 & -1 \\
994
0 & 1 & 0 & 1 \end{matrix}\right),
995
$$
996
$$
997
\left(\begin{matrix}
998
0 & 1 & 0 & -1 \\
999
0 & 1 & 0 & 0 \\
1000
-1 & 2 & -1 & 1 \\
1001
-1 & 1 & 0 & 0 &
1002
\end{matrix}\right),\quad
1003
\left(\begin{matrix}
1004
0 & 1 & -2 & 1 \\
1005
-1 & 2 & -1 & 0 \\
1006
-1 & 0 & 1 & -1 \\
1007
0 & -1 & 1 & -1
1008
\end{matrix}\right).
1009
$$
1010
1011
Also one can do new computations with endomorphism rings. For example, the following
1012
is a table of the index of the Hecke algebra in its saturation in $\End(J_0(N))$, which
1013
is a quantity that controls the relation between the modular degree and congruences
1014
modular degree degrees (the ``congruence modulus''):
1015
\begin{verbatim}{Index of Hecke Algebra in Saturation}
1016
> function f(N)
1017
J := JZero(N);
1018
T := HeckeAlgebra(J);
1019
return Index(Saturation(T),T);
1020
end function;
1021
> for N in [1..120] do print N, f(N); end for;
1022
...
1023
\end{verbatim}
1024
This results in the following table:
1025
\begin{center}
1026
\begin{tabular}{|r|c|}\hline$N$ & $f(N)$\\\hline
1027
1&1\\
1028
2&1\\
1029
3&1\\
1030
4&1\\
1031
5&1\\
1032
6&1\\
1033
7&1\\
1034
8&1\\
1035
9&1\\
1036
10&1\\
1037
11&1\\
1038
12&1\\
1039
13&1\\
1040
14&1\\
1041
15&1\\
1042
16&1\\
1043
17&1\\
1044
18&1\\
1045
19&1\\
1046
20&1\\
1047
\hline\end{tabular}
1048
\begin{tabular}{|r|c|}\hline$N$ & $f(N)$\\\hline
1049
21&1\\
1050
22&1\\
1051
23&1\\
1052
24&1\\
1053
25&1\\
1054
26&1\\
1055
27&1\\
1056
28&1\\
1057
29&1\\
1058
30&1\\
1059
31&1\\
1060
32&1\\
1061
33&1\\
1062
34&1\\
1063
35&1\\
1064
36&1\\
1065
37&1\\
1066
38&1\\
1067
39&1\\
1068
40&1\\
1069
\hline\end{tabular}
1070
\begin{tabular}{|r|c|}\hline$N$ & $f(N)$\\\hline
1071
41&1\\
1072
42&1\\
1073
43&1\\
1074
44&2\\
1075
45&1\\
1076
46&2\\
1077
47&1\\
1078
48&1\\
1079
49&1\\
1080
50&1\\
1081
51&1\\
1082
52&1\\
1083
53&1\\
1084
54&3\\
1085
55&1\\
1086
56&2\\
1087
57&1\\
1088
58&1\\
1089
59&1\\
1090
60&2\\
1091
\hline\end{tabular}
1092
\begin{tabular}{|r|c|}\hline$N$ & $f(N)$\\\hline
1093
61&1\\
1094
62&2\\
1095
63&1\\
1096
64&2\\
1097
65&1\\
1098
66&1\\
1099
67&1\\
1100
68&2\\
1101
69&1\\
1102
70&1\\
1103
71&1\\
1104
72&2\\
1105
73&1\\
1106
74&1\\
1107
75&1\\
1108
76&2\\
1109
77&1\\
1110
78&2\\
1111
79&1\\
1112
80&4\\
1113
\hline\end{tabular}
1114
\begin{tabular}{|r|c|}\hline$N$ & $f(N)$\\\hline
1115
81&1\\
1116
82&1\\
1117
83&1\\
1118
84&2\\
1119
85&1\\
1120
86&1\\
1121
87&1\\
1122
88&8\\
1123
89&1\\
1124
90&1\\
1125
91&1\\
1126
92&16\\
1127
93&1\\
1128
94&4\\
1129
95&1\\
1130
96&8\\
1131
97&1\\
1132
98&1\\
1133
99&9\\
1134
100&1\\\hline
1135
\end{tabular}
1136
% \begin{tabular}{|r|c|}\hline$N$ & $f(N)$\\\hline
1137
% 101&1\\
1138
% 102&1\\
1139
% 103&1\\
1140
% 104&4\\
1141
% 105&1\\
1142
% 106&1\\
1143
% 107&1\\
1144
% 108&54\\
1145
% 109&1\\
1146
% 110&2\\
1147
% 111&1\\
1148
% 112&8\\
1149
% 113&1\\
1150
% 114&1\\
1151
% 115&1\\
1152
% 116&4\\
1153
% 117&1\\
1154
% 118&2\\
1155
% 119&1\\
1156
% 120&32\\\hline
1157
% \end{tabular}
1158
\end{center}
1159
This table suggests that if $p\mid f(N)$ is a prime, then $p^2\mid
1160
4\cdot N$, a fact closely related to what Ken Ribet proved at the
1161
Raynaud birthday conference in Orsay a few years ago. Also, Mazur
1162
proved that $f(p)=1$ when $p$ is prime.
1163
1164
\subsection{Three Open Problems}
1165
I'd like to finish with three open problems whose solution is needed
1166
in order to have a good theory for computing with modular abelian
1167
varieties over number fields.
1168
1169
1170
\begin{openproblem}
1171
Suppose $A$ and $B$ are explicitly given modular abelian varieties.
1172
Decide whether two explicitly given modular abelian varieties are
1173
isomorphic. (I think I know how to do this unless some simple
1174
factor occurs with multiplicity bigger than $1$ in the isogeny
1175
decomposition of both $A$ and $B$.)
1176
\end{openproblem}
1177
1178
\begin{openproblem}
1179
Find an efficient way to compute the endomorphism ring
1180
$\End(A_f/K)$, for any number field $K$.
1181
\end{openproblem}
1182
By explicit, we mean give generators as a subgroup of
1183
$\End(\H_1(A,\Z))$. This ring can be computed using the Ribet-Shimura
1184
theory of inner twists, but the formulas they give translated to
1185
modular symbols are very slow; one needs a formula involving only
1186
Manin symbols.
1187
1188
\begin{openproblem}
1189
Suppose $A$ is an abelian variety over a number field $K$, that we
1190
have explicit generators for $\End(A)$, and that $A$ is isogenous to
1191
a power $B^n$ of a simple abelian variety~$B$. Determine $A$ and
1192
find an explicit isogeny between $A$ and $B^n$.
1193
\end{openproblem}
1194
1195
I will say more about modular abelian varieties in the context
1196
of the Birch and Swinnerton-Dyer conjecture in my lecture on Thursday
1197
morning at 10:00am.
1198
1199
%There are specific algorithms for computing the presentation for
1200
%$\sM_k(N,\eps)$ in certain special cases that are better
1201
1202
\end{document}
1203