Author: William A. Stein
Compute Environment: Ubuntu 18.04 (Deprecated)
1\documentclass{article}
2\hoffset=-0.03\textwidth
3\textwidth=1.06\textwidth
4\voffset=-0.03\textheight
5\textheight=1.06\textheight
6\bibliographystyle{amsalpha}
7%\usepackage[hyperindex,pdfmark]{hyperref}
8\usepackage[hypertex]{hyperref}
9
10\include{macros}
11\title{Explicitly Computing the Endomorphism Rings of Modular Abelian Varieties}
12\author{William Stein}
13\setcounter{section}{1}
14\begin{document}
15\maketitle
16
17Let $\Gamma$ be a subgroup of $\SL_2(\Z)$ that contains $\Gamma_1(N)$
18for some $N$, and let $J=\Jac(X_\Gamma)$ be the Jacobian of the
19corresponding modular curve.  The abelian variety~$J$ is defined
20over~$\Q$ and has dimension $g=\dim S_2(\Gamma)$.  It is isogenous to
21a product (with multiplicities) of simple abelian subvarieties
22$A_f\subset J$ attached to newforms of level dividing~$N$.
23When $f$ is a newform (of level~$N$), the Hecke algebra
24$$25 \T=\T_\Gamma = \Z[\ldots, T_n, \ldots] \subset \End(J) 26$$
27preserves $A_f$, so there is a restriction homomorphism
28$\T\to \End(A_f)$.  This homomorphism is almost surjective,
29in the following sense.
30\begin{proposition}
31The homomorphism $\T\to \End(A_f)$ has finite cokernel.
32\end{proposition}
33\begin{proof}
34By \cite{shimura:factors}, the image of
35$T \tensor \Q$ in $\End(A_f/\Q) \tensor \Q$ is a
36field of degree $\dim A_f$. But~$A_f$ is simple by
37\cite[Cor.~4.2]{ribet:twistsendoalg}, so
38\cite[Thm.~2.1]{ribet:abvars} implies that
39$\End(A_f/\Q) \tensor \Q$ also has dimension $\dim(A_f)$.
40Thus $\T\tensor\Q$ surjects onto $\End(A_f/\Q) \tensor \Q$,
41which proves the claim.
42\end{proof}
43
44When $\Gamma=\Gamma_0(N)$, we have computed all cokernels
45$\T\to\End(A_f)$ for all $N\leq 332$.  See
46Example~\ref{ex:tim} below.
47
48\begin{remark}
49  Note that $\End(A_f/\Qbar)$ is sometimes larger than $\End(A_f/\Q)$.
50  The ring $\End(A_f/\Qbar)$ can also be computed via methods similar to the ones
51  described here, but in addition to Hecke operators one has
52to compute endomorphisms on modular symbols attached
54  {\em efficient} way to compute these inner twist operators on
55  modular symbols.
56 Motivation: If
57  one could make computation of $\End(A_f/\Qbar)$ efficient, then
58  combined with a characteristic zero meataxe'' (the presumed
59  subject of Allan Steele's Ph.D. research), one would have a general
60  algorithm for computing all $\Q$-curves of given level.
61 Note also that Ribet has studied the abstract structure of
62  $\End(A_f/\Qbar)$ in detail (see \cite{ribet:twistsendoalg}).
63\end{remark}
64
65Using modular symbols, one can describe $\H_1(J,\Z)\ncisom \Z^{2g}$
66explicitly as a module over the Hecke algebra $\T=\Z[\ldots, T_n, 67\ldots]$.  Also, for each newform~$f$ there is an injection $A_f\hra 68J$, which induces an inclusion $$69\Lambda_f = \H_1(A_f,\Z) \hra \H_1(J,\Z)$$
70with
71saturated image, i.e., torsion free cokernel.  Given~$f$, the image of
72$\H_1(A_f,\Z)$ in $\H_1(J,\Z)$ can be explicitly computed just using
73Hecke operators.  We view $A_f$ as a complex torus given by this
74image, which defines a subtorus of the complex torus $$75J(\C) \isom 76\H_1(J,\R)/\H_1(J,\Z).$$
77
78
79\begin{algorithm}{Saturate}\label{alg:saturate}
80Given a subspace $V$ of $\Q^n$, this algorithm computes
81the intersection $L=V \cap \Z^n$.
82\begin{steps}
83\item{} [Echelon Form] Using the reduced row echelon form of a basis
84matrix of~$V$, find a matrix $A \in M_n(\Z)$ whose integer kernel is~$L$.
85(In practice, $V$ will be presented by giving the reduced row echelon
86form of a basis matrix.)
87\item{} [Kernel] Compute $\Ker(A)$, e.g., as described in \cite[\S2.7.1]{cohen:course_ant},
88using the LLL lattice reduction algorithm.
89Since $L$ is saturated in $\Z^n$, we have $L=\Ker(A)$.
90\end{steps}
91\end{algorithm}
92
93
94\begin{lemma}\label{lem:gal}
95Let $K$ be a number field.
96If an element $x\in \C$ is fixed by every element of $\Aut(\C/K)$,
97then $x\in K$.
98\end{lemma}
99\begin{proof}
100  If $x\in\Kbar$, this is standard Galois theory.  If $x\not\in 101 \Kbar$, then $x$ is transcendental.
102Since $x+1$ is also transcendental,
103the fields $\Kbar(x)$ and $\Kbar(x+1)$ are isomorphic via a map $\sigma$
104sending $x$ to $x+1$.
105Every automorphism of a subfield of $\C$
106extends to $\C$, so $\sigma$ extends to an automorphism of $\C$
107that does not fix~$x$.
108\end{proof}
109
110\begin{proposition}\label{prop:end}
111  If $A$ is a simple abelian variety over a number field $K$, then
112  $$\End(A/K) = (\End(A/K)\tensor \Q)\cap \End(\Lambda_A),$$
113  where
114  $\Lambda_A = \H_1(A,\Z)$ and we implicitly embed $\End(A/K)$ in
115  $\End(\Lambda_A)$, so the intersection takes place in
116  $\End(\Lambda_A)\tensor\Q$.
117\end{proposition}
118\begin{proof}
119
120The inclusion of $\End(A/K)$ in the right hand side is obvious,
121so suppose $\vphi \in (\End(A/K)\tensor \Q)\cap \End(\Lambda_A)$.
122Then there is a positive integer $n$ such that $n\vphi\in \End(A/K)$.
123Thus $n\vphi$ induces a complex-linear endomorphism of $\Tan_0(A_\C)$.
124Hence $\vphi$ induces a complex-linear endomorphism of $\Tan_0(A_\C)$,
125and by hypothesis $\vphi$ preserves $\Lambda_A$.
126An element of $\End(A/\C)$ is a complex linear map on $\Tan_0(A_\C)$
127that preserves $\Lambda_A$, so $\vphi\in\End(A/\C)$.
128
129There is an action of $\Gal(\C/K)$ on $\End(A/\C)$, which
130we extend $\Q$-linearly to an action on $\End(A/\C)\tensor\Q$.
131Since $n\vphi \in \End(A/K) \subset \End(A/\C)$ is
132defined over $K$, for any $\sigma\in\Gal(\C/K)$,
133we have $\sigma(n\vphi) = n\vphi$.
134But
135$$\sigma(n\vphi) = \sigma([n])\sigma(\vphi) = [n]\sigma(\vphi),$$
136so
137$$[n](\sigma(\vphi) - \vphi) = 0,$$
138which implies $\sigma(\vphi)=\vphi$, since the kernel of $[n]$
139is finite and image of $\sigma(\vphi)-\vphi$ is either infinite or $0$.
140By Lemma~\ref{lem:gal}, $\vphi\in \End(A/K)$.
141\end{proof}
142
143\begin{algorithm}{Compute $\End(A_f)$}\label{alg:endaf}
144Let $f\in S_2(\Gamma)$ be a newform.
145This algorithm computes $\End(A_f)$.
146\begin{enumerate}
147\item{} [Initialize] Let $d=\dim(A_f)$, let $n=2$, and let $V=\Q I$ be the
148      subspace of $\End(A_f/\Q)\tensor\Q \subset \End(\H_1(A_f,\Q))$
149spanned by the identity matrix.
150\item{} [Compute Hecke Operator]
151Using modular symbols, compute the restriction $T_n|_{A_f}$ of the Hecke operator
152$T_n$ to $\H_1(A_f,\Q)$.
153\item{} [Increase $V$]\label{step:increase}
154Replace $V$ by $V+W$, where $W$ is the span of the powers
155$T_n|_{A_f}^i$, for $i=1,2,\ldots, d$.
156\item{} [Finished?]\label{step:finished}
157If $\dim(V) < d$, go to step 2.
158\item{} [Saturate] Compute $\End(A_f/\Q) = 159V \cap \End(\Lambda_{A_f})$ using Algorithm~\ref{alg:saturate}.
160\end{enumerate}
161\end{algorithm}
162
163\begin{remark}
164  Often we find $A_f$ by finding a Hecke operator $T$, which is a
165  random linear combination of $T_n$ with~$n$ small, such that the
166  characteristic polynomial of~$T$ on $S_2(\Gamma)_{\new}$ is square
167  free.  Then the image of~$T$ in $\End(A_f/\Q)$ will generate
168  $\End(A_f/\Q)\tensor\Q$ as an algebra.
169  If we use $T$ instead of $T_n$ in Step~\ref{step:increase},
170  we will always be finished in Step~\ref{step:finished}.
171\end{remark}
172
173\begin{remark}
174Algorithm~\ref{alg:endaf} can be extended to arbitrary
175explicit factors~$A$ of $\Jac(X_\Gamma)$ by
176decomposing~$A$ up to isogeny as a product of $A_f$'s.
177\end{remark}
178
179\begin{remark}
180Everything we have done formally make sense with~$f$ replaced
181by a newform of weight $k>2$.    What is the importance of $\End(A_f(\C))$
182and the cokernel of  $\T \to \End(A_f(\C))$ in this case?
183\end{remark}
184
185
186One can also compute the image of $\T$ in $\End(A_f)$ as a subring,
187since $T_1,\ldots, T_r$, generate $\T$ as a $\Z$-module,
188where $r=\frac{km}{12}$ with $m=[\SL_2(\Z):\Gamma]$
189(see \cite[App.]{lario-schoof}).
190
191\begin{example}
192We compute $\End(J_0(23))$ and note that it equals the Hecke
193algebra.
194\begin{verbatim}
195   > J := JZero(23);
196   > R := End(J);
197   > Basis(R);
198   [   Homomorphism from JZero(23) to JZero(23) given by:
199       (Identity Matrix)
200       Homomorphism from JZero(23) to JZero(23) given by:
201       [ 0  1 -1  0]
202       [ 0  1 -1  1]
203       [-1  2 -2  1]
204       [-1  1  0 -1]]
205   > T := HeckeAlgebra(J);
206   > Index(R,T);
207   1
208\end{verbatim}
209\end{example}
210
211% \begin{example}
212% {\small
213% \begin{verbatim}
214% > J := JZero(389); A := Factorization(J); A;
215% Modular abelian variety 389E of dimension 20, level 389 and
216% conductor 389^20 over Q
217% > time Index(End(A),HeckeAlgebra(A));
218% 1
219% Time: 8.470 seconds    (on my laptop)
220% > R := BaseRing(Newform(A)); O := MaximalOrder(R);
221% > factor(Discriminant(End(A)) / Discriminant(O));
222% [ <2, 24> ]
223% \end{verbatim}
224% }
225% \end{example}
226
227\begin{example}
228Let $A_f\subset J_0(559)$ be the newform abelian variety of dimension~$15$.
229In this example we verify that $\End(A_f/\Q)$ is generated by the Hecke
230operators, but note that the index of $\End(A_f/\Q)$ in its normalization
231is $7$.  Note that the discriminant of the endomorphism ring
232is the discriminant of the trace pairing matrix acting on homology,
233not of left multiplication on itself, so the discriminant
234is $2^{\dim(A)}$ times as big as it would be otherwise.
235\begin{verbatim}
236   > J := JZero(559);
237   > [Dimension(D) : D in Factorization(J)];
238   [ 3, 4, 7, 14, 15, 1, 2 ]
239   > A := Factorization(J); A;
240   Modular abelian variety 559E of dimension 15, level 13*43 and
241   conductor 13^15*43^15 over Q
242   > Index(End(A),HeckeAlgebra(A));
243   1
244   > Discriminant(End(A));
245   2747410093977522170045665218920448
246   > R := BaseRing(Newform(A)); O := MaximalOrder(R);
247   > Discriminant(O);
248   1711108207844339282005880064
249   > Factorization(Discriminant(End(A)) div Discriminant(O));
250   [ <2, 15>, <7, 2> ]
251   > Factorization(Discriminant(O));
252   [ <2, 8>, <3, 1>, <29, 1>, <37, 1>, <97, 1>, <4802947, 1>,
253     <4456942220789, 1> ]
254   > Factorization(Discriminant(R));
255   [ <2, 8>, <3, 1>, <7, 2>, <29, 1>, <37, 1>, <97, 1>,
256     <4802947, 1>, <4456942220789, 1> ]
257\end{verbatim}
258\end{example}
259
260\begin{example}\label{ex:tim}
261If $A_f\subset J_0(N)$ is a newform abelian subvariety, then
262the cokernel of the restriction map
263$264 \T \to \End(A_f) 265$
266is relevant to questions involving congruences
267between modular forms.
268For $N\leq 338$, the map $\T\to \End(A_f)$ is surjective,
269except in a few cases.
270The cokernel has order~$2$ for the following $A_f$:
271$$94B, 125C, 160C, 166B, 196C, 199C, 224C, 272224D, 227B, 227E, 233C, 249E,$$
273$$250B, 250C, 256E, 259B, 277D, 278D, 295D, 299G, 274303E, 307F, 320G, 326D,$$
275$$329D, 331C, 332C, 338G, 338H.$$
276Note that $199$ and several other of these levels are prime.
277The cokernel has order~$3$ for
278$321D$ and $335D$.  Note that $335=5\cdot 67$ is coprime to~$3$.
279\end{example}
280\begin{question}
281Is the cokernel of
282$283 \T \to \End(A_f) 284$
285a power of $2$ times a power of $3$?
286\end{question}
287
288\bibliography{biblio}
289\end{document}
290
291We used the following program to
292verify the above statement.
293\begin{verbatim}
294   > procedure f(N)
295        D := Factorization(NewSubvariety(JZero(N)));
296        for i in [1..#D] do
297            n := Index(End(D[i]),HeckeAlgebra(D[i]));
298            if n gt 1 then
299                print N, i, n;
300            end if;
301        end for;
302     end procedure;
303   > for N in [1..1000] do f(N); end for;
30494 2 2
305125 3 2
306
307\end{verbatim}
308