Package edu.jas.application
Class ResidueSolvableWordPolynomial<C extends GcdRingElem<C>>
java.lang.Object
edu.jas.poly.GenPolynomial<WordResidue<C>>
edu.jas.poly.GenSolvablePolynomial<WordResidue<C>>
edu.jas.application.ResidueSolvableWordPolynomial<C>
- Type Parameters:
C
- base coefficient type
- All Implemented Interfaces:
AbelianGroupElem<GenPolynomial<WordResidue<C>>>
,Element<GenPolynomial<WordResidue<C>>>
,MonoidElem<GenPolynomial<WordResidue<C>>>
,RingElem<GenPolynomial<WordResidue<C>>>
,Serializable
,Comparable<GenPolynomial<WordResidue<C>>>
,Iterable<Monomial<WordResidue<C>>>
public class ResidueSolvableWordPolynomial<C extends GcdRingElem<C>>
extends GenSolvablePolynomial<WordResidue<C>>
ResidueSolvableWordPolynomial solvable polynomials with WordResidue
coefficients implementing RingElem. n-variate ordered solvable polynomials
over non-commutative word residue coefficients. Objects of this class are
intended to be immutable. The implementation is based on TreeMap respectively
SortedMap from exponents to coefficients by extension of GenPolynomial.
Will eventually be deprecated.
- See Also:
-
Field Summary
FieldsModifier and TypeFieldDescriptionprivate static final boolean
private static final org.apache.logging.log4j.Logger
The factory for the recursive solvable polynomial ring.Fields inherited from class edu.jas.poly.GenPolynomial
blen, hash, val
-
Constructor Summary
ConstructorsModifierConstructorDescriptionConstructor for zero ResidueSolvableWordPolynomial.Constructor for ResidueSolvableWordPolynomial.ResidueSolvableWordPolynomial
(ResidueSolvableWordPolynomialRing<C> r, WordResidue<C> c, ExpVector e) Constructor for ResidueSolvableWordPolynomial.Constructor for ResidueSolvableWordPolynomial.ResidueSolvableWordPolynomial
(ResidueSolvableWordPolynomialRing<C> r, GenSolvablePolynomial<WordResidue<C>> S) Constructor for ResidueSolvableWordPolynomial.protected
ResidueSolvableWordPolynomial
(ResidueSolvableWordPolynomialRing<C> r, SortedMap<ExpVector, WordResidue<C>> v) Constructor for ResidueSolvableWordPolynomial. -
Method Summary
Modifier and TypeMethodDescriptioncopy()
Clone this ResidueSolvableWordPolynomial.boolean
Comparison with any other object.factory()
Get the corresponding element factory.int
hashCode()
Hash code for this polynomial.ResidueSolvableWordPolynomial multiplication.ResidueSolvableWordPolynomial left and right multiplication.multiply
(WordResidue<C> b) ResidueSolvableWordPolynomial multiplication.multiply
(WordResidue<C> b, WordResidue<C> c) ResidueSolvableWordPolynomial left and right multiplication.multiply
(WordResidue<C> b, ExpVector e) ResidueSolvableWordPolynomial multiplication.multiply
(WordResidue<C> b, ExpVector e, WordResidue<C> c, ExpVector f) ResidueSolvableWordPolynomial left and right multiplication.ResidueSolvableWordPolynomial multiplication.ResidueSolvableWordPolynomial left and right multiplication.ResidueSolvableWordPolynomial multiplication.multiplyLeft
(WordResidue<C> b) ResidueSolvableWordPolynomial multiplication.multiplyLeft
(WordResidue<C> b, ExpVector e) ResidueSolvableWordPolynomial multiplication.ResidueSolvableWordPolynomial multiplication.ResidueSolvableWordPolynomial multiplication.protected ResidueSolvableWordPolynomial
<C> ResidueSolvableWordPolynomial multiplication.Methods inherited from class edu.jas.poly.GenSolvablePolynomial
divide, evalAsRightRecursivePolynomial, isRightRecursivePolynomial, leftMonic, monic, multiply, multiply, quotientRemainder, remainder, rightDivide, rightMonic, rightQuotientRemainder, rightRecursivePolynomial, rightRemainder, scaleSubtractMultiple, scaleSubtractMultiple, scaleSubtractMultiple, subtractMultiple, subtractMultiple
Methods inherited from class edu.jas.poly.GenPolynomial
abs, bitLength, coefficient, coefficientIterator, coeffPrimitivePart, compareTo, contract, contractCoeff, degree, degree, degreeMin, degreeVector, deHomogenize, deltaExpVectors, deltaExpVectors, divide, divide, doAddTo, doAddTo, doAddTo, doPutToMap, doPutToMap, doRemoveFromMap, egcd, exponentIterator, extend, extendLower, extendUnivariate, gcd, getMap, hegcd, homogenize, inflate, inverse, isConstant, isHomogeneous, isONE, isUnit, isWeightHomogeneous, isZERO, iterator, leadingBaseCoefficient, leadingExpVector, leadingFacetPolynomial, leadingMonomial, leadingWeightPolynomial, leftDivideCoeff, length, map, mapOnStream, mapOnStream, maxNorm, modInverse, monicRight, multiply, negate, negateAlt, numberOfVariables, quotientRemainder, reductum, remainder, reverse, rightDivideCoeff, rightGcd, scaleSubtractMultiple, scaleSubtractMultiple, scaleSubtractMultiple, signum, spliterator, squareNorm, subtract, subtract, subtract, subtract, subtractMultiple, subtractMultiple, sum, sum, sum, sum, sumNorm, toScript, toScriptFactory, toString, toString, totalDegree, trailingBaseCoefficient, trailingExpVector, weightDegree
Methods inherited from class java.lang.Object
clone, finalize, getClass, notify, notifyAll, wait, wait, wait
Methods inherited from interface edu.jas.structure.MonoidElem
leftDivide, leftRemainder, power, rightDivide, rightRemainder, twosidedDivide, twosidedRemainder
-
Field Details
-
ring
The factory for the recursive solvable polynomial ring. Hides super.ring. -
logger
private static final org.apache.logging.log4j.Logger logger -
debug
private static final boolean debug
-
-
Constructor Details
-
ResidueSolvableWordPolynomial
Constructor for zero ResidueSolvableWordPolynomial.- Parameters:
r
- solvable polynomial ring factory.
-
ResidueSolvableWordPolynomial
Constructor for ResidueSolvableWordPolynomial.- Parameters:
r
- solvable polynomial ring factory.e
- exponent.
-
ResidueSolvableWordPolynomial
public ResidueSolvableWordPolynomial(ResidueSolvableWordPolynomialRing<C> r, WordResidue<C> c, ExpVector e) Constructor for ResidueSolvableWordPolynomial.- Parameters:
r
- solvable polynomial ring factory.c
- coefficient word residue.e
- exponent.
-
ResidueSolvableWordPolynomial
Constructor for ResidueSolvableWordPolynomial.- Parameters:
r
- solvable polynomial ring factory.c
- coefficient word residue.
-
ResidueSolvableWordPolynomial
public ResidueSolvableWordPolynomial(ResidueSolvableWordPolynomialRing<C> r, GenSolvablePolynomial<WordResidue<C>> S) Constructor for ResidueSolvableWordPolynomial.- Parameters:
r
- solvable polynomial ring factory.S
- solvable polynomial.
-
ResidueSolvableWordPolynomial
protected ResidueSolvableWordPolynomial(ResidueSolvableWordPolynomialRing<C> r, SortedMap<ExpVector, WordResidue<C>> v) Constructor for ResidueSolvableWordPolynomial.- Parameters:
r
- solvable polynomial ring factory.v
- the SortedMap of some other (solvable) polynomial.
-
-
Method Details
-
factory
Get the corresponding element factory.- Specified by:
factory
in interfaceElement<C extends GcdRingElem<C>>
- Overrides:
factory
in classGenSolvablePolynomial<WordResidue<C extends GcdRingElem<C>>>
- Returns:
- factory for this Element.
- See Also:
-
copy
Clone this ResidueSolvableWordPolynomial.- Specified by:
copy
in interfaceElement<C extends GcdRingElem<C>>
- Overrides:
copy
in classGenSolvablePolynomial<WordResidue<C extends GcdRingElem<C>>>
- Returns:
- copy of this.
- See Also:
-
equals
Comparison with any other object.- Specified by:
equals
in interfaceElement<C extends GcdRingElem<C>>
- Overrides:
equals
in classGenSolvablePolynomial<WordResidue<C extends GcdRingElem<C>>>
- Parameters:
B
-- Returns:
- true if this is equal to b, else false.
- See Also:
-
hashCode
public int hashCode()Hash code for this polynomial.- Specified by:
hashCode
in interfaceElement<C extends GcdRingElem<C>>
- Overrides:
hashCode
in classGenSolvablePolynomial<WordResidue<C extends GcdRingElem<C>>>
- Returns:
- the hashCode.
- See Also:
-
multiply
ResidueSolvableWordPolynomial multiplication.- Parameters:
Bp
- ResidueSolvableWordPolynomial.- Returns:
- this*Bp, where * denotes solvable multiplication.
-
multiply
public ResidueSolvableWordPolynomial<C> multiply(ResidueSolvableWordPolynomial<C> S, ResidueSolvableWordPolynomial<C> T) ResidueSolvableWordPolynomial left and right multiplication. Product with two polynomials.- Parameters:
S
- ResidueSolvableWordPolynomial.T
- ResidueSolvableWordPolynomial.- Returns:
- S*this*T.
-
multiply
ResidueSolvableWordPolynomial multiplication. Product with coefficient ring element.- Overrides:
multiply
in classGenSolvablePolynomial<WordResidue<C extends GcdRingElem<C>>>
- Parameters:
b
- coefficient polynomial.- Returns:
- this*b, where * is coefficient multiplication.
-
multiply
ResidueSolvableWordPolynomial left and right multiplication. Product with coefficient ring element.- Overrides:
multiply
in classGenSolvablePolynomial<WordResidue<C extends GcdRingElem<C>>>
- Parameters:
b
- coefficient polynomial.c
- coefficient polynomial.- Returns:
- b*this*c, where * is coefficient multiplication.
-
multiply
ResidueSolvableWordPolynomial multiplication. Product with exponent vector.- Overrides:
multiply
in classGenSolvablePolynomial<WordResidue<C extends GcdRingElem<C>>>
- Parameters:
e
- exponent.- Returns:
- this * xe, where * denotes solvable multiplication.
-
multiply
ResidueSolvableWordPolynomial left and right multiplication. Product with exponent vector.- Overrides:
multiply
in classGenSolvablePolynomial<WordResidue<C extends GcdRingElem<C>>>
- Parameters:
e
- exponent.f
- exponent.- Returns:
- xe * this * xf, where * denotes solvable multiplication.
-
multiply
ResidueSolvableWordPolynomial multiplication. Product with ring element and exponent vector.- Overrides:
multiply
in classGenSolvablePolynomial<WordResidue<C extends GcdRingElem<C>>>
- Parameters:
b
- coefficient polynomial.e
- exponent.- Returns:
- this * b xe, where * denotes solvable multiplication.
-
multiply
public ResidueSolvableWordPolynomial<C> multiply(WordResidue<C> b, ExpVector e, WordResidue<C> c, ExpVector f) ResidueSolvableWordPolynomial left and right multiplication. Product with ring element and exponent vector.- Overrides:
multiply
in classGenSolvablePolynomial<WordResidue<C extends GcdRingElem<C>>>
- Parameters:
b
- coefficient polynomial.e
- exponent.c
- coefficient polynomial.f
- exponent.- Returns:
- b xe * this * c xf, where * denotes solvable multiplication.
-
multiplyLeft
ResidueSolvableWordPolynomial multiplication. Left product with ring element and exponent vector.- Overrides:
multiplyLeft
in classGenSolvablePolynomial<WordResidue<C extends GcdRingElem<C>>>
- Parameters:
b
- coefficient polynomial.e
- exponent.- Returns:
- b xe * this, where * denotes solvable multiplication.
-
multiplyLeft
ResidueSolvableWordPolynomial multiplication. Left product with exponent vector.- Overrides:
multiplyLeft
in classGenSolvablePolynomial<WordResidue<C extends GcdRingElem<C>>>
- Parameters:
e
- exponent.- Returns:
- xe * this, where * denotes solvable multiplication.
-
multiplyLeft
ResidueSolvableWordPolynomial multiplication. Left product with coefficient ring element.- Overrides:
multiplyLeft
in classGenSolvablePolynomial<WordResidue<C extends GcdRingElem<C>>>
- Parameters:
b
- coefficient polynomial.- Returns:
- b*this, where * is coefficient multiplication.
-
multiplyLeft
ResidueSolvableWordPolynomial multiplication. Left product with 'monomial'.- Overrides:
multiplyLeft
in classGenSolvablePolynomial<WordResidue<C extends GcdRingElem<C>>>
- Parameters:
m
- 'monomial'.- Returns:
- m * this, where * denotes solvable multiplication.
-
multiply
ResidueSolvableWordPolynomial multiplication. Product with 'monomial'.- Overrides:
multiply
in classGenSolvablePolynomial<WordResidue<C extends GcdRingElem<C>>>
- Parameters:
m
- 'monomial'.- Returns:
- this * m, where * denotes solvable multiplication.
-
shift
ResidueSolvableWordPolynomial multiplication. Commutative product with exponent vector.- Parameters:
f
- exponent vector.- Returns:
- B*f, where * is commutative multiplication.
-