# PolynomialGcdPackage(E, OV, R, P)ΒΆ

- E: OrderedAbelianMonoidSup
- OV: OrderedSet
- R: EuclideanDomain
- P: PolynomialCategory(R, E, OV)

This package computes multivariate polynomial `gcd`

`'s`

using a hensel lifting strategy. The contraint on the coefficient domain is imposed by the lifting strategy. It is assumed that the coefficient domain has the property that almost all specializations preserve the degree of the `gcd`

.

- gcd: (P, P) -> P
`gcd(p, q)`

computes the`gcd`

of the two polynomials`p`

and`q`

.

- gcd: (SparseUnivariatePolynomial P, SparseUnivariatePolynomial P) -> SparseUnivariatePolynomial P
`gcd(p, q)`

computes the`gcd`

of the two polynomials`p`

and`q`

.

- gcd: List P -> P
`gcd(lp)`

computes the`gcd`

of the list of polynomials`lp`

.

- gcd: List SparseUnivariatePolynomial P -> SparseUnivariatePolynomial P
`gcd(lp)`

computes the`gcd`

of the list of polynomials`lp`

.

- gcdPrimitive: (P, P) -> P
`gcdPrimitive(p, q)`

computes the`gcd`

of the primitive polynomials`p`

and`q`

.

- gcdPrimitive: (SparseUnivariatePolynomial P, SparseUnivariatePolynomial P) -> SparseUnivariatePolynomial P
`gcdPrimitive(p, q)`

computes the`gcd`

of the primitive polynomials`p`

and`q`

.

- gcdPrimitive: List P -> P
`gcdPrimitive lp`

computes the`gcd`

of the list of primitive polynomials`lp`

.