Extensions of series rings are either unramified or totally ramified. Only series rings defined over finite fields can be extended. We recommend constructing polynomials from sequences rather than by addition of terms, especially over fields, to avoid some precision loss. For example, x4 + t will not have full precision in the constant coefficient as there will be a O term in the constant coefficient of x4 which will reduce its precision as a field element. Extensions require full precision polynomials and some polynomials such as x4 + t may not have enough precision to be used to construct an extension whereas the equivalent Polynomial([t, 0, 0, 0, 1]) will.
Construct the unramified extension of R, a series ring or an extension thereof, defined by the inertial polynomial f, that is, adjoin a root of f to R.
MaxPrecision: RngIntElt Default:
Construct a totally ramified extension of R, a series ring or an extension thereof, defined by the eisenstein polynomial f, that is, adjoin a root of f to R.The parameter MaxPrecision defaults to the precision of R. It can be set to the maximum precision the coefficients of f are known to, which must not be less than the precision of R. This allows the precision of the result to be increased to the degree of f multiplied by this maximum precision.
The polynomial f may be given over a series ring or an extension of a series ring having a higher precision than R. This allows the precision of the result to be increased up to the precision the polynomial is known to (or MaxPrecision if set) without losing any of the polynomial known past the precision of R.
The precision of a ramified extension cannot be increased unless the defining polynomial is known to more precision than the coefficient ring, indicated either by providing the polynomial to greater precision or by setting MaxPrecision. This should be taken into account when constructing ramified extensions, especially if polynomials are to be factored over the extension.
The extension of a series ring E with precision r. It is not possible to increase the precision of a ramified extension unless the parameter MaxPrecision was set on construction of the extension and r is less than or equal to this value multiplied by the ramification degree or the polynomial used in creating the extension was given to more precision than the coefficient ring of E.
The field of fractions of the extension of a series ring E.
> P<t> := PowerSeriesRing(GF(101), 50); > PP<tt> := PowerSeriesRing(GF(101)); > R<x> := PolynomialRing(PP); > U := UnramifiedExtension(P, x^2 + 2); > T := TotallyRamifiedExtension(U, x^2 + tt*x + tt); T; Extension of Extension of Power series ring in t over GF(101) with fixed absolute precision 50 by x^2 + 2 + O(t^50) by x^2 + (t + O(t^50))*x + t + O(t^50) > Precision($1); 100 > ChangePrecision($2, 200); Extension of Extension of Power series ring in $.1 over GF(101) with fixed absolute precision 100 by x^2 + 2 + O($.1^100) by x^2 + ($.1 + O($.1^100))*x + $.1 + O($.1^100) > ChangePrecision($1, 1000); Extension of Extension of Power series ring in $.1 over GF(101) with fixed absolute precision 500 by x^2 + 2 + O($.1^500) by x^2 + ($.1 + O($.1^500))*x + $.1 + O($.1^500) > ChangePrecision($1, 20); Extension of Extension of Power series ring in $.1 over GF(101) with fixed absolute precision 10 by x^2 + 2 + O($.1^10) by x^2 + ($.1 + O($.1^10))*x + $.1 + O($.1^10)Both U and T have a field of fractions.
> FieldOfFractions(U); Extension of Laurent series field in $.1 over GF(101) with fixed relative precision 50 by (1 + O($.1^50))*x^2 + O($.1^50)*x + 2 + O($.1^50) > FieldOfFractions(T); Extension of Extension of Laurent series field in $.1 over GF(101) with fixed relative precision 50 by (1 + O($.1^50))*x^2 + O($.1^50)*x + 2 + O($.1^50) by (1 + O($.1^50))*x^2 + ($.1 + O($.1^50))*x + $.1 + O($.1^50)
The maximum precision elements of the extension of a series ring E may have.
The ring the extension of a series ring E was defined over.
The polynomial used to define the extension E.
The degree of the extension E if E is an unramified extension, 1 otherwise.
The degree of the extension E if E is a totally ramified extension, 1 otherwise.
The residue class field of the extension E, that is, E / π E.
A uniformizing element for the extension E, that is, an element of E of valuation 1.
The ring of integers of the extension E of a series ring if E is a field (extension of a laurent series ring).
Whether extensions E1 and E2 are considered to be equal.
The primitive element of the extension E, that is, the root of the defining polynomial of E adjoined to the coefficient ring of E to construct E.
Assign the string in the sequence S to be the name of the primitive element of E, that is, the root of the defining polynomial adjoined to the coefficient ring of E to construct E.
> L<t> := LaurentSeriesRing(GF(53), 30); > P<x> := PolynomialRing(L); > U := UnramifiedExtension(L, x^3 + 3*x^2 + x + 4); > P<y> := PolynomialRing(U); > T := TotallyRamifiedExtension(U, Polynomial([t, 0, 0, 0, 1])); > Precision(U); 30 > Precision(T); 120 > CoefficientRing(U); Laurent series field in t over GF(53) with fixed relative precision 30 > CoefficientRing(T); Extension of Laurent series field in t over GF(53) with fixed relative precision 30 by (1 + O(t^30))*x^3 + (3 + O(t^30))*x^2 + (1 + O(t^30))*x + 4 + O(t^30) > DefiningPolynomial(U); (1 + O(t^30))*x^3 + (3 + O(t^30))*x^2 + (1 + O(t^30))*x + 4 + O(t^30) > DefiningPolynomial(T); (1 + O(t^30))*y^4 + O(t^30)*y^3 + O(t^30)*y^2 + O(t^30)*y + t + O(t^30) > InertiaDegree(U); 3 > InertiaDegree(T); 1 > RamificationDegree(U); 1 > RamificationDegree(T); 4 > ResidueClassField(U); Finite field of size 53^3 Mapping from: RngSerExt: U to GF(53^3) > ResidueClassField(T); Finite field of size 53^3 Mapping from: RngSerExt: T to GF(53^3) > UniformizingElement(U); t + O(t^31) > UniformizingElement(T); (1 + O(t^30))*$.1 + O(t^30) > Integers(T); Extension of Extension of Power series ring in $.1 over GF(53) with fixed absolute precision 30 by x^3 + (3 + O($.1^30))*x^2 + x + 4 + O($.1^30) by x^4 + $.1 + O($.1^30) > U.1; (1 + O(t^30))*$.1 + O(t^30) > T.1; (1 + O(t^30))*$.1 + O(t^30)
The valuation of the element e of an extension of a series ring. This is the index of the largest power of π which divides e.
The relative precision of the element e of an extension of a series ring. This is the number of digits of e (in π) which are known.
The absolute precision of the element e of an extension of a series ring. This is the same as the sum of the relative precision of e and the valuation of e.
Given an element e of an extension of a series ring, return the coefficients of e with respect to the powers of the uniformizing element of the extension.
> P<t> := PowerSeriesRing(GF(101), 50); > R<x> := PolynomialRing(P); > U<u> := UnramifiedExtension(P, x^2 + 2*x + 3); > UF := FieldOfFractions(U); > R<y> := PolynomialRing(U); > T<tt> := TotallyRamifiedExtension(U, y^2 + t*y + t); > TF<tf> := FieldOfFractions(T); > UF<uf> := FieldOfFractions(U); > u + t; u + t + O(t^50) > uf * t; ($.1 + O($.1^50))*uf + O($.1^51) > tf eq tt; false > tf - tt; O($.1^50)*tf + O($.1^50) > IsZero($1); false > Valuation($2); 100 > Valuation(tt); 1 > Valuation(U!t); 1 > Valuation(T!t); 2 > RelativePrecision(u); 50 > AbsolutePrecision(u); 50 > AbsolutePrecision(uf); 50 > RelativePrecision(uf); 50 > RelativePrecision(u - uf); 0 > AbsolutePrecision(u - uf); 50 > u^7; (13 + O(t^50))*u + 71 + O(t^50) > Coefficients($1); [ 71 + O(t^50), 13 + O(t^50) ] > tt^8; (4*t^4 + 91*t^5 + 6*t^6 + 100*t^7 + O(t^50))*tt + t^4 + 95*t^5 + 5*t^6 + 100*t^7 + O(t^50) > Coefficients($1); [ t^4 + 95*t^5 + 5*t^6 + 100*t^7 + O(t^50), 4*t^4 + 91*t^5 + 6*t^6 + 100*t^7 + O(t^50) ]
An optimized representation for the unramified extension E of a series ring. The defining polynomial of E must be coercible into the residue class field. The result is a series ring over the residue class field of E and a map from E to this series ring.
> P<t> := PowerSeriesRing(GF(101), 50); > R<x> := PolynomialRing(P); > U<u> := UnramifiedExtension(P, x^2 + 2*x + 3); > U; Extension of Power series ring in t over GF(101) with fixed absolute precision 50 by x^2 + (2 + O(t^50))*x + 3 + O(t^50) > OptimizedRepresentation(U); Power series ring in $.1 over GF(101^2) with fixed absolute precision 50 Mapping from: RngSerExt: U to Power series ring in s over GF(101^2) with fixed absolute precision 50 given by a rule