Places

Contents

Creation of Structures

Places(F) : FldFun -> PlcFun
The set of places of the algebraic function field F/k.

Creation of Elements

General Function Field Places
Decomposition(F, P) : FldFunG, PlcFunElt -> [ PlcFunElt ]
    Al: MonStgElt                       Default: 
A sequence containing all places of F/k lying above the place P of any coefficient field of F. The function field F must be a finite extension of k(x). If F is an extension of a rational function field over Q or Fq by a single monic integral polynomial, P is a finite place and Al is set to "Montes" then the Montes algorithm [Sta18] will be used to compute the decomposition.
DecompositionType(F, P) : FldFun, PlcFunElt -> [ <RngIntElt, RngIntElt> ]
Sequence of tuples of residue degrees and ramification indices of the places of F/k lying over the place P of the coefficient field k(x) of F. The function field F must be a finite extension of k(x).
Zeros(a) : FldFunElt -> [ PlcFunElt ]
Zeros(a) : RngFunOrdElt -> [ PlcFunElt ]
A sequence containing all zeros of the algebraic function a.
Poles(a) : FldFunElt -> [ PlcFunElt ]
Poles(a) : RngFunOrdElt -> [ PlcFunElt ]
A sequence containing all poles of the algebraic function a.
S ! I : PlcFun, RngFunOrdIdl -> PlcFunElt
Place(I) : RngFunOrdIdl -> PlcFunElt
The place corresponding to the prime ideal I, where I is defined over the `finite' or `infinite' maximal order and S is the set of places of a function field.
Support(D) : DivFunElt -> [ PlcFunElt ], [ RngIntElt ]
Support(P) : PlcFunElt -> [ PlcFunElt ], [ RngIntElt ]
Sequences containing the places and exponents occurring in the divisor D.
AssignNames(~P, s) : PlcFunElt, [ MonStgElt ] ->
Change the print name employed when displaying P to be the first element in the sequence of strings s which must have length 1.
InfinitePlaces(F) : FldFun -> [PlcFunElt]
The infinite places of the function field F.
Global Function Field Places

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

HasPlace(F, m) : FldFun, RngIntElt -> PlcFunElt
Returns true and a place of degree m if and only if there exists such in the function field F/k; false otherwise.
HasRandomPlace(F, m) : FldFun, RngIntElt -> BoolElt, PlcFunElt
Returns true and a random place of degree m in the function field F/k or (false if there are none).
RandomPlace(F, m) : FldFun, RngIntElt -> PlcFunElt
Returns a random place of degree m in the function field F/k or throws an error if there is none.
Places(F, m) : FldFun, RngIntElt -> SeqEnum[PlcFunElt]
A sequence containing the places of degree m of the function field F/k.

Example FldFunG_place-creation (H45E37)

Some creation of places is illustrated below.
> P<t> := PolynomialRing(Integers());
> N := NumberField(t^2 + 2);
> P<x> := PolynomialRing(N);
> P<y> := PolynomialRing(P);
> F<c> := FunctionField(y^4 + x^5 - N.1^7);
> F;
Algebraic function field defined over Univariate rational function field over N
by
y^4 + x^5 + 8*N.1
> Zeros(c);
[ (x^5 + 8*N.1, c + x^5 + 8*N.1) ]
> P<y> := PolynomialRing(F);
> F2<d> := FunctionField(y^2 + F!N.1);
> Decomposition(F2, $1[1]);
[ (x^5 + 8*N.1, c + 2*x^5 + 16*N.1) ]
> DecompositionType(F2, $2[1]);
[ <2, 1> ]
> Places(F2)!$3[1];
(x^5 + 8*N.1, c + 2*x^5 + 16*N.1)

Related Structures

Parent and Category

The sets of function field places form the Magma category PlcFun. The notional power structure exists as parent but allows no operations.

FunctionField(S) : PlcFun -> FldFun
The corresponding function field of the set of places S.
DivisorGroup(F) : FldFunG -> DivFun
The group of divisors of the algebraic function field F/k, which is the free abelian group generated by the elements of the set of places of F/k.

Structure Invariants

General function fields
WeierstrassPlaces(F) : FldFunG -> [PlcFunElt]
    SeparatingElement: FldFunGElt       Default: 
The Weierstrass places of the function field F/k. The semantics of calling WeierstrassPlaces() with F/k or the zero divisor of F/k are identical. See the description of WeierstrassPlaces.
Global Function Fields

F/k denotes a global function field in this section.

NumberOfPlacesOfDegreeOneOverExactConstantField(F, m) : FldFun, RngIntElt -> RngIntElt
NumberOfPlacesOfDegreeOneECF(F, m) : FldFunG, RngIntElt -> RngIntElt
The number of places of degree one in the constant field extension of degree m of the function field F/k. Contrary to the Degree() function the degree is here taken over the respective exact constant fields.
NumberOfPlacesOfDegreeOneOverExactConstantFieldBound(F, m) : FldFun, RngIntElt -> RngIntElt
NumberOfPlacesOfDegreeOneECFBound(F, m) : FldFunG, RngIntElt -> RngIntElt
The minimum of the Serre and Ihara bound on the number of places of degree one in the constant field extension of degree m of the function field F/k. Contrary to the Degree() function the degree is here taken over the respective exact constant fields.
NumberOfPlacesOfDegreeOverExactConstantField(F, m) : FldFunG, RngIntElt -> RngIntElt
NumberOfPlacesDegECF(F, m) : FldFunG, RngIntElt -> RngIntElt
The number of places of degree m of the function field F/k. Contrary to the Degree() function the degree is here taken over the respective exact constant fields.

