MultivariateSquareFree(E, OV, R, P)

multsqfr.spad line 1 [edit on github]

This package provides the functions for the computation of the square free decomposition of a multivariate polynomial. It uses modular reduction and the package MultivariateLifting for the "multivariate" lifting.

check : (List(Record(factor : SparseUnivariatePolynomial(R), exponent : NonNegativeInteger)), List(Record(factor : SparseUnivariatePolynomial(R), exponent : NonNegativeInteger))) -> Boolean

check should be local

coefChoose : (Integer, P, List(Record(factor : P, exponent : NonNegativeInteger))) -> P

coefChoose should be local

compdegd : List(Record(factor : SparseUnivariatePolynomial(R), exponent : NonNegativeInteger)) -> Integer

compdegd should be local

consnewpol : (SparseUnivariatePolynomial(P), SparseUnivariatePolynomial(R), Integer) -> Record(pol : SparseUnivariatePolynomial(P), polval : SparseUnivariatePolynomial(R))

consnewpol should be local

intChoose : (SparseUnivariatePolynomial(P), List(OV), List(List(R))) -> Record(upol : SparseUnivariatePolynomial(R), Lval : List(R), Lfact : List(Record(factor : SparseUnivariatePolynomial(R), exponent : NonNegativeInteger)), ctpol : R)

intChoose should be local

lift : (SparseUnivariatePolynomial(P), SparseUnivariatePolynomial(R), SparseUnivariatePolynomial(R), P, List(OV), List(NonNegativeInteger), List(R), R) -> Union(List(SparseUnivariatePolynomial(P)), "failed")

lift should be local

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

myDegree should be local

normDeriv2 : (SparseUnivariatePolynomial(R), Integer) -> SparseUnivariatePolynomial(R)

normDeriv2 should be local

nsqfree : (SparseUnivariatePolynomial(P), List(OV), List(List(R))) -> Record(unitPart : P, suPart : List(Record(factor : SparseUnivariatePolynomial(P), exponent : NonNegativeInteger)))

nsqfree should be local

squareFree : P -> Factored(P)

squareFree(p) computes the square free decomposition of a multivariate polynomial p.

squareFree : SparseUnivariatePolynomial(P) -> Factored(SparseUnivariatePolynomial(P))

squareFree(p) computes the square free decomposition of a multivariate polynomial p presented as a univariate polynomial with multivariate coefficients.

univcase : (P, OV) -> Factored(P)

univcase should be local