Uses of Interface
cc.redberry.rings.Ring
-
Packages that use Ring Package Description cc.redberry.rings cc.redberry.rings.io cc.redberry.rings.linear cc.redberry.rings.poly cc.redberry.rings.poly.multivar cc.redberry.rings.poly.univar -
-
Uses of Ring in cc.redberry.rings
Classes in cc.redberry.rings that implement Ring Modifier and Type Class Description classARing<E>Abstract ring which holds perfect power decomposition of its cardinality.classImageRing<F,I>A ring obtained via isomorphism specified byImageRing.image(Object)andImageRing.inverse(Object)functions.classIntegersThe ring of integers (Z).classIntegersZpRing of integers modulo somemodulus.classRationals<E>The ring of rationals (Q).Fields in cc.redberry.rings declared as Ring Modifier and Type Field Description Ring<E>FactorDecomposition. ringThe ringRing<F>ImageRing. ringthe ringRing<E>Rational. ringThe ring.Ring<E>Rationals. ringRing that numerator and denominator belongs toMethods in cc.redberry.rings with parameters of type Ring Modifier and Type Method Description static <E> EChineseRemainders. ChineseRemainders(Ring<E> ring, ChineseRemainders.ChineseRemaindersMagic<E> magic, E remainder1, E remainder2)Runs Chinese Remainders algorithm using the precomputed magic (speed's up computation when several invocations with the samemagicperformed)static <E> EChineseRemainders. ChineseRemainders(Ring<E> ring, E[] primes, E[] remainders)Runs Chinese Remainders algorithmstatic <E> EChineseRemainders. ChineseRemainders(Ring<E> ring, E prime1, E prime2, E remainder1, E remainder2)Runs Chinese Remainders algorithmstatic <E> ChineseRemainders.ChineseRemaindersMagic<E>ChineseRemainders. createMagic(Ring<E> ring, E prime1, E prime2)Magic for fast repeated Chinese Remaindersstatic <E> FactorDecomposition<E>FactorDecomposition. empty(Ring<E> ring)Empty factorizationstatic <E> Rationals<E>Rings. Frac(Ring<E> ring)Ring of rational functions over specified ringstatic <E> AlgebraicNumberField<UnivariatePolynomial<E>>Rings. GaussianNumbers(Ring<E> ring)Gaussian numbers for a given ring (that is ring adjoined with imaginary unit)<O> Rational<O>Rational. map(Ring<O> ring, Function<E,O> function)Maps rational to a new ring<R> FactorDecomposition<R>FactorDecomposition. mapTo(Ring<R> othRing, Function<E,R> mapper)static <E> MultivariateRing<MultivariatePolynomial<E>>Rings. MultivariateRing(int nVariables, Ring<E> coefficientRing)Ring of multivariate polynomials with specified number of variables over specified coefficient ringstatic <E> MultivariateRing<MultivariatePolynomial<E>>Rings. MultivariateRing(int nVariables, Ring<E> coefficientRing, Comparator<DegreeVector> monomialOrder)Ring of multivariate polynomials with specified number of variables over specified coefficient ringstatic <E> FactorDecomposition<E>FactorDecomposition. of(Ring<E> ring, E... factors)Factor decomposition with specified factors and exponentsstatic <E> FactorDecomposition<E>FactorDecomposition. of(Ring<E> ring, E unit, List<E> factors, gnu.trove.list.array.TIntArrayList exponents)Factor decomposition with specified factors and exponentsstatic <E> FactorDecomposition<E>FactorDecomposition. of(Ring<E> ring, Collection<E> factors)Factor decomposition with specified factors and exponentsstatic <E> Rational<E>Rational. one(Ring<E> ring)Constructs onestatic <E> FactorDecomposition<E>FactorDecomposition. unit(Ring<E> ring, E unit)Unit factorizationstatic <E> UnivariateRing<UnivariatePolynomial<E>>Rings. UnivariateRing(Ring<E> coefficientRing)Ring of univariate polynomials over specified coefficient ringstatic <E> Rational<E>Rational. zero(Ring<E> ring)Constructs zeroConstructors in cc.redberry.rings with parameters of type Ring Constructor Description FactorDecomposition(Ring<E> ring, E unit, List<E> factors, gnu.trove.list.array.TIntArrayList exponents)ImageRing(Ring<F> ring, Function<I,F> inverseFunc, Function<F,I> imageFunc)Rational(Ring<E> ring, E numerator)Rational(Ring<E> ring, E numerator, E denominator)Rationals(Ring<E> ring) -
Uses of Ring in cc.redberry.rings.io
Fields in cc.redberry.rings.io declared as Ring Modifier and Type Field Description protected Ring<Element>Coder. baseRingthe base ringFields in cc.redberry.rings.io with type parameters of type Ring Modifier and Type Field Description protected Map<Ring<?>,Coder<?,?,?>>Coder. subcodersinner codersMap<Ring,IStringifier>IStringifier.SimpleStringifier. substringifiersMethods in cc.redberry.rings.io with parameters of type Ring Modifier and Type Method Description <Oth> Coder<Oth,?,?>Coder. map(Ring<Oth> ring, Function<Element,Oth> func)Maps this coder to a given type via mapperfuncwhich just applies to each parsed element as well as to bindings (forIStringifier.stringify(Object)).static <E> Coder<E,?,?>Coder. mkCoder(Ring<E> ring)Create coder for generic ringstatic <E> Coder<E,?,?>Coder. mkCoder(Ring<E> ring, Map<String,E> variables)Create coder for generic ringsstatic <Element,Term extends AMonomial<Term>,Poly extends AMultivariatePolynomial<Term,Poly>>
Coder<Element,Term,Poly>Coder. mkCoder(Ring<Element> baseRing, Map<String,Element> eVariables, MultivariateRing<Poly> polyRing, Map<String,Poly> pVariables, SerializableFunction<Poly,Element> polyToElement)static <E,I>
Coder<E,?,?>Coder. mkNestedCoder(Ring<E> ring, Map<String,E> variables, Coder<I,?,?> innerCoder, SerializableFunction<I,E> imageFunc)Create coder for nested rings (e.g.<K> IStringifier<K>Coder. substringifier(Ring<K> ring)<U> IStringifier<U>IStringifier.SimpleStringifier. substringifier(Ring<U> ring)<UnderlyingElement>
IStringifier<UnderlyingElement>IStringifier. substringifier(Ring<UnderlyingElement> ring)Get stringifier for the specified ring of some underlying elements, should never give null (use dummy() for absent stringifier) -
Uses of Ring in cc.redberry.rings.linear
Methods in cc.redberry.rings.linear with parameters of type Ring Modifier and Type Method Description static <E> voidLinearSolver. reducedRowEchelonForm(Ring<E> ring, E[][] lhs, E[] rhs)Gives the reduced row echelon form of the linear systemlhs.x = rhsfrom a given row echelon form.static <E> intLinearSolver. rowEchelonForm(Ring<E> ring, E[][] matrix)Gives the row echelon form of the matrixstatic <E> intLinearSolver. rowEchelonForm(Ring<E> ring, E[][] matrix, boolean reduce)Gives the row echelon form of the matrixstatic <E> intLinearSolver. rowEchelonForm(Ring<E> ring, E[][] lhs, E[] rhs)Gives the row echelon form of the linear systemlhs.x = rhs.static <E> intLinearSolver. rowEchelonForm(Ring<E> ring, E[][] lhs, E[] rhs, boolean reduce, boolean breakOnUnderDetermined)Gives the row echelon form of the linear systemlhs.x = rhs.static <E> E[]LinearSolver. solve(Ring<E> ring, E[][] lhs, E[] rhs)Solves linear systemlhs.x = rhsand reduces lhs to row echelon form.static <E> LinearSolver.SystemInfoLinearSolver. solve(Ring<E> ring, E[][] lhs, E[] rhs, E[] result)Solves linear systemlhs.x = rhsand reduces the lhs to row echelon form.static <E> LinearSolver.SystemInfoLinearSolver. solve(Ring<E> ring, E[][] lhs, E[] rhs, E[] result, boolean solveIfUnderDetermined)Solves linear systemlhs.x = rhsand reduces the lhs to row echelon form.static <E> LinearSolver.SystemInfoLinearSolver. solve(Ring<E> ring, ArrayList<E[]> lhs, ArrayList<E> rhs, E[] result)Solves linear systemlhs.x = rhsand stores the result inresult(which should be of the enough length).static <E> E[]LinearSolver. solveVandermonde(Ring<E> ring, E[] row, E[] rhs)Solves Vandermonde linear system (that is with i-th equation of the formrow[i]^0 * x0 + row[i]^1 * x1 + ... row[i]^N * xN = rhs[i]).static <E> LinearSolver.SystemInfoLinearSolver. solveVandermonde(Ring<E> ring, E[] row, E[] rhs, E[] result)Solves Vandermonde linear system (that is with i-th equation of the formrow[i]^0 * x0 + row[i]^1 * x1 + ... row[i]^N * xN = rhs[i]) and stores the result inresult(which should be of the enough length).static <E> E[]LinearSolver. solveVandermondeT(Ring<E> ring, E[] row, E[] rhs)Solves transposed Vandermonde linear system (that is with i-th equation of the formrow[0]^i * x0 + row[1]^i * x1 + ... row[N]^i * xN = rhs[i]).static <E> LinearSolver.SystemInfoLinearSolver. solveVandermondeT(Ring<E> ring, E[] row, E[] rhs, E[] result)Solves transposed Vandermonde linear system (that is with i-th equation of the formrow[0]^i * x0 + row[1]^i * x1 + ... row[N]^i * xN = rhs[i]) and stores the result inresult(which should be of the enough length). -
Uses of Ring in cc.redberry.rings.poly
Subinterfaces of Ring in cc.redberry.rings.poly Modifier and Type Interface Description interfaceIPolynomialRing<Poly extends IPolynomial<Poly>>Polynomial ring.Classes in cc.redberry.rings.poly that implement Ring Modifier and Type Class Description classAlgebraicNumberField<E extends IUnivariatePolynomial<E>>Algebraic number fieldF(α)represented as a simple field extension, for details seeSimpleFieldExtension.classFiniteField<E extends IUnivariatePolynomial<E>>Galois fieldGF(p, q).classMultipleFieldExtension<Term extends AMonomial<Term>,mPoly extends AMultivariatePolynomial<Term,mPoly>,sPoly extends IUnivariatePolynomial<sPoly>>Multiple field extensionF(α_1, α_2, ..., α_N).classMultivariateRing<Poly extends AMultivariatePolynomial<?,Poly>>Ring of multivariate polynomials.classQuotientRing<Term extends AMonomial<Term>,Poly extends AMultivariatePolynomial<Term,Poly>>Multivariate quotient ringclassSimpleFieldExtension<E extends IUnivariatePolynomial<E>>A simple field extensionF(α)represented as a univariate quotient ringF[x]/<m(x)>wherem(x)is the minimal polynomial ofα.classUnivariateRing<Poly extends IUnivariatePolynomial<Poly>>Ring of univariate polynomials.Methods in cc.redberry.rings.poly with parameters of type Ring Modifier and Type Method Description static <E> MultivariatePolynomial<Rational<E>>Util. asOverRationals(Ring<Rational<E>> field, MultivariatePolynomial<E> poly)static <E> UnivariatePolynomial<Rational<E>>Util. asOverRationals(Ring<Rational<E>> field, UnivariatePolynomial<E> poly)static <E> MultivariatePolynomial<Rational<E>>Util. divideOverRationals(Ring<Rational<E>> field, MultivariatePolynomial<E> poly, E denominator)static <E> UnivariatePolynomial<Rational<E>>Util. divideOverRationals(Ring<Rational<E>> field, UnivariatePolynomial<E> poly, E denominator) -
Uses of Ring in cc.redberry.rings.poly.multivar
Fields in cc.redberry.rings.poly.multivar declared as Ring Modifier and Type Field Description Ring<E>IMonomialAlgebra.MonomialAlgebra. ringRing<E>MultivariatePolynomial. ringThe coefficient ringMethods in cc.redberry.rings.poly.multivar with parameters of type Ring Modifier and Type Method Description <sPoly extends IUnivariatePolynomial<sPoly>>
sPolyAMultivariatePolynomial. composition(Ring<sPoly> uRing, sPoly... values)Substitutes given polynomials instead of variables of this (that isthis(values_1, ..., values_N))static <E> MultivariatePolynomial<E>MultivariatePolynomial. create(int nVariables, Ring<E> ring, Comparator<DegreeVector> ordering, Monomial<E>... terms)Creates multivariate polynomial from a list of monomial termsstatic <E> MultivariatePolynomial<E>MultivariatePolynomial. create(int nVariables, Ring<E> ring, Comparator<DegreeVector> ordering, Iterable<Monomial<E>> terms)Creates multivariate polynomial from a list of monomial terms<T> MultivariatePolynomial<T>MultivariatePolynomial. mapCoefficients(Ring<T> newRing, Function<E,T> mapper)Maps coefficients of this using specified mapping function<T> MultivariatePolynomial<T>MultivariatePolynomialZp64. mapCoefficients(Ring<T> newRing, LongFunction<T> mapper)Maps coefficients of this using specified mapping functionabstract <E> MultivariatePolynomial<E>AMultivariatePolynomial. mapCoefficientsAsPolys(Ring<E> ring, Function<Poly,E> mapper)<T> MultivariatePolynomial<T>MultivariatePolynomial. mapCoefficientsAsPolys(Ring<T> ring, Function<MultivariatePolynomial<E>,T> mapper)<E> MultivariatePolynomial<E>MultivariatePolynomialZp64. mapCoefficientsAsPolys(Ring<E> ring, Function<MultivariatePolynomialZp64,E> mapper)<T> MultivariatePolynomial<T>MultivariatePolynomial. mapTerms(Ring<T> newRing, Function<Monomial<E>,Monomial<T>> mapper)Maps terms of this using specified mapping function<T> MultivariatePolynomial<T>MultivariatePolynomialZp64. mapTerms(Ring<T> newRing, Function<MonomialZp64,Monomial<T>> mapper)Maps terms of this using specified mapping functionstatic <E> MultivariatePolynomial.PrecomputedPowersHolder<E>MultivariatePolynomial. mkPrecomputedPowers(int nVariables, Ring<E> ring, int[] variables, E[] values)static <E> MultivariatePolynomial<E>MultivariatePolynomial. one(int nVariables, Ring<E> ring, Comparator<DegreeVector> ordering)Creates unit polynomial.static <E> Ideal<Monomial<E>,MultivariatePolynomial<E>>Ideal. parse(String[] generators, Ring<E> field, String[] variables)Shortcut for parsestatic <E> Ideal<Monomial<E>,MultivariatePolynomial<E>>Ideal. parse(String[] generators, Ring<E> field, Comparator<DegreeVector> monomialOrder, String[] variables)Shortcut for parsestatic <E> MultivariatePolynomial<E>MultivariatePolynomial. parse(String string, Ring<E> ring)Deprecated.use #parse(string, ring, ordering, variables)static <E> MultivariatePolynomial<E>MultivariatePolynomial. parse(String string, Ring<E> ring, String... variables)Parse multivariate polynomial from string.static <E> MultivariatePolynomial<E>MultivariatePolynomial. parse(String string, Ring<E> ring, Comparator<DegreeVector> ordering)Deprecated.use #parse(string, ring, ordering, variables)static <E> MultivariatePolynomial<E>MultivariatePolynomial. parse(String string, Ring<E> ring, Comparator<DegreeVector> ordering, String... variables)Parse multivariate polynomial from string.static <E> MultivariatePolynomial<E>RandomMultivariatePolynomials. randomPolynomial(int nVars, int minDegree, int maxDegree, int size, Ring<E> ring, Comparator<DegreeVector> ordering, Function<org.apache.commons.math3.random.RandomGenerator,E> method, org.apache.commons.math3.random.RandomGenerator rnd)Generates random polynomialstatic <E> MultivariatePolynomial<E>RandomMultivariatePolynomials. randomPolynomial(int nVars, int degree, int size, Ring<E> ring, Comparator<DegreeVector> ordering, Function<org.apache.commons.math3.random.RandomGenerator,E> method, org.apache.commons.math3.random.RandomGenerator rnd)Generates random polynomialstatic <E> MultivariatePolynomial<E>RandomMultivariatePolynomials. randomPolynomial(int nVars, int degree, int size, Ring<E> ring, Comparator<DegreeVector> ordering, org.apache.commons.math3.random.RandomGenerator rnd)Generates random polynomialstatic <E> MultivariatePolynomial<E>RandomMultivariatePolynomials. randomSharpPolynomial(int nVars, int degree, int size, Ring<E> ring, Comparator<DegreeVector> ordering, Function<org.apache.commons.math3.random.RandomGenerator,E> rndCoefficients, org.apache.commons.math3.random.RandomGenerator rnd)Generates random Zp[X] polynomial over machine integersstatic <Term extends AMonomial<Term>,Poly extends AMultivariatePolynomial<Term,Poly>,uPoly extends IUnivariatePolynomial<uPoly>>
UnivariatePolynomial<uPoly>HenselLifting. 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 evaluationMultivariatePolynomial<E>MultivariatePolynomial. setRing(Ring<E> newRing)Returns a copy of this with coefficient reduced to anewRing<E> MultivariatePolynomial<E>MultivariatePolynomialZp64. setRing(Ring<E> newRing)Switches to another ring specified bynewRingMultivariatePolynomial<E>MultivariatePolynomial. setRingUnsafe(Ring<E> newRing)internal APIstatic <E> MultivariatePolynomial<E>MultivariatePolynomial. zero(int nVariables, Ring<E> ring, Comparator<DegreeVector> ordering)Creates zero polynomial.Constructors in cc.redberry.rings.poly.multivar with parameters of type Ring Constructor Description MonomialAlgebra(Ring<E> ring)PrecomputedPowersHolder(Ring<E> ring, cc.redberry.rings.poly.multivar.MultivariatePolynomial.PrecomputedPowers<E>[] powers) -
Uses of Ring in cc.redberry.rings.poly.univar
Fields in cc.redberry.rings.poly.univar declared as Ring Modifier and Type Field Description Ring<E>UnivariatePolynomial. ringThe coefficient ringMethods in cc.redberry.rings.poly.univar with parameters of type Ring Modifier and Type Method Description default PolyIUnivariatePolynomial. composition(Ring<Poly> ring, Poly value)Calculates the composition of this(oth) (new instance, so the content of this is not changed))static <E> UnivariatePolynomial<E>UnivariatePolynomial. constant(Ring<E> ring, E constant)Creates constant polynomial over specified ringstatic UnivariatePolynomial<BigInteger>UnivariatePolynomial. create(Ring<BigInteger> ring, long... data)Creates univariate polynomial over specified ring (with integer elements) with the specified coefficientsstatic <E> UnivariatePolynomial<E>UnivariatePolynomial. create(Ring<E> ring, E... data)Creates new univariate polynomial over specified ring with the specified coefficients.static <E> UnivariatePolynomial<E>UnivariatePolynomial. createUnsafe(Ring<E> ring, E[] data)skipsring.setToValueOf(data)static <E> UnivariatePolynomial<E>UnivariateInterpolation. interpolateLagrange(Ring<E> ring, E[] points, E[] values)Constructs an interpolating polynomial which values atpoints[i]are exactlyvalues[i].static <E> UnivariatePolynomial<E>UnivariateInterpolation. interpolateNewton(Ring<E> ring, E[] points, E[] values)Constructs an interpolating polynomial which values atpoints[i]are exactlyvalues[i].<T> UnivariatePolynomial<T>UnivariatePolynomial. mapCoefficients(Ring<T> ring, Function<E,T> mapper)Applies transformation function to this and returns the result.default <E> UnivariatePolynomial<E>IUnivariatePolynomial. mapCoefficientsAsPolys(Ring<E> ring, Function<Poly,E> mapper)static <E> UnivariatePolynomial<E>UnivariatePolynomial. one(Ring<E> ring)Creates unit polynomial over specified ringstatic <E> UnivariatePolynomial<E>UnivariatePolynomial. parse(String string, Ring<E> ring)Deprecated.static <E> UnivariatePolynomial<E>UnivariatePolynomial. parse(String string, Ring<E> ring, String var)Parse string into polynomialstatic <E> E[]RandomUnivariatePolynomials. randomArray(int degree, Ring<E> ring, Function<org.apache.commons.math3.random.RandomGenerator,E> method, org.apache.commons.math3.random.RandomGenerator rnd)Creates random array of lengthdegree + 1with elements from the specified ringstatic <E> E[]RandomUnivariatePolynomials. randomArray(int degree, Ring<E> ring, org.apache.commons.math3.random.RandomGenerator rnd)Creates random array of lengthdegree + 1with elements from the specified ringstatic <E> UnivariatePolynomial<E>IrreduciblePolynomials. randomIrreduciblePolynomial(Ring<E> ring, int degree, org.apache.commons.math3.random.RandomGenerator rnd)Generated random irreducible polynomial over specified ring of degreedegreestatic <E> UnivariatePolynomial<E>RandomUnivariatePolynomials. randomMonicPoly(int degree, Ring<E> ring, org.apache.commons.math3.random.RandomGenerator rnd)Creates random polynomial of specifieddegree.static <E> UnivariatePolynomial<E>RandomUnivariatePolynomials. randomPoly(int degree, Ring<E> ring, Function<org.apache.commons.math3.random.RandomGenerator,E> method, org.apache.commons.math3.random.RandomGenerator rnd)Creates random polynomial of specifieddegreewith elements from specified ringstatic <E> UnivariatePolynomial<E>RandomUnivariatePolynomials. randomPoly(int degree, Ring<E> ring, org.apache.commons.math3.random.RandomGenerator rnd)Creates random polynomial of specifieddegreewith elements from specified ringUnivariatePolynomial<E>UnivariatePolynomial. setRing(Ring<E> newRing)Returns a copy of this with elements reduced to a new coefficient ringUnivariatePolynomial<E>UnivariatePolynomial. setRingUnsafe(Ring<E> newRing)internal APIstatic <E> UnivariatePolynomial<E>UnivariatePolynomial. zero(Ring<E> ring)Creates zero polynomial over specified ringConstructors in cc.redberry.rings.poly.univar with parameters of type Ring Constructor Description Interpolation(Ring<E> ring)Start new interpolation withinterpolation[point] = valuePolynomialCollector(Ring<E> ring)
-