# Modular Forms of Weight 2¶

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.

## Hecke Operators¶

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

1. the expression is invariant under replacing by for each and
2. vanishes at every cusp for .

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 .

### Homology¶

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 .

## Modular Symbols¶

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


## Computing with Modular Symbols¶

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]


### Manin Symbols¶

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)


## Hecke Operators¶

### Hecke Operators on Modular Symbols¶

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).

Example 3.15

For example, when , we have

See Figure 3.3.

Figure 3.3

Image of under

### Hecke Operators on Manin Symbols¶

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 .

1. Output .
2. For :
1. Let , , , , , .
2. Output .
3. As long as , do the following:
1. Let be the integer closest to (if is a half integer, round away from ).
2. Let , , .
3. Set , and\ .
4. Output .

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
]


## Computing the Boundary Map¶

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.

## Computing a Basis for ¶

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 .

1. Compute via the presentation of Section Manin Symbols.

2. Compute the subspace of cuspidal modular symbols as in Section Computing the Boundary Map.

3. Let . By Proposition 3.8, is the dimension of .

4. 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 .

### Examples¶

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)
]


## Computing Using Eigenvectors¶

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 .

### Summary¶

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 .

## Exercises¶

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.

1. List representative elements of .
2. What is the cardinality of as a function of ?
3. Prove that there is a bijection between the right cosets of in and the elements of that sends to . (As mentioned in this chapter, the analogous statement is also true when the level is composite; see [Cre97a, Section 2.2] for complete details.) end{enumerate}

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:

1. Write down right coset representatives for in .
2. List all eight relations coming from Theorem 3.13.
3. Find a single Manin symbols so that the three other Manin symbols are a nonzero multiple of modulo the relations found in the previous step.
4. Use formula (5) to compute . You will obtain a sum of four symbols. Using the relations above, write this sum as a multiple of . (The multiple must be or you made a mistake.)

#### Previous topic

Modular Forms of Level 1

#### Next topic

Dirichlet Characters