Global Function Fields

In this section \(F/k\) denotes a global function field.

Functions relative to the Exact Constant Field

NumberOfPlacesOfDegreeOverExactConstantField(F, m): FldFun, RngIntElt -> RngIntElt
NumberOfPlacesDegECF(F, m): FldFun, RngIntElt -> RngIntElt

The number of places of degree \(m\) of the global function field \(F/k\). Contrary to the Degree function the degree is here taken over the respective exact constant fields.

NumberOfPlacesOfDegreeOneOverExactConstantField(F): FldFunG -> RngIntElt
NumberOfPlacesOfDegreeOneECF(F): FldFunG -> RngIntElt

The number of places of degree one in the global function field \(F/k\). Contrary to the Degree() function the degree is here taken over the exact constant field.

NumberOfPlacesOfDegreeOneOverExactConstantField(F, m): FldFunG, RngIntElt -> RngIntElt
NumberOfPlacesOfDegreeOneECF(F, m): FldFun, RngIntElt -> RngIntElt

The number of places of degree one in the constant field extension of degree \(m\) of the global function field \(F/k\). Contrary to the Degree() function the degree is here taken over the respective exact constant fields.

SerreBound(F): FldFunG -> RngIntElt
SerreBound(F, m): FldFunG, RngIntElt -> RngIntElt
SerreBound(q, g): RngIntElt, RngIntElt -> RngIntElt

The Serre bound on the number of places of degree one in a global function field of genus \(g\) over the exact constant field of \(q\) elements (of the global function field \(F\), of the constant field extension of degree \(m\) of \(F\)). Contrary to the Degree() function the degree is here taken over the respective exact constant fields.

IharaBound(F): FldFunG -> RngIntElt
IharaBound(F, m): FldFunG, RngIntElt -> RngIntElt
IharaBound(q, g): RngIntElt, RngIntElt -> RngIntElt

The Ihara bound on the number of places of degree one in a global function field \(F/k\) of genus \(g\) over the exact constant field of \(q\) elements (of the global function field \(F\), of the constant field extension of degree \(m\) of \(F\)). Contrary to the Degree function the degree is here taken over the respective exact constant fields.

NumberOfPlacesOfDegreeOneECFBound(F): FldFunG -> RngIntElt
NumberOfPlacesOfDegreeOneOverExactConstantFieldBound(F): FldFunG -> RngIntElt
NumberOfPlacesOfDegreeOneECFBound(F, m): FldFun, RngIntElt -> RngIntElt
NumberOfPlacesOfDegreeOneOverExactConstantFieldBound(F, m): FldFunG, RngIntElt -> RngIntElt
NumberOfPlacesOfDegreeOneECFBound(q, g): RngIntElt, RngIntElt -> RngIntElt
NumberOfPlacesOfDegreeOneOverExactConstantFieldBound(q, g): RngIntElt, RngIntElt -> RngIntElt

The minimum of the Serre and Ihara bound. Contrary to the Degree function the degree is here taken over the respective exact constant fields.

LPolynomial(F): FldFunG -> RngUPolElt

The \(L\)-polynomial of the global function field \(F/k\) (with respect to the exact constant field).

LPolynomial(F, m): FldFunG, RngIntElt -> RngUPolElt

The \(L\)-polynomial of the constant field extension of degree \(m\) of the global function field \(F/k\) (with respect to the exact constant field).

ZetaFunction(F): FldFunG -> FldFunRatUElt

The Zeta function of the global function field \(F/k\) (with respect to the exact constant field).

ZetaFunction(F, m): FldFunG, RngIntElt -> FldFunRatUElt

The Zeta function of the constant field extension of degree \(m\) of the global function field \(F/k\) (with respect to the exact constant field).

Functions Relative to the Constant Field

Places(F, m): FldFunG, RngIntElt -> SeqEnum[PlcFunElt]

A sequence containing the places of degree \(m\) of the global function field \(F/k\).

HasPlace(F, m): FldFunG, RngIntElt -> BoolElt, PlcFunElt

Returns true and a place of degree \(m\) if and only if there exists such a place in the global function field; false otherwise.

HasRandomPlace(F, m): FldFunG, RngIntElt -> BoolElt, PlcFunElt

Returns true and a random place of degree \(m\) in the global function field (false if there are none).

RandomPlace(F, m): FldFunG, RngIntElt -> PlcFunElt

Returns a random place of degree \(m\) in the global function field or throws an error if there is none.

Example: Invariants of a Global Function Field (ex-8f580e)

Run in calculator (opens in a new tab)

> Y<t> := PolynomialRing(Integers());
> R<x> := FunctionField(GF(9));
> P<y> := PolynomialRing(R);
> f := y^3 + y + x^5 + x + 1;
> F<alpha> := FunctionField(f);
> Genus(F);
4
> NumberOfPlacesDegECF(F, 1);
22
> NumberOfPlacesOfDegreeOneECFBound(F);
32
> HasRandomPlace(F, 2);
true (x^2 + $.1*x + 2, alpha + $.1^2*x + $.1^5)
> LPolynomial(F);
6561*t^8 + 8748*t^7 + 7290*t^6 + 3888*t^5 + 1539*t^4 + 432*t^3 + 90*t^2
    + 12*t + 1

Run in calculator (opens in a new tab)

Example: Invariants of a Global Relative Field (ex-9f3184)

Run in calculator (opens in a new tab)

Some of the above functions are demonstrated for a global relative field.

> PF<x> := PolynomialRing(GF(13, 2));
> P<y> := PolynomialRing(PF);
> FF1<b> := ext<FieldOfFractions(PF) | y^2 - x>;
> P<y> := PolynomialRing(FF1);
> FF2<d> := ext<FF1 | y^3 - b>;
> RER_FF2 := RationalExtensionRepresentation(FF2);
> NumberOfPlacesOfDegreeOneECF(FF2) eq NumberOfPlacesOfDegreeOneECF(RER_FF2);
true
> SerreBound(FF2);
170
> NumberOfPlacesDegECF(FF2, 1);
170
> _, P := HasPlace(FF2, 1);
> P;
(x, (($.1^44*x + $.1^100)*b + ($.1^82*x + $.1^10))*d^2 + (($.1^85*x + $.1^67)*b
    + ($.1^107*x + $.1^130))*d + ($.1^26*x + $.1^69)*b + $.1^149*x)
> Degree(P) eq 1;
true
> LPolynomial(FF2, 2) eq LPolynomial(RER_FF2, 2);
true

Run in calculator (opens in a new tab)