# EuclideanGroebnerBasisPackage(Dom, Expon, VarSet, Dpol)¶

EuclideanGroebnerBasisPackage computes groebner bases for polynomial ideals over euclidean domains. The basic computation provides a distinguished set of generators for these ideals. This basis allows an easy test for membership: the operation euclideanNormalForm returns zero on ideal members. The string “info” and “redcrit” can be given as additional args to provide incremental information during the computation. If “info” is given, a computational summary is given for each `s`-polynomial. If “redcrit” is given, the reduced critical pairs are printed. The term ordering is determined by the polynomial type used. Suggested types include DistributedMultivariatePolynomial, HomogeneousDistributedMultivariatePolynomial, GeneralDistributedMultivariatePolynomial.

euclideanGroebner: (List Dpol, String) -> List Dpol

`euclideanGroebner(lp, infoflag)` computes a groebner basis for a polynomial ideal over a euclidean domain generated by the list of polynomials `lp`. During computation, additional information is printed out if infoflag is given as either “info” (for summary information) or “redcrit” (for reduced critical pairs)

euclideanGroebner: (List Dpol, String, String) -> List Dpol

`euclideanGroebner(lp, "info", "redcrit")` computes a groebner basis for a polynomial ideal generated by the list of polynomials `lp`. If the second argument is `"info"`, a summary is given of the critical pairs. If the third argument is “redcrit”, critical pairs are printed.

euclideanGroebner: List Dpol -> List Dpol

`euclideanGroebner(lp)` computes a groebner basis for a polynomial ideal over a euclidean domain generated by the list of polynomials `lp`.

euclideanNormalForm: (Dpol, List Dpol) -> Dpol

`euclideanNormalForm(poly, gb)` reduces the polynomial `poly` modulo the precomputed groebner basis `gb` giving a canonical representative of the residue class.