FactoringUtilities(E, OV, R, P)

facutil.spad line 1 [edit on github]

This package provides utilities used by the factorizers which operate on polynomials represented as univariate polynomials with multivariate coefficients.

completeEval : (SparseUnivariatePolynomial(P), List(OV), List(R)) -> SparseUnivariatePolynomial(R)

completeEval(upoly, lvar, lval) evaluates the polynomial upoly with each variable in lvar replaced by the corresponding value in lval. Substitutions are done for all variables in upoly producing a univariate polynomial over R.

degree : (SparseUnivariatePolynomial(P), List(OV)) -> List(NonNegativeInteger)

degree(upoly, lvar) returns a list containing the maximum degree for each variable in lvar.

lowerPolynomial : SparseUnivariatePolynomial(P) -> SparseUnivariatePolynomial(R)

lowerPolynomial(upoly) converts upoly to be a univariate polynomial over R. An error if the coefficients contain variables.

normalDeriv : (SparseUnivariatePolynomial(P), Integer) -> SparseUnivariatePolynomial(P)

normalDeriv(poly, i) computes the ith derivative of poly divided by i!.

raisePolynomial : SparseUnivariatePolynomial(R) -> SparseUnivariatePolynomial(P)

raisePolynomial(rpoly) converts rpoly from a univariate polynomial over r to be a univariate polynomial with polynomial coefficients.

ran : Integer -> R

ran(k) computes a random integer between -k and k as a member of R.

variables : SparseUnivariatePolynomial(P) -> List(OV)

variables(upoly) returns the list of variables for the coefficients of upoly.