Differences between revisions 53 and 54
Revision 53 as of 2012-01-10 20:36:59
Size: 11089
Editor: amy
Comment:
Revision 54 as of 2012-01-10 20:38:59
Size: 11135
Editor: amy
Comment:
Deletions are marked like this. Additions are marked like this.
Line 208: Line 208:
This $L$-functions package is still in the process of development, and there are some tools that will hopefully be added in the future: This $L$-functions package is still in the process of development, and there are some tools that will hopefully be added in the future (this section was last updated on 2012-01-10).

Introduction

Authors: Amy Feaver, Lola Thompson, Cassie Williams

Definitions

The Dedekind \zeta-function

If K is a number field over \mathbb{Q} and s\in\mathbb{C} such that Re(s)>1 then we can create \zeta_K(s), the Dedekind \zeta-function of K:

\zeta_K(s)=\sum_{I \subseteq \mathcal{O}_K} \frac{1}{(N_{K/\mathbb{Q}} (I))^s} = \sum_{n\geq1} \frac{a_n}{n^s}.
In the first sum, I runs through the nonzero ideals I of \mathcal{O}_K, the ring of integers of K, and a_n is the number of ideals in \mathcal{O}_K of norm n. These \zeta-functions are a generalization of the Riemann \zeta-function, which can be thought of as the Dedekind \zeta-function for K=\mathbb{Q}. The Dedekind \zeta-function of K also has an Euler product expansion and an analytic continuation to the entire complex plane with a simple pole at s=1, as well as a functional equation.

In Sage it is simple to construct the L-series for a number field K. For example,

returns the Dedekind \zeta-function associated to this quadratic imaginary field. The command

  • sage: LSeries('zeta')

will return the Riemann \zeta-function. One function that has interesting functionality for Dedekind \zeta-functions is the residues command, which computes the residues at each pole. If you ask for the residues of a Dedekind \zeta-function, Sage will return 'automatic':

  • sage: K.<a>=NumberField(x^2-x+1)

    sage: L=LSeries(K)

    sage: L.residues()

    • 'automatic'

but if you ask for the residues to a given precision you will get more information.

  • sage: L.residues(prec=53)

    • [-0.590817950301839]

    sage: L.residues(prec=100)

    • [-0.59081795030183867576605582778]

Remember that the coefficients count the number of ideals of a given norm:

  • sage: K.<a>=NumberField(x^2+1)

    sage: L=LSeries(K)

    sage: L.anlist(10)

    • [0, 1, 1, 0, 1, 2, 0, 0, 1, 1, 2]

implying that there is no ideal of norm 3 in \mathbb{Q}[i].

Dirichlet L-series

Dirichlet L-series are defined in terms of a Dirichlet characters. A Dirichlet character \chi mod k, for some positive integer k, is a homomorphism (\mathbb{Z}/k\mathbb{Z})^*\rightarrow\mathbb{C}. The series is given by

L(s,\chi)=\sum_{n\in\mathbb{N}}\frac{\chi(n)}{n^s},\ s\in\mathbb{C}, \text{Re}(s)>1.
Although these series can formally be defined for any Dirichlet character, it only makes (practical) sense to define these series in terms of primitive characters, because non-primitive characters will give rise to series which have missing factors in their Euler products and thus do not have an associated functional equation.

To define an L-series in Sage, you must first create a primitive character:

sage: G=DirichletGroup(11)

G is now the group of Dirichlet characters mod 11. We may then define the Dirichlet L-series over a single character from this group:

sage: L=LSeries(G.0)

gives the L-series for the character G.0 (the character which maps 2\mapsto e^{2\pi i/10}).

L-series of Elliptic Curves

Let E be an elliptic curve over \mathbb{Q} and let p be prime. Let N_p be the number of points on the reduction of E mod p and set a_p=p+1-N_p when E has good reduction mod p. Then the L-series of E, L(s,E), is defined to be

