up previous next
 QuotientBasis

vector space basis for zero-dimensional quotient rings

 Syntax
 `QuotientBasis(I: IDEAL): LIST`

 Description
This function determines a vector space basis (of power products) for the quotient space associated to a zero-dimensional ideal. That is, if R is a polynomial ring with field of coefficients k, and I is a zero-dimensional ideal in R then QuotientBasis(I) is a set of power products forming a k-vector space basis of R/I.

The actual set of power products chosen depends on the term ordering in the ring R: the power products chosen are those not divisible by the leading term of any member of the reduced Groebner basis of I (and consequently they form a factor-closed set).

 Example
 ```/**/ Points := [[Rand(-9,9) | N In 1..3] | S In 1..25]; /**/ Use P ::= QQ[x,y,z]; /**/ I := IdealOfPoints(P, mat(QQ, Points)); /**/ QuotientBasis(I); [1, z, z^2, z^3, z^4, y, y*z, y*z^2, y*z^3, y^2, y^2*z, y^2*z^2, y^3, x, x*z, x*z^2, x*z^3, x*y, x*y*z, x*y*z^2, x*y^2, x^2, x^2*z, x^2*y, x^3] /**/ Use P ::= QQ[x,y,z], Lex; /**/ I := IdealOfPoints(P, mat(QQ,Points)); /**/ QuotientBasis(I); -- power products underneath the Lex reduced GBasis [1, z, z^2, z^3, z^4, z^5, z^6, z^7, z^8, z^9, z^10, z^11, z^12, y, y*z, y*z^2, y*z^3, y*z^4, y*z^5, y*z^6, y^2, y^2*z, y^2*z^2, y^2*z^3, y^3] ```

 See Also