[Next] [Prev] [Right] [Left] [Up] [Index] [Root]
Quotient Rings

Quotient Rings

Currently it is only possible to create quotient rings in multivariate polynomial rings over fields. If the quotient ring has finite dimension (considered as a vector space over the coefficient field), further operations are available on its elements.

Subsections

Creation of Quotient Rings

quo< R | I > : RngDPol, RngDPol -> RngDPolRes
quo< R | a_1, ..., a_r > : RngDPol, RngDPolElt, ..., RngDPolElt -> RngDPolRe
Given an ideal I in the multivariate polynomial ring R (over a field), return the quotient R/I. The ideal I may either be specified as an ideal or by a list a_1, a_2, ..., a_r, of generators. The angle bracket notation can be used to assign names to the indeterminates: Q<q, r> := quo< I | I.1 + I.2, I.2^2 - 2 >;.

Operations on Quotient Rings

Q . i : RngQPol, RngIntElt -> RngQPolElt
Given a quotient Q of a multivariate polynomial ring R, return the i-th indeterminate of Q as an element of Q.
CoefficientRing(Q) : RngQPol -> Rng
Return the coefficient ring of polynomial quotient ring Q.
Rank(Q) : RngQPol -> RngIntElt
Return the rank of polynomial quotient ring Q (the number of indeterminates of Q).

Finite dimensional Quotient Rings

If a quotient ring has finite dimension (considered as a vector space over its coefficient field), further operations are available on its elements.

Dimension(Q) : RngQPol -> RngIntElt
Given a finite dimensional quotient ring Q, return the dimension of Q.
RepresentationMatrix(f) : RngQPolElt -> AlgMatElt
Given an element f of a finite dimensional quotient ring Q, return the representation matrix of f, which is a d by d matrix over the coefficient field of Q (where d is the dimension of Q) which represents f.
IsUnit(f) : RngQPolElt -> BoolElt
Given an element f of a finite dimensional quotient ring Q, return whether f is a unit.
IsNilpotent(f) : RngQPolElt -> BoolElt, RngIntElt
Given an element f of a finite dimensional quotient ring Q, return whether f is nilpotent, and if so, return also the smallest q such that f^q = 0.
MinimalPolynomial(f) : RngQPolElt -> RngUPol
Given an element f of a finite dimensional quotient ring Q, return the minimal polynomial of f as a univariate polynomial over the coefficient field of Q.

Example RngDPol_MinimalPolynomial (H23E17)

Suppose we wish to find the minimal polynomial of theta = sqrt 2 + root 3 of 5 over Q. To do this we just need find the minimal polynomial of (the coset of) x + y over Q in the quotient ring Q[x, y]/(x^2 - 2, y^3 - 5).

> P<x, y> := PolynomialRing(RationalField(), 2);
> Q<a, b> := quo<P | x^2 - 2, y^3 - 5>;
> UP<z> := PolynomialRing(RationalField());
> print MinimalPolynomial(a + b);          
z^6 - 6*z^4 - 10*z^3 + 12*z^2 - 60*z + 17

[Next] [Prev] [Right] [Left] [Up] [Index] [Root]