The L-function and Counting Points

To compute the L-function one can use the intrinsic LFunction or alternatively one can do it "by hand", using the tools in this section and the next (as illustrated in Example H131E6).

LFunction(E) : CrvEll[FldFunRat] -> RngUPolElt
LFunction(E, S) : CrvEll[FldFunRat], <SeqEnum> -> RngUPolElt
    Check: BoolElt                      Default: true
The L-function of the elliptic curve E, which should be defined over a rational function field over a finite field.

To speed up the computation, the points in S are used to reduce the unknown part of H2; S should be a sequence of points on E or on some base change of E by an extension of the constant field. If the parameter Check is set to false then the points in S must form a basis for a subgroup of the geometric Mordell--Weil group modulo torsion that is mapped to itself by the Galois group of the extension of the fields of constants.

LFunction(E, e) : CrvEll[FldFunRat], RngIntElt -> RngUPolElt
The L-function for the base change of the elliptic curve E by a constant field extension of degree e.
AnalyticRank(E) : CrvEll[FldFunG] -> RngIntElt
The Mordell--Weil rank of E as predicted by Tate's version of the Birch--Swinnerton-Dyer conjecture (or equivalently, the Artin--Tate conjecture). This is an unconditional upper bound and is proved to be the actual rank for several classes of curves, such as those arising from rational elliptic surfaces and K3 elliptic surfaces. It is required that E is defined over a function field over a finite field.
AnalyticInformation(E) : CrvEll[FldFunG] -> Tup
AnalyticInformation(E, L) : CrvEll[FldFunG], RngUPolElt -> Tup
AnalyticInformation(E, e) : CrvEll[FldFunG], RngIntElt -> Tup
This function computes what is predicted by the Birch--Swinnerton-Dyer (or Artin--Tate) conjecture about E, which should be an elliptic curve defined over a function field over a finite field. The data is given as a tuple consisting of the rank, geometric rank, and the product of the order of Tate--Shafarevich group and the regulator.

When a polynomial L is given as a second argument then function will assume that L is the L-function of E.

When an integer e is given as a second argument then the function will return analytic data for the base change of E by the constant field extension of degree e. This is more efficient than simply calling AnalyticInformation on the base change.

Example CrvEllFldFun_sha3 (H131E2)

The curve y2 = x3 + 2t2x + (t3 + 2t2 + 2t) over F3(t) has rank 0 and its Tate--Shafarevich group contains Z/3 direct-sum Z/3. We may conclude this (unconditionally) from the analytic information, since the Tate conjecture is proved for rational elliptic surfaces.
> F<t> := FunctionField(GF(3));
> E := EllipticCurve([ 2*t^2, t^3 + 2*t^2 + 2*t ]);
> AnalyticInformation(E);
<0, 4, 9>
Furthermore, the rank of E(/line(F3)(t)) is 4.

Example CrvEllFldFun_rank2-continued (H131E3)

We consider again the curve y2 = x3 + (t4 + 2t2)x + t3 + 2t over F3(t), which was found to have rank 2 and regulator 12 in Example H131E1.
> F<t> := FunctionField(GF(3));
> E := EllipticCurve([ t^4 + 2*t^2, t^3 + 2*t ]);
> AnalyticInformation(E);
<2, 8, 12>
This confirms that the rank is 2 and tells us that the regulator multiplied by the order of Sha is 12; hence the Tate--Shafarevich group is trivial. Again this is unconditional.
NumberOfPointsOnSurface(E, e) : CrvEll, RngIntElt -> RngIntElt
Returns the number of points on the Kodaira--Néron model of the elliptic curve E over an extension of the constant field of degree e.
NumbersOfPointsOnSurface(E, e) : CrvEll, RngIntElt -> [ RngIntElt ], [ RngIntElt ]
If an elliptic curve E is defined over a function field over a finite field of q elements then this intrinsic computes a sequence containing the number of points on the corresponding Kodaira--Néron model of E over extensions of Fq of degree up to e, together with the number of points on the base curve over these extensions.
BettiNumber(E, i) : CrvEll, RngIntElt -> RngIntElt
Returns the i-th Betti number of the Kodaira--Néron model of the elliptic surface corresponding to the elliptic curve E.
CharacteristicPolynomialFromTraces(traces) : [ Fld ] -> RngUPolElt
Given a sequence traces=[t1, t2, ..., td], this function computes a polynomial of degree d with constant coefficient equal to 1 such that the j-th powersum of the reciprocal zeroes of this polynomial is equal to tj. This is typically used when one wants to compute the characteristic polynomial of Frobenius acting on some piece of cohomology from traces of various powers of Frobenius.
CharacteristicPolynomialFromTraces(traces, d, q, i) : [ Fld ], RngIntElt, RngIntElt, RngIntElt -> RngUPolElt, RngUPolElt
Given a sequence of field elements [t1, t2, ..., tk] and integers d, q, and i, this function computes a polynomial of degree d with constant coefficient 1 such that the reciprocals of the zeroes of this polynomial have absolute value qi/2 and the j-th powersum of the reciprocals of these zeroes equals tj. For this function one must have k at least equal to Floor(d/2). A priori the leading coefficient of the polynomials is not determined from the list of traces; in this case two polynomials are returned, one for each choice of sign. One usually needs to provide Ceiling(d/2) traces in order to determine the sign, but in certain cases more traces are required. This function is typically used when one wants to compute the characteristic polynomial of Frobenius acting on a piece of the i-th cohomology group from traces of various powers of Frobenius.
V2.28, 13 July 2023