Structure Predicates

S1 eq S2 : PlcFun, PlcFun -> BoolElt
S1 ne S2 : PlcFun, PlcFun -> BoolElt

Element Operations

Parent and Category
Parent(P) : PlcFunElt -> PlcFun
Category(P) : PlcFunElt -> Cat
Arithmetic Operators
- P : PlcFunElt -> DivFunElt
P1 + P2 : PlcFunElt, PlcFunElt -> DivFunElt
P1 - P2 : PlcFunElt, PlcFunElt -> DivFunElt
k * P : RngIntElt, PlcFunElt -> DivFunElt
P div k : PlcFunElt, RngIntElt -> DivFunElt
P mod k : PlcFunElt, RngIntElt -> DivFunElt
Quotrem(P, k) : PlcFunElt, RngIntElt -> DivFunElt, DivFunElt
Returns divisors D1, D2 such that the place P = kD1 + D2 and the exponents in D2 are of absolute value less than |k|. The operations div and mod yield D1 resp. D2.
Equality and Membership
P1 eq P2 : PlcFunElt, PlcFunElt -> BoolElt
P1 ne P2 : PlcFunElt, PlcFunElt -> BoolElt
P in S : PlcFunElt, PlcFun -> BoolElt
P notin S : PlcFunElt, PlcFun -> BoolElt
Predicates on Elements
IsFinite(P) : PlcFunElt -> BoolElt
Returns true if the place P is a `finite' place.
IsWeierstrassPlace(P) : PlcFunElt -> BoolElt
IsWeierstrassPlace(F, P) : FldFunG, PlcFunElt -> BoolElt
Whether the degree one place P is a Weierstraß place of its function field F. See the description of WeierstrassPlaces.
Other Element Operations
FunctionField(P) : PlcFunElt -> FldFun
The function field that corresponds to the place P.
Degree(P) : PlcFunElt -> RngIntElt
The degree of the place P over the constant field of definition k.
RamificationIndex(P) : PlcFunElt -> RngIntElt
RamificationDegree(P) : PlcFunElt -> RngIntElt
The ramification index of the place P over its subplace of the rational function field k(x) (the function field of P must be a finite extension of k(x)).
InertiaDegree(P) : PlcFunElt -> RngIntElt
ResidueClassDegree(P) : PlcFunElt -> RngIntElt
The degree of inertia (or residue class degree) of a place P over the corresponding subplace of the rational function field (the function field of P must be a finite extension of k(x))
Minimum(P) : PlcFunElt -> RngElt
A monic prime polynomial in k[x] or 1/x or an ideal, corresponding to the place of the coefficient field of the function field of the place P which P lies above (the function field of P must be a finite extension of k(x)).
ResidueClassField(P) : PlcFunElt -> Rng, Map
The residue class field of the place P and the map from the order of the place into the field.
Evaluate(a, P) : RngElt, PlcFunElt -> RngElt
Evaluate the algebraic function a at the place P. If it is not defined at P, infinity is returned.
Lift(a, P) : RngElt, PlcFunElt -> FldFunElt
Lift(i, P) : Infty, PlcFunElt -> FldFunElt
Lift the element a of the residue class field of the place P (including infinity) to an algebraic function.
TwoGenerators(P) : PlcFunElt -> FldFunGElt, FldFunGElt
Two algebraic functions having the place P as their unique common zero.
LocalUniformizer(P) : PlcFunElt -> FldFunGElt
UniformizingElement(P) : PlcFunElt -> FldFunGElt
A local uniformizing parameter at the place P.
Valuation(a, P) : FldFunElt, PlcFunElt -> RngIntElt
The valuation of the element a at the place P.
Ideal(P) : PlcFunElt -> RngFunOrdIdl
Create a prime ideal corresponding to the place P.
Norm(P) : PlcFunElt -> DivFunElt
The divisor of the norm of the ideal of the place P.

Example FldFunG_places (H45E38)

> R<x> := FunctionField(GF(9));
> P<y> := PolynomialRing(R);
> f := y^4 + (2*x^5 + x^4 + 2*x^3 + x^2)*y^2 + x^8
>      + 2*x^6 + x^5 +x^4 + x^3 + x^2;
> F<a> := FunctionField(f);
> Genus(F);
7
> NumberOfPlacesDegECF(F, 2);
28
> P := RandomPlace(F, 2);
> P;
(x^2 + $.1^2*x + $.1^7, a + $.1^5*x + $.1^5)
> LocalUniformizer(P);
x^2 + $.1^2*x + $.1^7
> TwoGenerators(P);
x^2 + $.1^2*x + $.1^7 a + $.1^5*x + $.1^5
> ResidueClassField(P);
Finite field of size 3^4
> Evaluate(1/LocalUniformizer(P), P);
Infinity
> Valuation(1/LocalUniformizer(P), P);
-1

Completion at Places

Completion(F, p) : FldFun, PlcFunElt -> RngSerLaur, Map
Completion(O, p) : RngFunOrd, PlcFunElt -> RngSerPow, Map
    Precision: RngIntElt                Default: 20
The completion of the algebraic function field F or an order O of such at the place p of F or the function field of O. The map from F or O into the series ring is returned also.

The series ring returned is an infinite precision ring whose default precision for elements is given by the Precision parameter.

V2.28, 13 July 2023