We saw in Chapter Modular Forms of Level 1 (especially
Section Structure Theorem for Level 1 Modular Forms) that we can compute each space
explicitly. This involves computing Eisenstein
series
and
to some precision, then forming the basis
for
.
In this chapter we consider the more general problem of computing
, for any positive integer
. Again we have a
decomposition
where is spanned by generalized
Eisenstein
series and
is the space of cusp forms,
i.e., elements of
that vanish at all cusps.
In Chapter Eisenstein Series and Bernoulli Numbers we compute the space
in a similar way to how we computed
. On the other
hand, elements of
often cannot be written as sums
or products of generalized Eisenstein series. In fact, the structure
of
is, in general, much more complicated than that
of
. For example, when
is a prime,
has dimension
, whereas
has dimension about
.
Fortunately an idea of Birch, which he called modular symbols, provides a
method for computing and indeed for much more
that is relevant to understanding special values of
-functions.
Modular symbols are also a powerful theoretical tool. In this
chapter, we explain how
is related to modular
symbols and how to use this relationship to explicitly compute a
basis for
. In Chapter General Modular Symbols we will
introduce more general modular symbols and explain how to use them to
compute
,
and
for
any integers
and
and character
.
Section Hecke Operators contains a very brief summary of basic facts
about modular forms of weight , modular curves, Hecke operators,
and integral homology. Section Modular Symbols introduces modular
symbols and describes how to compute with them. In
Section Computing the Boundary Map we talk about how to cut out the
subspace of modular symbols corresponding to cusp forms using the
boundary map. Section Computing a Basis for is about a straightforward
method to compute a basis for
using modular
symbols, and Section Computing Using Eigenvectors outlines a more
sophisticated algorithm for computing newforms that uses
Atkin-Lehner theory.
Before reading this chapter, you should have read Chapter Modular Forms and Chapter Modular Forms of Level 1. We also assume familiarity with algebraic curves, Riemann surfaces, and homology groups of compact Riemann surfaces.
Recall from Chapter Modular Forms that the group
acts on
by linear fractional transformations.
The quotient
is a Riemann surface, which
we denote by
. See [DS05, Ch. 2] for a
detailed description of the topology on
. The Rieman surface
also has a canonical structure of algebraic curve over
,
as is explained in [DS05, Ch. 7] (see also
[Shi94, Section 6.7]).
Recall from Section Modular Forms of Any Level that a cusp form of weight
for
is a function
on
such that
defines
a holomorphic differential on
.
Equivalently, a cusp form is a holomorphic function
on
such
that
The space of weight
cusp forms on
is a finite-dimensional complex vector space, of dimension equal to
the genus
of
. The space
is a compact
oriented Riemann surface, so it is a
-dimensional oriented real
manifold, i.e.,
is a
-holed torus (see
Figure 3.1).
Condition (b) in the definition of means that
has a Fourier
expansion about each element of
. Thus, at
we have
where, for brevity, we write .
Example 3.1
Let be the elliptic curve defined by the equation
.
Let
, where
is the reduction of
mod
(note that for the
primes that divide the conductor of
we have
,
).2
For
composite, define
using the relations at the
end of Section Computing Using Eigenvectors.
Then the Shimura-Taniyama conjecture asserts that
is the -expansion of an element of
. This
conjecture, which is now a theorem (see
[BCDT01]), asserts that any
-expansion constructed as above from an elliptic curve over
is a modular form. This conjecture was mostly proved first by
Wiles [Wil95] as a key step in the proof of Fermat’s
last theorem.
Just as is the case for level modular forms (see
Section Hecke Operators) there are commuting Hecke operators
that act on
. To define them
conceptually, we introduce an interpretation of the modular curve
as an object whose points parameterize elliptic curves
with extra structure.
Proposition 3.2
The complex points of
are in natural bijection with
isomorphism classes of pairs
, where
is an elliptic
curve over
and
is a cyclic subgroup of
of
order
. The class of the point
corresponds to
the pair
Proof
See Exercise 3.1.
Suppose and
are coprime positive integers. There are two
natural maps
and
from
to
; the
first,
, sends
to
, where
is the unique cyclic subgroup of
of order
, and the
second,
, sends
to
, where
is the
unique cyclic subgroup of
of order
. These maps extend in a
unique way to algebraic maps from
to
:
(1)
The Hecke operator
is
,
where
and
denote pullback and pushforward
of differentials, respectively. (There is a similar definition
of
when
.)
Using our interpretation of
as differentials
on
, this gives an action of Hecke operators on
.
One can show that these induce the maps of Proposition 2.31
on
-expansions.
Example 3.3
There is a basis of so that
Notice that these matrices commute. Also, the characteristic
polynomial of is
.
The first homology group is the group of closed
-cycles modulo boundaries of
-cycles (formal sums of images of
-simplexes). Topologically
is a
-holed torus,
where
is the genus of
. Thus
is a free
abelian group of rank
(see, e.g.,
[Gre81, Ex. 19.30] and [DS05, Section 6.1]),
with two generators corresponding to each hole, as illustrated in the
case
in Figure 3.1.
Figure 3.1
The homology of
The homology of is closely related to modular forms, since
the Hecke operators
also act on
. The action
is by pullback of homology classes by
followed by taking the
image under
, where
and
are as in
(1).
Integration defines a pairing
(2)
Explicitly, for a path ,
Theorem 3.4
The pairing (2) is nondegenerate and Hecke
equivariant in the sense that for every Hecke operator , we
have
.
Moreover, it induces a perfect pairing
This is a special case of the results in Section Pairing Modular Symbols and Modular Forms.
As we will see, modular symbols allow us to make explicit the action
of the Hecke operators on ; the above pairing then
translates this into a wealth of information about cusp forms.
We will also consider the relative homology group
of
relative to the cusps; it is the same as usual homology, but i
n addition we allow paths with endpoints in the cusps instead of
restricting to closed loops. Modular symbols provide a
“combinatorial” presentation of
in terms of paths
between elements of
.
Let be the free abelian group with basis the set of symbols
with
modulo the 3-term
relations
above and modulo any torsion. Since is torsion-free, we have
Warning
The symbols satisfy the relations
, so order matters. The
notation
looks like the set containing two
elements, which strongly (and incorrectly) suggests that the order
does not matter. This is the standard notation in the literature.
Figure 3.2
The modular symbols and
As illustrated in Figure 3.2, we “think of” this
modular symbol as the homology class, relative to the cusps, of a path
from to
in
.
Define a left action of on
by letting
act by
and acts on
and
via the corresponding linear
fractional transformation. The space
of
modular symbols for `\Gamma_0(N)` is the quotient of
by the submodule generated by the infinitely many elements of the form
, for
in
and
in
, and modulo
any torsion. A modular symbol for
is an element of this
space. We frequently denote the equivalence class of a modular symbol
by giving a representative element.
Example 3.6
Some modular symbols are no matter what the level
is! For
example, since
, we have
so
See Exercise 3.2 for a generalization of this observation.
There is a natural homomorphism
(3)
that sends a formal linear combination of geodesic paths in the upper
half plane to their image as paths on . In
[Man72] Manin proved that (3) is an
isomorphism (this is a fairly involved topological argument).
Manin identified the subspace of that is
sent isomorphically onto
. Let
denote the free abelian group whose basis is the finite set
of cusps for
. The boundary map
sends to
, where
denotes the basis element of
corresponding to
. The kernel
of
is
the subspace of cuspidal modular symbols. Thus an element of
can be thought of as a linear combination of
paths in
whose endpoints are cusps and whose images in
are homologous to a
-linear combination of closed paths.
Theorem 3.7
The map above induces a canonical isomorphism
Proof
This is [Man72, Thm. 1.9].
For any (commutative) ring let
and
Proposition 3.8
We have
Proof
We have
Example 3.9
We illustrate modular symbols in the case when .
Using Sage (below),
which implements the algorithm that we describe below
over
, we find that
has basis
,
,
.
A basis for the integral homology
is the
subgroup generated by
and
.
sage: set_modsym_print_mode ('modular')
sage: M = ModularSymbols(11, 2)
sage: M.basis()
({Infinity,0}, {-1/8,0}, {-1/9,0})
sage: S = M.cuspidal_submodule()
sage: S.integral_basis() # basis over ZZ.
({-1/8,0}, {-1/9,0})
sage: set_modsym_print_mode ('manin') # set it back
In this section, we describe a trick of Manin that we will use to prove that spaces of modular symbols are computable.
By Exercise 1.6 the group has finite index in
. Fix right coset representatives
for
in
, so that
where the union is disjoint. For example, when is prime, a list
of coset representatives is
Let
(4)
where if there is
such
that
.
Proposition 3.10
There is a bijection between and the right cosets of
in
, which sends a coset representative
to the class of
in
.
Proof
See Exercise 3.3.
See Proposition 1.27 for the analogous statement for
.
We now describe an observation of Manin (see
[Man72, Section 1.5]) that is crucial to making
computable. It allows us to write any modular
symbol
as a
-linear combination of symbols of
the form
, where the
are coset
representatives as above. In particular, the finitely many symbols
generate
.
Proposition 3.11
[Manin]
Let be a positive integer and
a set of right coset representatives for
in
.
Every
is a
-linear combination of
.
We give two proofs of the proposition. The first is useful for computation (see [Cre97a, Section 2.1.6]); the second (see [MTT86, Section 2]) is easier to understand conceptually since it does not require any knowledge of continued fractions.
Proof
Since
it suffices to consider modular symbols of the form ,
where the rational number
is in lowest terms. Expand
as a continued fraction and consider the successive convergents in
lowest terms:
where the first two are included formally. Then
so that
Hence
for some , is of the required special form. Since
this completes the proof.
Proof
As in the first proof it suffices to prove the proposition for any
symbol , where
is in lowest terms. We will induct
on
. If
, then the symbol is
,
which corresponds to the identity coset, so assume that
.
Find
such that
then so the matrix
is an element of . Thus
for
some right coset representative
and
.
Then
as elements of . By induction,
is a linear combination of symbols of the form
,
which completes the proof.
Example 3.12
Let , and consider the modular symbol
. We have
so the partial convergents are
Thus, noting as in Example 3.6 that , we have
We compute the convergents of in Sage as follows (note that
and
are excluded):
sage: convergents(4/7)
[0, 1, 1/2, 4/7]
As above, fix coset representatives for
in
. Consider formal symbols
for
.
Let
be the modular symbol
.
We equip the symbols
with a
right action of
, which is given by
, where
.
We extend the notation by writing
, where
. Then the right action of
is simply
.
Theorem 1.2 implies that
is generated by the two matrices
and
.
Note that
from Theorem 1.2 and
, so
The following theorem provides us with a finite presentation for the
space of modular symbols.
Theorem 3.13
Consider the quotient of the free abelian group
on Manin symbols
by the subgroup
generated by the elements (for all
):
and modulo any torsion. Then there is an isomorphism
given by .
Proof
We will only prove that
is surjective; the proof that
is injective requires much more work and will be omitted from this book (see [Man72, Section 1.7] for a complete proof).
Proposition 3.11 implies that
is surjective, assuming that
is well defined. We next verify that
is well defined, i.e., that the listed 2-term and 3-term relations hold in the image. To see that the first relation holds, note that
![]()
For the second relation we have
![]()
Example 3.14
By default Sage computes modular symbols spaces over , i.e.,
.
Sage represents (weight
) Manin symbols as pairs
.
Here
are integers that satisfy
; they define a point
, hence a right coset of
in
(see Proposition 3.10).
Create in Sage by typing
ModularSymbols(N, 2).
We then use the Sage command manin_generators to enumerate a list
of generators
as in
Theorem 3.13 for several spaces of modular symbols.
sage: M = ModularSymbols(2,2)
sage: M
Modular Symbols space of dimension 1 for Gamma_0(2)
of weight 2 with sign 0 over Rational Field
sage: M.manin_generators()
[(0,1), (1,0), (1,1)]
sage: M = ModularSymbols(3,2)
sage: M.manin_generators()
[(0,1), (1,0), (1,1), (1,2)]
sage: M = ModularSymbols(6,2)
sage: M.manin_generators()
[(0,1), (1,0), (1,1), (1,2), (1,3), (1,4), (1,5), (2,1),
(2,3), (2,5), (3,1), (3,2)]
Given x=(c,d), the command x.lift_to_sl2z(N)
computes an element of whose lower two entries are
congruent to
modulo
.
sage: M = ModularSymbols(2,2)
sage: [x.lift_to_sl2z(2) for x in M.manin_generators()]
[[1, 0, 0, 1], [0, -1, 1, 0], [0, -1, 1, 1]]
sage: M = ModularSymbols(6,2)
sage: x = M.manin_generators()[9]
sage: x
(2,5)
sage: x.lift_to_sl2z(6)
[1, 2, 2, 5]
The manin_basis command returns a list of indices into the
Manin generator list such that the corresponding symbols form a basis
for the quotient of the -vector space spanned by Manin symbols
modulo the
-term and
-term relations of
Theorem 3.13.
sage: M = ModularSymbols(2,2)
sage: M.manin_basis()
[1]
sage: [M.manin_generators()[i] for i in M.manin_basis()]
[(1,0)]
sage: M = ModularSymbols(6,2)
sage: M.manin_basis()
[1, 10, 11]
sage: [M.manin_generators()[i] for i in M.manin_basis()]
[(1,0), (3,1), (3,2)]
Thus, e.g., every element of is a
-linear
combination of the three symbols
,
, and
.
We can write each of these as a modular symbol using the
modular_symbol_rep function.
sage: M.basis()
((1,0), (3,1), (3,2))
sage: [x.modular_symbol_rep() for x in M.basis()]
[{Infinity,0}, {0,1/3}, {-1/2,-1/3}]
The manin_gens_to_basis function returns a matrix whose rows express each Manin symbol generator in terms of the subset of Manin symbols that forms a basis (as returned by manin_basis).
sage: M = ModularSymbols(2,2)
sage: M.manin_gens_to_basis()
[-1]
[ 1]
[ 0]
Since the basis is , this
means that in
, we have
and
.
(Since no denominators are involved, we have in
fact computed a presentation of
.)
To convert a Manin symbol to an element of a modular
symbols space
, use M(x):
sage: M = ModularSymbols(2,2)
sage: x = (1,0); M(x)
(1,0)
Next consider :
sage: M = ModularSymbols(6,2)
sage: M.manin_gens_to_basis()
[-1 0 0]
[ 1 0 0]
[ 0 0 0]
[ 0 -1 1]
[ 0 -1 0]
[ 0 -1 1]
[ 0 0 0]
[ 0 1 -1]
[ 0 0 -1]
[ 0 1 -1]
[ 0 1 0]
[ 0 0 1]
Recall that our choice of basis for
is
.
Thus, e.g., the first row of this matrix says that
, and the fourth row asserts
that
.
sage: M = ModularSymbols(6,2)
sage: M((0,1))
-(1,0)
sage: M((1,2))
-(3,1) + (3,2)
When is a prime not dividing
, define
The Hecke operators are compatible with
the integration pairing
of Section Hecke Operators, in the
sense that
.
When
, the definition is the same, except that the matrix
is not included in the sum (see Theorem 1.44).
There is a similar definition of
for
composite
(see Section General Definition of Hecke Operators).
In [Mer94], L. Merel gives a description of the action of
directly on Manin symbols
(see
Section Hecke Operators on Manin Symbols for details). For example, when
and
is odd, we have
(5)
For any prime, let be the set of matrices
constructed using the following algorithm (see [Cre97a, Section 2.4]):
Algorithm 3.16
Given a prime , this algorithm outputs a list of
matrices of determinant
that can be used to compute the Hecke
operator
.
Proposition 3.17
Let be as above. Then
for
and
a Manin
symbol, we have
Proof
See Proposition~2.4.1 of [Cre97a].
There are other lists of matrices, due to Merel, that work even when
(see Section Hecke Operators on Manin Symbols).
The command HeilbronnCremonaList(p), for prime,
outputs the list of matrices from Algorithm 3.16.
sage: HeilbronnCremonaList(2)
[[1, 0, 0, 2], [2, 0, 0, 1], [2, 1, 0, 1], [1, 0, 1, 2]]
sage: HeilbronnCremonaList(3)
[[1, 0, 0, 3], [3, 1, 0, 1], [1, 0, 1, 3], [3, 0, 0, 1],
[3, -1, 0, 1], [-1, 0, 1, -3]]
sage: HeilbronnCremonaList(5)
[[1, 0, 0, 5], [5, 2, 0, 1], [2, 1, 1, 3], [1, 0, 3, 5],
[5, 1, 0, 1], [1, 0, 1, 5], [5, 0, 0, 1], [5, -1, 0, 1],
[-1, 0, 1, -5], [5, -2, 0, 1], [-2, 1, 1, -3],
[1, 0, -3, 5]]
sage: len(HeilbronnCremonaList(37))
128
sage: len(HeilbronnCremonaList(389))
1892
sage: len(HeilbronnCremonaList(2003))
11662
.. index::
pair: Sage; Hecke operator `T_2`
Example 3.18
We compute the matrix of
on
:
sage: M = ModularSymbols(2,2) sage: M.T(2).matrix() [1]
Example 3.19
We compute some Hecke operators on :
sage: M = ModularSymbols(6, 2)
sage: M.T(2).matrix()
[ 2 1 -1]
[-1 0 1]
[-1 -1 2]
sage: M.T(3).matrix()
[3 2 0]
[0 1 0]
[2 2 1]
sage: M.T(3).fcp() # factored characteristic polynomial
(x - 3) * (x - 1)^2
For we have
, since
is
spanned by generalized Eisenstein series (see Chapter Eisenstein Series and Bernoulli Numbers).
Example 3.20
We compute the Hecke operators on :
sage: M = ModularSymbols(39, 2)
sage: T2 = M.T(2)
sage: T2.matrix()
[ 3 0 -1 0 0 1 1 -1 0]
[ 0 0 2 0 -1 1 0 1 -1]
[ 0 1 0 -1 1 1 0 1 -1]
[ 0 0 1 0 0 1 0 1 -1]
[ 0 -1 2 0 0 1 0 1 -1]
[ 0 0 1 1 0 1 1 -1 0]
[ 0 0 0 -1 0 1 1 2 0]
[ 0 0 0 1 0 0 2 0 1]
[ 0 0 -1 0 0 0 1 0 2]
sage: T2.fcp() # factored characteristic polynomial
(x - 3)^3 * (x - 1)^2 * (x^2 + 2*x - 1)^2
The Hecke operators commute, so their eigenspace structures are related.
sage: T2 = M.T(2).matrix()
sage: T5 = M.T(5).matrix()
sage: T2*T5 - T5*T2 == 0
True
sage: T5.charpoly().factor()
(x^2 - 8)^2 * (x - 6)^3 * (x - 2)^2
The decomposition of is a list of the kernels of
, where
runs through the irreducible factors of the
characteristic polynomial of
and
exactly divides this
characteristic polynomial. Using Sage, we find them:
sage: M = ModularSymbols(39, 2)
sage: M.T(2).decomposition()
[
Modular Symbols subspace of dimension 3 of Modular
Symbols space of dimension 9 for Gamma_0(39) of weight
2 with sign 0 over Rational Field,
Modular Symbols subspace of dimension 2 of Modular
Symbols space of dimension 9 for Gamma_0(39) of weight
2 with sign 0 over Rational Field,
Modular Symbols subspace of dimension 4 of Modular
Symbols space of dimension 9 for Gamma_0(39) of weight
2 with sign 0 over Rational Field
]
In Section Modular Symbols we defined a map . The kernel of this map is the space
of cuspidal modular symbols. This kernel will be
important in computing cusp forms in Section Computing Using Eigenvectors
below.
To compute the boundary map on , note
that
, so
if
, then
Computing this boundary map would appear to first require an algorithm
to compute the set
of cusps for
. In fact, there is a trick that computes the
set of cusps in the course of running the algorithm. First, give an
algorithm for deciding whether or not two elements of
are
equivalent modulo the action of
. Then simply construct
in the course of computing the boundary map, i.e.,
keep a list of cusps found so far, and whenever a new cusp class is
discovered, add it to the list. The following proposition,
which is proved in [Cre97a, Prop. 2.2.3], explains how to determine
whether two cusps are equivalent.
Proposition 3.21
Let
,
, be pairs of integers with
and possibly
. There is
such that
in
if and only if
![]()
where
satisfies
.
In Sage the command boundary_map() computes the boundary map from
to
, and the
cuspidal_submodule
command computes its kernel. For example, for level
the boundary
map is given by the matrix
, and its kernel is the
space:
sage: M = ModularSymbols(2, 2)
sage: M.boundary_map()
Hecke module morphism boundary map defined by the matrix
[ 1 -1]
Domain: Modular Symbols space of dimension 1 for
Gamma_0(2) of weight ...
Codomain: Space of Boundary Modular Symbols for
Congruence Subgroup Gamma0(2) ...
sage: M.cuspidal_submodule()
Modular Symbols subspace of dimension 0 of Modular
Symbols space of dimension 1 for Gamma_0(2) of weight
2 with sign 0 over Rational Field
The smallest level for which the boundary map has nontrivial kernel,
i.e., for which , is
.
sage: M = ModularSymbols(11, 2)
sage: M.boundary_map().matrix()
[ 1 -1]
[ 0 0]
[ 0 0]
sage: M.cuspidal_submodule()
Modular Symbols subspace of dimension 2 of Modular
Symbols space of dimension 3 for Gamma_0(11) of weight
2 with sign 0 over Rational Field
sage: S = M.cuspidal_submodule(); S
Modular Symbols subspace of dimension 2 of Modular
Symbols space of dimension 3 for Gamma_0(11) of weight
2 with sign 0 over Rational Field
sage: S.basis()
((1,8), (1,9))
The following illustrates that the
Hecke operators preserve :
sage: S.T(2).matrix()
[-2 0]
[ 0 -2]
sage: S.T(3).matrix()
[-1 0]
[ 0 -1]
sage: S.T(5).matrix()
[1 0]
[0 1]
A nontrivial fact is that for prime the eigenvalue of each
of these matrices is
, where
is the
elliptic curve
defined by the (affine) equation
For example, we have
sage: E = EllipticCurve([0,-1,1,-10,-20])
sage: 2 + 1 - E.Np(2)
-2
sage: 3 + 1 - E.Np(3)
-1
sage: 5 + 1 - E.Np(5)
1
sage: 7 + 1 - E.Np(7)
-2
The same numbers appear as the eigenvalues of Hecke operators:
sage: [S.T(p).matrix()[0,0] for p in [2,3,5,7]]
[-2, -1, 1, -2]
In fact, something similar happens for every elliptic curve over .
The book [DS05] (especially Chapter~8) is about this
striking numerical relationship between the number of
points on elliptic curves
modulo
and coefficients of modular forms.
This section is about a method for using modular symbols to compute a
basis for . It is not the most efficient for
certain applications, but it is easy to explain and understand.
See Section Computing Using Eigenvectors for a method that takes
advantage of additional structure of
.
Let and
be the spaces
of modular symbols and cuspidal modular symbols over
. Before we begin, we
describe a simple but crucial fact about the relation between cusp
forms and Hecke operators.
If is a power series,
let
be the
coefficient of
.
Notice that
is a
-linear map
.
As explained in [DS05, Prop. 5.3.1] and
[Lan95, Section VII.3] (recall also Proposition 2.31), the
Hecke operators act on elements of
as follows (where
below):
(6)
where if
and
if
.
(Note: More generally, if
is a modular form
with Dirichlet character
, then the above formula holds; above
we are considering this formula in the special case when
is the trivial character and
.)
Lemma 3.22
Suppose and
is a positive integer. Let
be the operator on
-expansions (formal power series) defined
by (6). Then
Proof
The coefficient of in (6) is
.
The Hecke algebra is the ring generated by all
Hecke operators
acting on
.
Let
denote the image of the Hecke algebra in
, and let
be the
-span of the Hecke operators. Let
denote the subring of
generated over
by all Hecke operators acting on
formal power series via definition (6).
Proposition 3.23
There is a bilinear pairing of complex vector spaces
given by
If is such that
for
all
, then
.
Proof
The pairing is bilinear since both and
are linear.
Suppose is such that
for all
.
Then
for each positive integer
.
But by Lemma 3.22 we have
for all ; thus
.
Proposition 3.24
There is a perfect bilinear pairing of complex vector spaces
given by
Proof
The pairing has kernel on the left by
Proposition 3.23.
Suppose that
is such that
for all
.
Then
for all
. For any
, the image
is also a cusp form, so
for all
and
. Finally the fact that
is commutative
and Lemma 3.22 together imply that for all
and
,
so for all
. Thus
is the
operator.
Since has finite dimension and the
kernel on each side of the pairing is
, it follows
that the pairing is perfect, i.e., defines an isomorphism
By Proposition 3.24 there is an isomorphism of vector spaces
(7)
that sends to the homomorphism
For any -linear map
, let
Lemma 3.25
The series is the
-expansion of
.
Proof
Note that it is not even a priori obvious that
is the
-expansion of a modular form.
Let
, which is by definition the unique element of
such that
for all
.
By Lemma 3.22, we have
so for all
.
Proposition 3.23 implies that
, so
,
as claimed.
Conclusion:
The cusp forms , as
varies through a
basis of
, form a basis
for
.
In particular, we can compute
by computing
, where we compute
in any way we want,
e.g., using a space that contains an isomorphic copy of
.
Algorithm 3.26
Given positive integers and
, this algorithm computes
a basis for
to precision
.
Compute
via the presentation of Section Manin Symbols.
Compute the subspace
of cuspidal modular symbols as in Section
Computing the Boundary Map.
Let .
By Proposition 3.8,
is the dimension of
.
Let denote the matrix of
acting on a basis of
. For a matrix
, let
denote the
. For various integers
with
, compute formal
-expansions
until we find enough to span a space of dimension (or
exhaust all of them). These
are a basis for
to precision
.
We use Sage to demonstrate Algorithm 3.26.
Example 3.27
The smallest with
is
.
sage: M = ModularSymbols(11); M.basis()
((1,0), (1,8), (1,9))
sage: S = M.cuspidal_submodule(); S
Modular Symbols subspace of dimension 2 of Modular
Symbols space of dimension 3 for Gamma_0(11) of weight
2 with sign 0 over Rational Field
We compute a few Hecke operators, and then read off a
nonzero cusp form, which forms a basis for :
sage: S.T(2).matrix()
[-2 0]
[ 0 -2]
sage: S.T(3).matrix()
[-1 0]
[ 0 -1]
Thus
forms a basis for .
Example 3.28
We compute a basis for to precision
.
sage: M = ModularSymbols(33)
sage: S = M.cuspidal_submodule(); S
Modular Symbols subspace of dimension 6 of Modular
Symbols space of dimension 9 for Gamma_0(33) of weight
2 with sign 0 over Rational Field
Example 3.29
Next consider , where we have
The command q_expansion_cuspforms computes
matrices and returns a function
such that
is the
-expansion of
to some precision.
(For efficiency reasons,
in Sage actually
computes matrices of
acting
on a basis for the linear dual of
.)
sage: M = ModularSymbols(23)
sage: S = M.cuspidal_submodule()
sage: S
Modular Symbols subspace of dimension 4 of Modular
Symbols space of dimension 5 for Gamma_0(23) of weight
2 with sign 0 over Rational Field
sage: f = S.q_expansion_cuspforms(6)
sage: f(0,0)
q - 2/3*q^2 + 1/3*q^3 - 1/3*q^4 - 4/3*q^5 + O(q^6)
sage: f(0,1)
O(q^6)
sage: f(1,0)
-1/3*q^2 + 2/3*q^3 + 1/3*q^4 - 2/3*q^5 + O(q^6)
Thus a basis for is
Or, in echelon form,
which we computed using
sage: S.q_expansion_basis(6)
[
q - q^3 - q^4 + O(q^6),
q^2 - 2*q^3 - q^4 + 2*q^5 + O(q^6)
]
In this section we describe how to use modular symbols to construct a
basis of consisting of modular forms that are
eigenvectors for every element of the ring
generated by the
Hecke operator
, with
. Such eigenvectors are called
eigenforms.
Suppose is a positive integer that divides
. As explained in
[Lan95, VIII.1–2], for each divisor
of
there is
a natural degeneracy map
given by
. The
new subspace of
, denoted
, is the complementary
-submodule of the
-module generated by the images of all maps
,
with
and
as above. It is a nontrivial fact that this
complement is well defined; one possible proof uses the Petersson
inner product (see [Lan95, Section VII.5]).
The theory of Atkin and Lehner [AL70] (see
Theorem 9.4 below) asserts that, as a -module,
decomposes as follows:
To compute it suffices to compute
for each
.
We now turn to the problem of computing .
Atkin and Lehner [AL70] proved that
is spanned by eigenforms for all
with
and that the common eigenspaces of all the
with
each have dimension
. Moreover, if
is an eigenform then the coefficient of
in the
-expansion of
is nonzero, so it is possible to
normalize
so the coefficient of
is
(such a
normalized eigenform in the new subspace is called a
newform). With
so normalized, if
, then
the
Fourier coefficient of
is
. If
is a normalized eigenvector for all
, then the
, with
composite, are determined by the
, with
prime, by the following formulas:
when
and
are relatively prime and
for
prime. When
,
. We conclude that in order to compute
, it suffices to compute all systems of
eigenvalues
of the prime-indexed Hecke
operators
acting on
.
Given a system of eigenvalues, the corresponding eigenform is
, where the
, for
composite,
are determined by the recurrence given above.
In light of the pairing introduced in
Section Hecke Operators,
computing the above systems of eigenvalues
amounts to computing the systems of eigenvalues of the Hecke operators
on the subspace
of
that corresponds
to the new subspace of
For each proper divisor
of
and each divisor
of
, let
be the map
sending
to
.
Then
is the intersection of the kernels of all
maps
.
Computing the systems of eigenvalues of a collection of commuting diagonalizable endomorphisms is a problem in linear algebra (see Chapter Linear Algebra).
Example 3.30
All forms in are new.
Up to Galois conjugacy, the eigenvalues of the Hecke operators
,
,
, and
on
are
and
, where
. Each of these eigenvalues occur
in
with multiplicity two; for example,
the characteristic polynomial of
on
is
.
Thus
is spanned by
where is the other
-conjugate of
.
To compute the -expansion of a basis for
, we use
the degeneracy maps so that we only have to solve the problem for
, for all integers
. Using modular
symbols, we compute all systems of eigenvalues
, and then write down the corresponding
eigenforms
.
Exercise 3.1
Suppose that are in the same orbit for
the action of
, i.e., that there exists
such that
. Let
and
.
Prove that the pairs
and
are
isomorphic.
(By an isomorphism
of pairs, we mean an
isomorphism
of elliptic curves that sends
to
. You may use the fact that an isomorphism of elliptic curves
over
is a
-linear map
that sends the lattice
corresponding to one curve onto the lattice corresponding to the
other.)
Exercise 3.2
Let be integers and
a positive integer. Prove that the
modular symbol
is
as an element of
. [Hint: See Example 3.6.]
Exercise 3.3
Let be a prime.
Exercise 3.4
Use the inductive proof of Proposition 3.11 to write
in terms of Manin symbols for
.
Exercise 3.5
Show that the Hecke operator acts as multiplication
by
on the space
as follows: