Package cc.redberry.rings.poly.multivar
Class HenselLifting
java.lang.Object
cc.redberry.rings.poly.multivar.HenselLifting
public final class HenselLifting extends Object
Hensel lifting.
- Since:
- 1.0
-
Method Summary
Modifier and Type Method Description static <Term extends AMonomial<Term>, Poly extends AMultivariatePolynomial<Term, Poly>, uPoly extends IUnivariatePolynomial<uPoly>>
voidbivariateLiftNoLCCorrection0(Poly base, Poly[] factors, cc.redberry.rings.poly.multivar.HenselLifting.IEvaluation<Term,Poly> evaluation, int degreeBound)
Fast bivariate Hensel lifting which uses dense representation for bivariate polynomialsstatic <Term extends AMonomial<Term>, Poly extends AMultivariatePolynomial<Term, Poly>>
voidmultivariateLiftAutomaticLC(Poly base, Poly[] factors, cc.redberry.rings.poly.multivar.HenselLifting.IEvaluation<Term,Poly> evaluation)
Multivariate lift with automatic leading coefficient correctionstatic <Term extends AMonomial<Term>, Poly extends AMultivariatePolynomial<Term, Poly>>
voidmultivariateLiftAutomaticLC(Poly base, Poly[] factors, cc.redberry.rings.poly.multivar.HenselLifting.IEvaluation<Term,Poly> evaluation, int from)
Multivariate lift with automatic leading coefficient correctionstatic <Term extends AMonomial<Term>, Poly extends AMultivariatePolynomial<Term, Poly>, uPoly extends IUnivariatePolynomial<uPoly>>
UnivariatePolynomial<uPoly>seriesExpansionDense(Ring<uPoly> ring, Poly poly, int variable, cc.redberry.rings.poly.multivar.HenselLifting.IEvaluation<Term,Poly> evaluate)
Generates a power series expansion for poly about the point specified by variable and evaluation
-
Method Details
-
bivariateLiftNoLCCorrection0
public static <Term extends AMonomial<Term>, Poly extends AMultivariatePolynomial<Term, Poly>, uPoly extends IUnivariatePolynomial<uPoly>> void bivariateLiftNoLCCorrection0(Poly base, Poly[] factors, cc.redberry.rings.poly.multivar.HenselLifting.IEvaluation<Term,Poly> evaluation, int degreeBound)Fast bivariate Hensel lifting which uses dense representation for bivariate polynomials- Parameters:
base
- the productfactors
- univariate factors which will be lifted to true bivariate factorsevaluation
- evaluation pointdegreeBound
- bound on lifting degree
-
seriesExpansionDense
public static <Term extends AMonomial<Term>, Poly extends AMultivariatePolynomial<Term, Poly>, uPoly extends IUnivariatePolynomial<uPoly>> UnivariatePolynomial<uPoly> seriesExpansionDense(Ring<uPoly> ring, Poly poly, int variable, cc.redberry.rings.poly.multivar.HenselLifting.IEvaluation<Term,Poly> evaluate)Generates a power series expansion for poly about the point specified by variable and evaluation -
multivariateLiftAutomaticLC
public static <Term extends AMonomial<Term>, Poly extends AMultivariatePolynomial<Term, Poly>> void multivariateLiftAutomaticLC(Poly base, Poly[] factors, cc.redberry.rings.poly.multivar.HenselLifting.IEvaluation<Term,Poly> evaluation)Multivariate lift with automatic leading coefficient correction- Parameters:
base
- the productfactors
- univariate factors which will be lifted to true bivariate factorsevaluation
- evaluation point
-
multivariateLiftAutomaticLC
public static <Term extends AMonomial<Term>, Poly extends AMultivariatePolynomial<Term, Poly>> void multivariateLiftAutomaticLC(Poly base, Poly[] factors, cc.redberry.rings.poly.multivar.HenselLifting.IEvaluation<Term,Poly> evaluation, int from)Multivariate lift with automatic leading coefficient correction- Parameters:
base
- the productfactors
- univariate factors which will be lifted to true bivariate factorsevaluation
- evaluation point
-