| Package | Description |
|---|---|
| cc.redberry.rings.poly.univar |
| Modifier and Type | Field and Description |
|---|---|
UnivariatePolynomialZ64 |
HenselLifting.lQuadraticLift.base
Initial Z[x] poly
|
| Modifier and Type | Method and Description |
|---|---|
static UnivariatePolynomialZ64 |
UnivariatePolynomial.asOverZ64(UnivariatePolynomial<BigInteger> poly)
Converts poly over BigIntegers to machine-sized polynomial in Z
|
UnivariatePolynomialZ64 |
UnivariatePolynomialZp64.asPolyZ(boolean copy)
Returns Z[x] polynomial formed from the coefficients of this.
|
UnivariatePolynomialZ64 |
UnivariatePolynomialZp64.asPolyZSymmetric()
Returns Z[x] polynomial formed from the coefficients of this represented in symmetric modular form (
-modulus/2 <= cfx <= modulus/2). |
UnivariatePolynomialZ64 |
UnivariatePolynomialZ64.clone() |
static UnivariatePolynomialZ64 |
UnivariatePolynomialZ64.constant(long value)
Returns constant with specified value
|
static UnivariatePolynomialZ64 |
UnivariatePolynomialZ64.create(long... data)
Creates Z[x] polynomial from the specified coefficients
|
UnivariatePolynomialZ64[] |
UnivariatePolynomialZ64.createArray(int length) |
UnivariatePolynomialZ64[][] |
UnivariatePolynomialZ64.createArray2d(int length) |
UnivariatePolynomialZ64[][] |
UnivariatePolynomialZ64.createArray2d(int length1,
int length2) |
UnivariatePolynomialZ64 |
UnivariatePolynomialZ64.createFromArray(long[] data) |
UnivariatePolynomialZ64 |
UnivariatePolynomialZ64.createMonomial(long coefficient,
int degree) |
UnivariatePolynomialZ64 |
UnivariatePolynomialZ64.derivative() |
static UnivariatePolynomialZ64[] |
UnivariateDivision.divideAndRemainder(UnivariatePolynomialZ64 dividend,
UnivariatePolynomialZ64 divider,
boolean copy)
Returns
{quotient, remainder} or null if the division is not possible. |
UnivariatePolynomialZ64 |
UnivariatePolynomialZ64.divideByLC(UnivariatePolynomialZ64 other) |
UnivariatePolynomialZ64 |
UnivariatePolynomialZ64.divideOrNull(long factor)
Divides this polynomial by a
factor or returns null (causing loss of internal data) if some of
the elements can't be exactly divided by the factor. |
UnivariatePolynomialZ64 |
UnivariatePolynomialZ64.getRange(int from,
int to) |
static UnivariatePolynomialZ64 |
UnivariateGCD.ModularGCD(UnivariatePolynomialZ64 a,
UnivariatePolynomialZ64 b)
Modular GCD algorithm for polynomials over Z.
|
UnivariatePolynomialZ64 |
UnivariatePolynomialZ64.monic() |
UnivariatePolynomialZ64 |
UnivariatePolynomialZ64.monic(long factor) |
static UnivariatePolynomialZ64 |
UnivariatePolynomialZ64.monomial(long coefficient,
int exponent)
Creates monomial
coefficient * x^exponent |
UnivariatePolynomialZ64 |
UnivariatePolynomialZ64.multiply(UnivariatePolynomialZ64 oth) |
UnivariatePolynomialZ64 |
UnivariatePolynomialZ64.multiplyByBigInteger(BigInteger factor) |
static UnivariatePolynomialZ64 |
UnivariatePolynomialZ64.one()
Creates unit polynomial
|
static UnivariatePolynomialZ64 |
UnivariatePolynomialZ64.parse(String string)
Parse string into polynomial
|
UnivariatePolynomialZ64 |
UnivariatePolynomialZ64.parsePoly(String string) |
static UnivariatePolynomialZ64[] |
UnivariateDivision.pseudoDivideAndRemainder(UnivariatePolynomialZ64 dividend,
UnivariatePolynomialZ64 divider,
boolean copy)
Returns quotient and remainder using pseudo division.
|
static UnivariatePolynomialZ64 |
UnivariateDivision.quotient(UnivariatePolynomialZ64 dividend,
UnivariatePolynomialZ64 divider,
boolean copy)
Returns quotient
dividend/ divider |
static UnivariatePolynomialZ64 |
RandomUnivariatePolynomials.randomPoly(int degree,
long bound,
org.apache.commons.math3.random.RandomGenerator rnd)
Creates random polynomial of specified
degree with elements bounded by bound (by absolute
value). |
static UnivariatePolynomialZ64 |
RandomUnivariatePolynomials.randomPoly(int degree,
org.apache.commons.math3.random.RandomGenerator rnd)
Creates random polynomial of specified
degree. |
static UnivariatePolynomialZ64 |
UnivariateDivision.remainder(UnivariatePolynomialZ64 dividend,
UnivariatePolynomialZ64 divider,
boolean copy)
Returns remainder of
dividend and divider or null if division is not possible. |
UnivariatePolynomialZ64 |
UnivariatePolynomialZ64.setCoefficientRingFrom(UnivariatePolynomialZ64 univariatePolynomialZ64) |
UnivariatePolynomialZ64 |
UnivariatePolynomialZ64.square() |
static UnivariatePolynomialZ64 |
UnivariatePolynomialZ64.zero()
Creates zero polynomial
|
| Modifier and Type | Method and Description |
|---|---|
static HenselLifting.lLinearLift |
HenselLifting.createLinearLift(BigInteger modulus,
UnivariatePolynomialZ64 poly,
UnivariatePolynomialZp64 aFactor,
UnivariatePolynomialZp64 bFactor)
Creates linear Hensel lift.
|
static HenselLifting.lLinearLift |
HenselLifting.createLinearLift(long modulus,
UnivariatePolynomialZ64 poly,
UnivariatePolynomialZp64 aFactor,
UnivariatePolynomialZp64 bFactor)
Creates linear Hensel lift.
|
static HenselLifting.lQuadraticLift |
HenselLifting.createQuadraticLift(long modulus,
UnivariatePolynomialZ64 poly,
UnivariatePolynomialZp64 aFactor,
UnivariatePolynomialZp64 bFactor)
Creates quadratic Hensel lift.
|
static UnivariatePolynomialZ64[] |
UnivariateDivision.divideAndRemainder(UnivariatePolynomialZ64 dividend,
UnivariatePolynomialZ64 divider,
boolean copy)
Returns
{quotient, remainder} or null if the division is not possible. |
UnivariatePolynomialZ64 |
UnivariatePolynomialZ64.divideByLC(UnivariatePolynomialZ64 other) |
static List<UnivariatePolynomialZp64> |
HenselLifting.liftFactorization(long modulus,
long finalModulus,
int nIterations,
UnivariatePolynomialZ64 poly,
List<UnivariatePolynomialZp64> modularFactors,
boolean quadratic)
Lifts modular factorization
nIterations times using whether linear or quadratic lifting. |
static List<UnivariatePolynomialZp64> |
HenselLifting.liftFactorization(long modulus,
long desiredBound,
UnivariatePolynomialZ64 poly,
List<UnivariatePolynomialZp64> modularFactors,
boolean quadratic)
Lifts modular factorization until
modulus will overcome desiredBound. |
static UnivariatePolynomialZ64 |
UnivariateGCD.ModularGCD(UnivariatePolynomialZ64 a,
UnivariatePolynomialZ64 b)
Modular GCD algorithm for polynomials over Z.
|
UnivariatePolynomialZ64 |
UnivariatePolynomialZ64.multiply(UnivariatePolynomialZ64 oth) |
static UnivariatePolynomialZ64[] |
UnivariateDivision.pseudoDivideAndRemainder(UnivariatePolynomialZ64 dividend,
UnivariatePolynomialZ64 divider,
boolean copy)
Returns quotient and remainder using pseudo division.
|
static UnivariatePolynomialZ64 |
UnivariateDivision.quotient(UnivariatePolynomialZ64 dividend,
UnivariatePolynomialZ64 divider,
boolean copy)
Returns quotient
dividend/ divider |
static UnivariatePolynomialZ64 |
UnivariateDivision.remainder(UnivariatePolynomialZ64 dividend,
UnivariatePolynomialZ64 divider,
boolean copy)
Returns remainder of
dividend and divider or null if division is not possible. |
boolean |
UnivariatePolynomialZ64.sameCoefficientRingWith(UnivariatePolynomialZ64 oth) |
UnivariatePolynomialZ64 |
UnivariatePolynomialZ64.setCoefficientRingFrom(UnivariatePolynomialZ64 univariatePolynomialZ64) |
| Modifier and Type | Method and Description |
|---|---|
String |
UnivariatePolynomialZ64.coefficientRingToString(IStringifier<UnivariatePolynomialZ64> stringifier) |
| Constructor and Description |
|---|
lQuadraticLift(long modulus,
UnivariatePolynomialZ64 base,
UnivariatePolynomialZp64 aFactor,
UnivariatePolynomialZp64 bFactor,
UnivariatePolynomialZp64 aCoFactor,
UnivariatePolynomialZp64 bCoFactor) |
Copyright © 2022. All rights reserved.