L(s,E)=\prod_p \frac{1}{L_p(p^{-s})}=\prod_{p \ \mathrm{good \ reduction}} \left(1 - a_p p^{-s} + p^{1-2s}\right)^{-1} \prod_{p \ \mathrm{bad \ reduction}} \left(1 - a_p p^{-s}\right)^{-1}
where L_p(T) = 1-a_pT+pT^2 if E has good reduction at p, and L_p(T)= 1-a_p T with a_p \in \{0,1,-1 \} if E has bad reduction mod p. (All of these definitions can be rewritten if you have an elliptic curve defined over a number field K; see Silverman's The Arithmetic of Elliptic Curves, Appendix C, Section 16.) If Re(s)>3/2 then L(s,E) is analytic, and it is conjectured that these L-series have analytic continuations to the complex plane and functional equations.

To construct L(s,E) in Sage, first define an elliptic curve over some number field.

  • sage: E=EllipticCurve('37a')

    sage: L=LSeries(E);L

    • L-series of Elliptic Curve defined by y2 + y = x3 - x over Rational Field

    sage: K.<a>=NumberField(x^2-x+1)

    sage: E2 = EllipticCurve(K, [0, 0,1,-1,0])

    sage: LSeries(E2)

    • L-series of Elliptic Curve defined by y2 + y = x3 + (-1)*x over Number Field in a with defining polynomial x^2 - x + 1

Notice in particular that although one can certainly rewrite L(s,E) as a sum over the natural numbers, the sequence of numerators no longer has an easily interpretable meaning in terms of the elliptic curve itself.

  • sage: L.anlist(10)

    • [0, 1, -2, -3, 2, -2, 6, -1, 0, 6, 4]

L-series of Modular Forms

If f is a modular form of weight k, it has a Fourier expansion f(z)=\sum_{n\geq0} a_n (e^{2\pi i z})^n. Then the L-series of f is

L(s,f)=\sum_{n\geq1} \frac{a_n}{n^s}
which does converge on some half-plane. These L-series have an analytic continuation and functional equation, but not necessarily an Euler product formula.

Basic Sage Functions for L-series

Series Coefficients

The command L.anlist(n) will return a list V of n+1 numbers; 0, followed by the first n coefficients of the L-series L. The zero is included simply as a place holder, so that the kth L-series coefficient a_k will correspond to the kth entry V[k] of the list.

For example:

  • sage: K.\langle a\rangle = NumberField(x^3 + 29) sage: L = LSeries(K) sage: L.anlist(5)

will return [0,1,1,1,2,1], which is [0,a_1,a_2,a_3,a_4,a_5] for this L-series.

To access the value of an individual coefficient, you can use the function an (WE ACTUALLY HAVE TO WRITE AN INTO SAGE FIRST...). For example, for the series used above:

sage: L.an(3)

will return 1 (the value of a_3), and

sage: L.an(4)

returns 2.

Evaluation of L-functions at Values of s

For any L-function L, simply type

sage: L(s)

to get the value of the function evaluated at s\in\mathbb{C}.

Taylor Series for L-functions

This function will return the Taylor series of an L-function L. If the user does not enter any arguments, the center of the series will default to weight/2. For example, if L is the Riemann zeta function,

sage: L.taylor_series()

will output the Taylor series centered at weight/2=0.5. You can also specify degree, variable and precision. Entering

sage: L.taylor_series(center=2, degree=4, variable='t', prec=30)

will give you the Taylor series with the properties you would expect. Note that degree=4 actually means you will compute the first 4 terms of the series, giving you a degree 3 polynomial. The output of the above line therefore will be the Taylor polynomial 1.6449341 - 0.93754825t + 0.99464012t^{2} - 1.0000243t^{3} + O(t^{4}).

Euler Product

An Euler product is an infinite product expansion of a Dirichlet series, indexed by the primes. For a Dirichlet series of the form

F(s) = \sum_{n = 1}^\infty \frac{a_n}{n^s},
the corresponding Euler product (if it exists) has the form
F(s) = \prod_p \left(1 - \frac{a_p}{p^s}\right)^{-1}.
In many cases, an L-series can be expressed as an Euler product. By definition, if an L-series has a Galois representation then it has an Euler product. Some examples of common L-series with Euler products include:

1. Riemann zeta function

\zeta(s) = \sum_{n = 1}^\infty \frac{1}{n^s} = \prod_p \left(1 - p^{-s}\right)^{-1}

2. Dirichlet L-function

L(s, \chi) = \sum_{n = 1}^\infty \frac{\chi(n)}{n^s} = \prod_p \left(1 - \frac{\chi(p)}{p^s}\right)^{-1}

3. L-function of an Elliptic Curve (over \mathbb{Q})

L(E, s) = \sum_{n = 1}^\infty \frac{a_n}{n^s} = \prod_{p \ \mathrm{good \ reduction}} \left(1 - a_p p^{-s} + p^{1-2s}\right)^{-1} \prod_{p \ \mathrm{bad \ reduction}} \left(1 - a_p p^{-s}\right)^{-1}

Not all L-series have an associated Euler product, however. For example, the Epstein Zeta Functions, defined by

\zeta_Q(s) = \sum_{(u,v) \neq (0,0)} (au^2 + buv + cv^2)^{-s},

where Q(u,v) = au^2 + buv + cv^2 is a positive definite quadratic form, has a functional equation but, in general, does not have an Euler product.

To define an L-series by an Euler product in Sage, one can use the LSeriesAbstract class. For example,

  • sage: L = LSeriesAbstract(conductor=1, hodge_numbers=[0], weight=1, epsilon=1, poles=[1], residues=[-1], base_field=QQ)

    sage: L

returns an L-series Euler product with conductor 1, Hodge numbers [0], weight 1, epsilon 1, poles [1], residues [-1] over a Rational Field.

Note: In order to use this class, the authors created a derived class that implements a method _local_factor(P), which takes as input a prime ideal P of K=base\_field, and returns a polynomial that is typically the reversed characteristic polynomial of Frobenius at P of Gal(\overline{K}/K) acting on the maximal unramified quotient of some Galois representation. This class automatically computes the Dirichlet series coefficients a_n from the local factors of the L-function.

Functional Equation

Zeros and Poles

Analytic Rank

The analytic rank of an L-series is the order of vanishing of the zero at the central critical point (half the weight of the L-series). In Sage, you can compute the analytic rank of any L-series L by using the command:

sage: L.analytic_rank()

WARNING: It is important to note that the analytic rank is computed using numerical methods, and is not provably correct.

The analytic rank of an L-series of an elliptic curve plays an important role in the Birch and Swinnerton-Dyer conjecture. Specifically, part of the BSD conjecture claims that the rank of the group or points on an elliptic curve E over a number field K is the order of vanishing of the L-function L(s,E) at s=1. Generalizations of the BSD conjecture exist for abelian varieties of higher dimension as well.

Future Developments

This L-functions package is still in the process of development, and there are some tools that will hopefully be added in the future (this section was last updated on 2012-01-10).

1. Triple Product L-functions: a class which can be used to define L-functions on a tensor product of three modular forms

2. Precision Issues: The goal regarding precision issues is to allow this package to take, as input, the a_p with Norm(p)<B for some real constant B, and inform the user of how many bits of precision they will get when implementing an L-function defined by these a_p. Basically, this will invert the already existing function number_of_coefficients(prec).

3. Finding L-series From Incomplete Information

days33/lfunction/tutorial (last edited 2012-01-10 20:38:59 by amy)