The number of Dirichlet coefficients an that have to be calculated in order to compute the values L(s). This function can be also used with a user-defined L-series before its coefficients are set, see Section Specifying the Coefficients Later.
Compute the vector of first N coefficients [* a1, ..., aN *] of the L-series given by L.
Degree: RngIntElt Default:
Precision: RngIntElt Default:
Given an L-series and a prime p, this computes the pth Euler factor, either as a polynomial or a power series. The optional parameter Degree will truncate the series to that length, and the optional parameter Precision is of use when the series is defined over the complex numbers.
The degree of an L-function.
Conductor of the L-series (real number, usually an integer). This invariant enters the functional equation and measures the `size' of the object to which the L-series is associated. Evaluating an L-series takes time roughly proportional to the square root of the conductor.
Sign in the functional equation of the L-series. This is a complex number of absolute value 1, or 0 if the sign has not been computed yet. (Calling CFENew or CheckFunctionalEquation(L) or any evaluation function sets the sign.)
The motivic weight of an L-function.
A sequence of Gamma factors λ1, ..., λd for L(s). Each one represents a factor Γ((s + λi)/2) entering the functional equation of the L-function.With the previous two intrinsics, see also HodgeStructure.
Given an L-series L, this function returns the weight, the conductor, the list of γ-shifts, the coefficient function, the sign, the poles of L * (s) and the residues of L * (s) as a tuple of length 7. If Sign =0, this means it has not been computed yet. Residues=[] means they have not yet been computed. From this data, L can be re-created with a general LSeries call (see Section Constructing a General L-Series).
Given an L-series L, this returns an array of bad prime data, each entry being a 3-tuple < p, v, U > where p is the prime, v is the conductor valuation at p, and U is the (possibly trivial) Euler factor at p.
For a modular form, the q-expansion coefficients are the same as the Dirichlet coefficients of the associated L-series:
> f := Newforms("30k2")[1,1]; > qExpansion(f,10); q - q^2 + q^3 + q^4 - q^5 - q^6 - 4*q^7 - q^8 + q^9 + O(q^10) > Lf := LSeries(f); > LGetCoefficients(Lf,20); [* 1, -1, 1, 1, -1, -1, -4, -1, 1, 1, 0, 1, 2, 4, -1, 1, 6, -1, -4, -1 *]
The elliptic curve of conductor 30 that corresponds to f has, of course, the same L-series.
> E := EllipticCurve(f); E; Elliptic Curve defined by y^2 + x*y + y = x^3 + x + 2 over Rational Field > LE := LSeries(E); > LGetCoefficients(LE,20); [* 1, -1, 1, 1, -1, -1, -4, -1, 1, 1, 0, 1, 2, 4, -1, 1, 6, -1, -4, -1 *]
Now we change the base field of E to a number field K and evaluate the L-series of E/K at s=2.
> P<x> := PolynomialRing(Integers()); > K := NumberField(x^3-2); > LEK := LSeries(E,K); > i := LSeriesData(LEK); i; <2, [ 0, 0, 0, 1, 1, 1 ], 8748000, function(p, d [ Precision ]) ... end function, 1, [], []>
The conductor of this L-series (second entry) is not that small and this is an indication that the calculations of L(E/K, 2) to the required precision (30 digits) will take some time. We can also ask how many coefficients will be used in this calculation.
> LCfRequired(LEK); 24636Decreasing the precision will help somewhat.
> LSetPrecision(LEK,9); > LCfRequired(LEK); 3364Magma now automatically does a factorization of the L-series (see the Arithmetic section).
> LEK`prod; [ <L-series of twist of Elliptic Curve defined by y^2 + x*y + y = x^3 + x + 2 over Rational Field by Artin representation S3: (1,1,1) of ext<Q|x^3-2>, 1>, <L-series of twist of Elliptic Curve defined by y^2 + x*y + y = x^3 + x + 2 over Rational Field by Artin representation S3: (2,0,-1) of ext<Q|x^3-2>, conductor 108, 1> ]
If an L-series is represented internally as a product of other L-series, say L(s)=∏i Li(s)ni, return the sequence [...<Li,ni>...].
> L := RiemannZeta(); > Factorization(L); [ <L-series of Riemann zeta function, 1> ] > R<x> := PolynomialRing(Rationals()); > K := SplittingField(x^3-2); > L := LSeries(K); > Factorization(L); [ <L-series of Riemann zeta function, 1>, <L-series of Artin representation S3: (1,-1,1) of ext<Q|x^6+108>, conductor 3, 1>, <L-series of Artin representation S3: (2,0,-1) of ext<Q|x^6+108>, conductor 108, 2> ]