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.