We introduce generalized Bernoulli numbers attached to Dirichlet characters and give an algorithm to enumerate the Eisenstein series in .
Let be the space of modular forms of weight for , and let be the Hecke algebra acting on , which is the subring of generated by all Hecke operators. Then there is a -module decomposition
where is the subspace of modular forms that vanish at all cusps and is the Eisenstein subspace, which is uniquely determined by this decomposition. The above decomposition induces a decomposition of and of , for any Dirichlet character of modulus .
Suppose is a Dirichlet character of modulus over . Leopoldt [Leo58] defined generalized Bernoulli numbers attached to .
Definition 5.1
We define the generalized Bernoulli numbers attached to by the following identity of infinite series:
If is the trivial character of modulus and are as in Section Examples of Modular Forms of Level 1, then , except when , in which case (see Exercise 5.2).
Let denote the field generated by the image of the character ; thus is the cyclotomic extension , where is the order of .
Algorithm 5.2
Given an integer and any Dirichlet character with modulus , this algorithm computes the generalized Bernoulli numbers , for .
Compute to precision by computing to precision and computing the inverse , then multiplying by .
For each , compute , to precision . This requires computing to precision . (Omit computation of if since then .)
Then for , we have
where is the coefficient of in .
Note that in steps (1) and (2) we compute the power series doing arithmetic only in , not in , which could be much less efficient if has large order. In step (1) if is huge, we could compute the inverse using asymptotically fast arithmetic and Newton iteration.
Example 5.3
The nontrivial character with modulus has order and takes values in . The Bernoulli numbers for even are all and for odd they are
Example 5.4
The generalized Bernoulli numbers need not be in . Suppose is the mod character such that . Then for even and
Example 5.5
We use Sage to compute some of the above generalized Bernoulli numbers. First we define the character and verify that (note that in Sage zeta4 is ).
sage: G = DirichletGroup(5)
sage: e = G.0
sage: e(2)
zeta4
We compute the Bernoulli number .
sage: e.bernoulli(1)
-1/5*zeta4 - 3/5
We compute .
sage: e.bernoulli(9)
-108846/5*zeta4 - 176868/5
Proposition 5.6
If and , then .
Proof
See Exercise 5.3.
This section, which was written jointly with Kevin McGown, is about a way to compute generalized Bernoulli numbers, which is similar to the algorithm in Section Fast Computation of Bernoulli Numbers.
Let be a primitive Dirichlet character modulo its conductor . Note from the definition of Bernoulli numbers that if , then
(1)
For any character , we define the Gauss sum as
where is the principal root of unity. The Dirichlet -function for for is
In the right half plane this function is analytic, and because is multiplicative, we have the Euler product representation
(2)
We note (but will not use) that through analytic continuation can be extended to a meromorphic function on the entire complex plane.
If is a nonprincipal primitive Dirichlet character of conductor such that , then (see, e.g., [Wan82])
Solving for the Bernoulli number yields
This allows us to give decimal approximations for . It remains to compute exactly (i.e., as an algebraic integer). To simplify the above expression, we define
and write
(3)
Note that we can compute exactly in the field .
The following result identifies the denominator of .
Theorem 5.7
Let and be as above, and define an integer as follows:
Then is integral.
To compute the algebraic integer , and we compute to very high precision using the Euler product (2) and the formula (3). We carry out the same computation for each of the conjugates of , which by (1) yields the conjugates of . We can then write down the characteristic polynomial of to very high precision and recognize the coefficients as rational integers. Finally, we determine which of the roots of the characteristic polynomial is by approximating them all numerically to high precision and seeing which is closest to our numerical approximation to . The details are similar to what is explained in Section Fast Computation of Bernoulli Numbers.
Suppose and are primitive Dirichlet characters with conductors and , respectively. Let
(4)
where
Note that when and , then , where is from Chapter Modular Forms.
Miyake proves statements that imply the following in [Miy89, Ch. 7].
Theorem 5.8
Suppose is a positive integer and , are as above and that is a positive integer such that . Except when and , the power series defines an element of . If , , , and , then is a modular form in .
Theorem 5.9
The Eisenstein series in coming from Theorem 5.8 with and form a basis for the Eisenstein subspace .
Theorem 5.10
The Eisenstein series defined above are eigenforms (i.e., eigenvectors for all Hecke operators ). Also , for , is an eigenform.
Since is normalized so the coefficient of is , the eigenvalue of is the coefficient
of (see Proposition 9.10). Also for with prime, the coefficient of is , for , and .
Algorithm 5.11
Given a weight and a Dirichlet character of modulus , this algorithm computes a basis for the Eisenstein subspace of to precision .
1. [Weight Trivial Character?] If and , output the Eisenstein series , for each divisor with , and then terminate.
Remark 5.12
Algorithm 5.11 is what is currently used in Sage. It might be better to first reduce to the prime power case by writing all characters as a product of local characters and combine steps (4) and (5) into a single step that involves orders. However, this might make things more obscure.
Example 5.13
The following is a basis of Eisenstein series for .
We computed it as follows:
sage: E = EisensteinForms(Gamma1(13),2)
sage: E.eisenstein_series()
We can also compute the parameters that define each series:
sage: e = E.eisenstein_series()
sage: for e in E.eisenstein_series():
... print e.parameters()
...
([1], [1], 13)
([1], [zeta6], 1)
([zeta6], [1], 1)
([1], [zeta6 - 1], 1)
([zeta6 - 1], [1], 1)
([1], [-1], 1)
([-1], [1], 1)
([1], [-zeta6], 1)
([-zeta6], [1], 1)
([1], [-zeta6 + 1], 1)
([-zeta6 + 1], [1], 1)
Exercise 5.1
Suppose and are diagonalizable linear transformations of a finite-dimensional vector space over an algebraically closed field and that . Prove there is a basis for so that the matrices of and with respect to that basis are both simultaneously diagonal.
Exercise 5.2
If is the trivial character of modulus and are as in Section Examples of Modular Forms of Level 1, then , except when , in which case .
Exercise 5.3
Prove that for if , then .
Exercise 5.4
Show that the dimension of the Eisenstein subspace is by finding a basis of series . You do not have to write down the -expansions of the series, but you do have to figure out which to use.