|
In this section F/k denotes a global function field.
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.
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.
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, 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, 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.
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.
The L-polynomial of the global function field F/k
(with respect to the exact constant field).
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).
The Zeta function of the global function field F/k (with respect to the
exact constant field).
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).
A sequence containing the places of degree m of the global function
field F/k.
Returns true and a place of degree m if and only if there exists
such a place in the global function field; false otherwise.
Returns true and a random place of degree m in the global function field
(false if there are none).
Returns a random place of degree m in the global function field or
throws an error if there is none.
> 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
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
Given a maximal `finite' order O in a global function field, return
the unit rank of O.
The unit group of a `finite' maximal order O as an Abelian group
and the map from the unit group into O. Also see
IsUnitWithPreimage.
The regulator of the unit group of the `finite' maximal order O.
The map from the multiplicative group of the field of fractions of O to
the group of fractional ideals of O where O is a `finite' maximal order.
Following on from the last example,
> EFF2F := EquationOrderFinite(FF2);
> G, m := UnitGroup(EFF2F);
> G;
Abelian Group isomorphic to Z/168
Defined on 1 generator
Relations:
168*G.1 = 0
> m(Random(G));
[ [ $.1^120, 0 ], [ 0, 0 ], [ 0, 0 ] ]
> IsUnit($1);
true
> Regulator(EFF2F);
1
DegreeBound: RngIntElt Default:
SizeBound: RngIntElt Default:
ReductionDivisor: DivFunElt Default:
Proof: BoolElt Default:
The divisor class group of F/k as an Abelian group, a map of
representatives from the class group to the divisor group and the
homomorphism from the divisor group onto the divisor class group.
For a detailed description see ClassGroup.
The ideal class group of the `finite' maximal order O as an Abelian
group, a map of representatives from the ideal class group to the group of
fractional ideals and the homomorphism from the group of fractional
ideals onto the ideal class group.
Returns the maps in the center of the exact sequence 0 -> U -> F x -> Id -> Cl -> 0 where U is the unit group of O, F x is the
multiplicative group of the field of fractions of O, Id is the
group of fractional ideals of O and Cl is the class group of O
for a `finite' maximal order O.
DegreeBound: RngIntElt Default:
SizeBound: RngIntElt Default:
ReductionDivisor: DivFunElt Default:
Proof: BoolElt Default:
Computes a sequence of integers containing the Abelian invariants
of the divisor class group of F/k. For a detailed description see
ClassGroupAbelianInvariants.
Computes a sequence of integers containing the Abelian invariants
of the ideal class group of the `finite' maximal order O.
The order of the group of divisor classes of degree zero of F/k.
The order of the ideal class group of the `finite' maximal order O.
An example of class groups of relative fields is shown.
> 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 : Check := false>;
> MFF2I := MaximalOrderInfinite(FF2);
> G, m, mi := ClassGroup(FF2);
> m(Random(G));
Divisor in reduced representation:
Divisor in ideal representation:
Fractional ideal of Maximal Equation Order of FF2 over Maximal Equation Order of
FF1 over Univariate Polynomial Ring in x over GF(13^2)
Generators:
1
($.1^60/x*b + $.1^57/x)*d^2 + ($.1^141/x*b + $.1^4/x)*d + $.1^80/x*b, Ideal of
MFF2I
Generators:
1
1,
-2,
6*(1/x, (($.1^132*x^2 + $.1^164*x + 12)/x^3*b + ($.1^85*x^2 + $.1^155*x +
12)/x^3)*d^2 + (($.1^75*x^2 + $.1^81*x + 12)/x^3*b + ($.1^29*x^2 + $.1^155*x
+ 12)/x^3)*d + ($.1^163*x^2 + $.1^29*x + 12)/x^3*b + ($.1^141*x + 12)/x^2),
(x)^2 * (1/x)^2
> mi(&+[Divisor(Random(FF2, 3)) : i in [1 .. 3]]);
0
> ClassNumber(FF2);
1
The group of global units of F/k, i. e. the multiplicative group of
the exact constant field, as an Abelian group, together with the map
into F. Also see IsGlobalUnit and
IsGlobalUnitWithPreimage.
Compute the p-rank of the class group of F/k where p is the
characteristic of F/k. For a detailed description see
ClassGroupPRank.
Return the Hasse--Witt invariant of F/k.
See HasseWittInvariant
for a detailed description.
A sequence of independent units of the `finite' maximal order O.
A sequence of fundamental units of the `finite' maximal order O.
> R<x> := FunctionField(GF(3));
> P<y> := PolynomialRing(R);
> f := y^4 + x*y + x^4 + x + 1;
> F<a> := FunctionField(f);
> O := MaximalOrderFinite(F);
> Basis(O);
[ 1, a, a^2, a^3 ]
> Discriminant(O);
x^12 + x^3 + 1
> UnitRank(O);
1
> U := FundamentalUnits(O);
> U;
[ [ x^33 + x^31 + 2*x^30 + 2*x^28 + 2*x^27 + x^25 + 2*x^24 + x^22 + 2*x^19 +
2*x^15 + x^10 + 2*x^9 + 2*x^7 + x^6 + 2*x + 2, x^32 + 2*x^30 + x^29 + 2*x^28
+ 2*x^27 + 2*x^26 + x^22 + x^21 + 2*x^19 + x^18 + x^17 + x^16 + x^13 + x^11
+ 2*x^10 + 2*x^9 + 2*x^3 + 1, x^29 + x^27 + 2*x^25 + 2*x^23 + x^22 + 2*x^21
+ x^20 + x^18 + 2*x^17 + x^16 + x^15 + 2*x^14 + x^11 + 2*x^10 + 2*x^4 + x,
x^30 + 2*x^27 + x^24 + x^21 + 2*x^18 + x^9 + 2*x^6 + 2 ] ]
> Norm(U[1]);
1
> Regulator(O);
33
[Next][Prev] [Right] [Left] [Up] [Index] [Root]
|