Package | Description |
---|---|
cc.redberry.rings | |
cc.redberry.rings.linear | |
cc.redberry.rings.poly.multivar | |
cc.redberry.rings.poly.univar |
Modifier and Type | Method and Description |
---|---|
IntegersZp64 |
IntegersZp.asMachineRing()
Converts to a
IntegersZp64 |
IntegersZp64 |
IntegersZp.asZp64()
Returns machine integer ring or null if modulus is larger than
long |
IntegersZp64 |
IntegersZp64.perfectPowerBaseDomain()
Returns ring for
perfectPowerBase() or this if modulus is not a perfect power |
static IntegersZp64 |
Rings.Zp64(long modulus)
Ring of integers modulo
modulus (with modulus < 2^63) |
Modifier and Type | Method and Description |
---|---|
static MultivariateRing<MultivariatePolynomialZp64> |
Rings.MultivariateRingZp64(int nVariables,
IntegersZp64 modulus)
Ring of multivariate polynomials over Zp integers (Zp[x1, x2, ...])
|
static MultivariateRing<MultivariatePolynomialZp64> |
Rings.MultivariateRingZp64(int nVariables,
IntegersZp64 modulus,
Comparator<DegreeVector> monomialOrder)
Ring of multivariate polynomials over Zp integers (Zp[x1, x2, ...])
|
static UnivariateRing<UnivariatePolynomialZp64> |
Rings.UnivariateRingZp64(IntegersZp64 modulus)
Ring of univariate polynomials over Zp integers (Zp[x])
|
Modifier and Type | Method and Description |
---|---|
static void |
LinearSolver.reducedRowEchelonForm(IntegersZp64 ring,
long[][] lhs,
long[] rhs)
Gives the reduced row echelon form of the linear system
lhs.x = rhs from a given row echelon form. |
static int |
LinearSolver.rowEchelonForm(IntegersZp64 ring,
long[][] matrix)
Gives the row echelon form of the matrix
|
static int |
LinearSolver.rowEchelonForm(IntegersZp64 ring,
long[][] matrix,
boolean reduce)
Gives the row echelon form of the matrix
|
static int |
LinearSolver.rowEchelonForm(IntegersZp64 ring,
long[][] lhs,
long[] rhs)
Gives the row echelon form of the linear system
lhs.x = rhs (rhs may be null). |
static int |
LinearSolver.rowEchelonForm(IntegersZp64 ring,
long[][] lhs,
long[] rhs,
boolean reduce,
boolean breakOnUnderDetermined)
Gives the row echelon form of the linear system
lhs.x = rhs (rhs may be null). |
static LinearSolver.SystemInfo |
LinearSolver.solve(IntegersZp64 ring,
ArrayList<long[]> lhs,
gnu.trove.list.array.TLongArrayList rhs,
long[] result)
Solves linear system
lhs.x = rhs and stores the result in result (which should be of the enough
length). |
static long[] |
LinearSolver.solve(IntegersZp64 ring,
long[][] lhs,
long[] rhs)
Solves linear system
lhs.x = rhs and reduces the lhs to row echelon form. |
static LinearSolver.SystemInfo |
LinearSolver.solve(IntegersZp64 ring,
long[][] lhs,
long[] rhs,
long[] result)
Solves linear system
lhs.x = rhs and reduces the lhs to row echelon form. |
static long[] |
LinearSolver.solveVandermonde(IntegersZp64 ring,
long[] row,
long[] rhs)
Solves Vandermonde linear system (that is with i-th equation of the form {@code row[i]^0 * x0 + row[i]^1 * x1 +
...
|
static LinearSolver.SystemInfo |
LinearSolver.solveVandermonde(IntegersZp64 ring,
long[] row,
long[] rhs,
long[] result)
Solves Vandermonde linear system (that is with i-th equation of the form {@code row[i]^0 * x0 + row[i]^1 * x1 +
...
|
static long[] |
LinearSolver.solveVandermondeT(IntegersZp64 ring,
long[] row,
long[] rhs)
Solves transposed Vandermonde linear system (that is with i-th equation of the form {@code row[0]^i * x0 +
row[1]^i * x1 + ...
|
static LinearSolver.SystemInfo |
LinearSolver.solveVandermondeT(IntegersZp64 ring,
long[] row,
long[] rhs,
long[] result)
Solves transposed Vandermonde linear system (that is with i-th equation of the form {@code row[0]^i * x0 +
row[1]^i * x1 + ...
|
Modifier and Type | Field and Description |
---|---|
IntegersZp64 |
IMonomialAlgebra.MonomialAlgebraZp64.ring |
IntegersZp64 |
MultivariatePolynomialZp64.ring
The ring.
|
IntegersZp64 |
MultivariatePolynomialZp64.lPrecomputedPowers.ring |
Modifier and Type | Method and Description |
---|---|
static MultivariatePolynomialZp64 |
MultivariatePolynomialZp64.create(int nVariables,
IntegersZp64 ring,
Comparator<DegreeVector> ordering,
Iterable<MonomialZp64> terms)
Creates multivariate polynomial from a list of monomial terms
|
static MultivariatePolynomialZp64 |
MultivariatePolynomialZp64.create(int nVariables,
IntegersZp64 ring,
Comparator<DegreeVector> ordering,
MonomialSet<MonomialZp64> terms)
Creates multivariate polynomial from a set of monomials
|
static MultivariatePolynomialZp64 |
MultivariatePolynomialZp64.create(int nVariables,
IntegersZp64 ring,
Comparator<DegreeVector> ordering,
MonomialZp64... terms)
Creates multivariate polynomial from a list of monomial terms
|
MultivariatePolynomialZp64 |
MultivariatePolynomial.mapCoefficients(IntegersZp64 newDomain,
ToLongFunction<E> mapper)
Maps coefficients of this using specified mapping function
|
static MultivariatePolynomialZp64.lPrecomputedPowersHolder |
MultivariatePolynomialZp64.mkPrecomputedPowers(int nVariables,
IntegersZp64 ring,
int[] variables,
long[] values) |
static MultivariatePolynomialZp64 |
MultivariatePolynomialZp64.one(int nVariables,
IntegersZp64 ring,
Comparator<DegreeVector> ordering)
Creates unit polynomial.
|
static MultivariatePolynomialZp64 |
MultivariatePolynomialZp64.parse(String string,
IntegersZp64 ring,
Comparator<DegreeVector> ordering,
String... variables)
Parse multivariate polynomial from string.
|
static MultivariatePolynomialZp64 |
MultivariatePolynomialZp64.parse(String string,
IntegersZp64 ring,
String... variables)
Parse multivariate polynomial from string.
|
static MultivariatePolynomialZp64 |
RandomMultivariatePolynomials.randomPolynomial(int nVars,
int degree,
int size,
IntegersZp64 ring,
Comparator<DegreeVector> ordering,
org.apache.commons.math3.random.RandomGenerator rnd)
Generates random Zp[X] polynomial over machine integers
|
static MultivariatePolynomialZp64 |
RandomMultivariatePolynomials.randomPolynomial(int nVars,
int degree,
int size,
IntegersZp64 ring,
org.apache.commons.math3.random.RandomGenerator rnd)
Generates random Zp[X] polynomial over machine integers
|
MultivariatePolynomialZp64 |
MultivariatePolynomialZp64.setRing(IntegersZp64 newDomain)
Switches to another ring specified by
newDomain |
MultivariatePolynomialZp64 |
MultivariatePolynomialZp64.setRingUnsafe(IntegersZp64 newDomain)
internal API
|
static MultivariatePolynomialZp64 |
MultivariatePolynomialZp64.zero(int nVariables,
IntegersZp64 ring,
Comparator<DegreeVector> ordering)
Creates zero polynomial.
|
Constructor and Description |
---|
lPrecomputedPowers(int cacheSize,
long value,
IntegersZp64 ring) |
lPrecomputedPowers(long value,
IntegersZp64 ring) |
lPrecomputedPowersHolder(IntegersZp64 ring,
MultivariatePolynomialZp64.lPrecomputedPowers[] powers) |
MonomialAlgebraZp64(IntegersZp64 ring) |
Modifier and Type | Field and Description |
---|---|
IntegersZp64 |
UnivariatePolynomialZp64.ring
The coefficient ring
|
Modifier and Type | Method and Description |
---|---|
static UnivariatePolynomialZp64 |
UnivariatePolynomialZp64.constant(IntegersZp64 ring,
long value)
Creates constant polynomial with specified value
|
static UnivariatePolynomialZp64 |
UnivariatePolynomialZp64.create(IntegersZp64 ring,
long[] data)
Creates poly with specified coefficients represented as signed integers reducing them modulo
modulus |
static UnivariatePolynomialZp64 |
UnivariatePolynomialZp64.createUnsafe(IntegersZp64 ring,
long[] data)
data is not reduced modulo modulus
|
static UnivariatePolynomialZp64 |
UnivariateInterpolation.interpolateNewton(IntegersZp64 ring,
long[] points,
long[] values)
Constructs an interpolating polynomial which values at
points[i] are exactly values[i] . |
UnivariatePolynomialZp64 |
UnivariatePolynomial.mapCoefficients(IntegersZp64 ring,
ToLongFunction<E> mapper)
Applies transformation function to this and returns the result.
|
UnivariatePolynomialZp64 |
UnivariatePolynomialZ64.modulus(IntegersZp64 ring)
Reduces (copied) polynomial modulo
modulus and returns the result. |
UnivariatePolynomialZp64 |
UnivariatePolynomialZ64.modulus(IntegersZp64 ring,
boolean copy)
Reduces this polynomial modulo
modulus and returns the result. |
static UnivariatePolynomialZp64 |
UnivariatePolynomialZp64.one(IntegersZp64 ring)
Creates unit polynomial
|
static UnivariatePolynomialZp64 |
UnivariatePolynomialZp64.parse(String string,
IntegersZp64 modulus)
Parse string into polynomial
|
UnivariatePolynomialZp64 |
UnivariatePolynomialZp64.setModulus(IntegersZp64 newDomain)
Creates new Zp[x] polynomial by coping the coefficients of this and reducing them modulo new modulus.
|
static UnivariatePolynomialZp64 |
UnivariatePolynomialZp64.zero(IntegersZp64 ring)
Creates zero polynomial
|
Constructor and Description |
---|
InterpolationZp64(IntegersZp64 ring)
Start new interpolation with
interpolation[point] = value |
Copyright © 2018. All rights reserved.