|
|||||||||
| PREV CLASS NEXT CLASS | FRAMES NO FRAMES | ||||||||
| SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD | ||||||||
java.lang.Objectedu.jas.poly.GenPolynomial<C>
public class GenPolynomial<C extends RingElem<C>>
GenPolynomial generic polynomials implementing RingElem. n-variate ordered polynomials over C. Objects of this class are intended to be immutable. The implementation is based on TreeMap respectively SortedMap from exponents to coefficients. Only the coefficients are modeled with generic types, the exponents are fixed to ExpVector with long entries (this will eventually be changed in the future). C can also be a non integral domain, e.g. a ModInteger, i.e. it may contain zero divisors, since multiply() does now check for zeros.
| Field Summary | |
|---|---|
GenPolynomialRing<C> |
ring
The factory for the polynomial ring. |
protected java.util.SortedMap<ExpVector,C> |
val
The data structure for polynomials. |
| Constructor Summary | |
|---|---|
|
GenPolynomial(GenPolynomialRing<C> r)
Constructor for zero GenPolynomial. |
|
GenPolynomial(GenPolynomialRing<C> r,
C c,
ExpVector e)
Constructor for GenPolynomial c * xe. |
protected |
GenPolynomial(GenPolynomialRing<C> r,
java.util.SortedMap<ExpVector,C> v)
Constructor for GenPolynomial. |
| Method Summary | |
|---|---|
GenPolynomial<C> |
abs()
GenPolynomial absolute value, i.e. leadingCoefficient > 0. |
GenPolynomial<C> |
clone()
Clone this GenPolynomial. |
int |
compareTo(GenPolynomial<C> b)
GenPolynomial comparison. |
java.util.Map<ExpVector,GenPolynomial<C>> |
contract(GenPolynomialRing<C> pfac)
Contract variables. |
long |
degree()
Maximal degree. |
long |
degree(int i)
Degree in variable i. |
ExpVector |
degreeVector()
Maximal degree vector. |
GenPolynomial<C> |
divide(C s)
GenPolynomial division. |
GenPolynomial<C> |
divide(GenPolynomial<C> S)
GenPolynomial division. |
GenPolynomial<C>[] |
divideAndRemainder(GenPolynomial<C> S)
GenPolynomial division with remainder. |
void |
doPutToMap(ExpVector e,
C c)
Put an ExpVector to coefficient entry into the internal map of this GenPolynomial. |
GenPolynomial<C>[] |
egcd(GenPolynomial<C> S)
GenPolynomial extended greatest comon divisor. |
boolean |
equals(java.lang.Object B)
Comparison with any other object. |
GenPolynomial<C> |
extend(GenPolynomialRing<C> pfac,
int j,
long k)
Extend variables. |
GenPolynomial<C> |
gcd(GenPolynomial<C> S)
GenPolynomial greatest common divisor. |
java.util.SortedMap<ExpVector,C> |
getMap()
ExpVector to coefficient map of GenPolynomial. |
int |
hashCode()
Hash code for this polynomial. |
GenPolynomial<C> |
inverse()
GenPolynomial inverse. |
boolean |
isConstant()
Is GenPolynomial |
boolean |
isONE()
Is GenPolynomial |
boolean |
isUnit()
Is GenPolynomial |
boolean |
isZERO()
Is GenPolynomial |
C |
leadingBaseCoefficient()
Leading base coefficient. |
ExpVector |
leadingExpVector()
Leading exponent vector. |
java.util.Map.Entry<ExpVector,C> |
leadingMonomial()
Leading monomial. |
int |
length()
Length of GenPolynomial. |
C |
maxNorm()
GenPolynomial maximum norm. |
GenPolynomial<C> |
modInverse(GenPolynomial<C> m)
GenPolynomial modular inverse. |
GenPolynomial<C> |
monic()
GenPolynomial monic, i.e. leadingCoefficient == 1. |
GenPolynomial<C> |
multiply(C s)
GenPolynomial multiplication. |
GenPolynomial<C> |
multiply(C s,
ExpVector e)
GenPolynomial multiplication. |
GenPolynomial<C> |
multiply(ExpVector e)
GenPolynomial multiplication. |
GenPolynomial<C> |
multiply(GenPolynomial<C> S)
GenPolynomial multiplication. |
GenPolynomial<C> |
multiply(java.util.Map.Entry<ExpVector,C> m)
GenPolynomial multiplication. |
GenPolynomial<C> |
negate()
GenPolynomial negation. |
int |
numberOfVariables()
Number of variables. |
GenPolynomial<C> |
reductum()
Reductum. |
GenPolynomial<C> |
remainder(GenPolynomial<C> S)
GenPolynomial remainder. |
GenPolynomial<C> |
reverse(GenPolynomialRing<C> oring)
Reverse variables. |
int |
signum()
GenPolynomial signum. |
GenPolynomial<C> |
subtract(C a,
ExpVector e)
GenPolynomial subtraction. |
GenPolynomial<C> |
subtract(GenPolynomial<C> S)
GenPolynomial subtraction. |
GenPolynomial<C> |
sum(C a,
ExpVector e)
GenPolynomial addition. |
GenPolynomial<C> |
sum(GenPolynomial<C> S)
GenPolynomial summation. |
C |
sumNorm()
GenPolynomial sum norm. |
java.lang.String |
toString()
String representation of GenPolynomial. |
java.lang.String |
toString(java.lang.String[] v)
String representation of GenPolynomial. |
C |
trailingBaseCoefficient()
Trailing base coefficient. |
| Methods inherited from class java.lang.Object |
|---|
finalize, getClass, notify, notifyAll, wait, wait, wait |
| Field Detail |
|---|
public final GenPolynomialRing<C extends RingElem<C>> ring
protected final java.util.SortedMap<ExpVector,C extends RingElem<C>> val
| Constructor Detail |
|---|
public GenPolynomial(GenPolynomialRing<C> r)
r - polynomial ring factory.
public GenPolynomial(GenPolynomialRing<C> r,
C c,
ExpVector e)
r - polynomial ring factory.c - coefficient.e - exponent.
protected GenPolynomial(GenPolynomialRing<C> r,
java.util.SortedMap<ExpVector,C> v)
r - polynomial ring factory.v - the SortedMap of some other polynomial.| Method Detail |
|---|
public GenPolynomial<C> clone()
clone in interface Element<GenPolynomial<C extends RingElem<C>>>clone in class java.lang.ObjectObject.clone()
public int length()
public java.util.SortedMap<ExpVector,C> getMap()
public void doPutToMap(ExpVector e,
C c)
c - coefficient.e - exponent.public java.lang.String toString()
toString in class java.lang.ObjectObject.toString()public java.lang.String toString(java.lang.String[] v)
Object.toString()v - names for variables.public boolean isZERO()
isZERO in interface AbelianGroupElem<GenPolynomial<C extends RingElem<C>>>AbelianGroupElem.isZERO()
public boolean isONE()
isONE in interface MonoidElem<GenPolynomial<C extends RingElem<C>>>MonoidElem.isONE()
public boolean isUnit()
isUnit in interface MonoidElem<GenPolynomial<C extends RingElem<C>>>MonoidElem.isUnit()
public boolean isConstant()
public boolean equals(java.lang.Object B)
equals in interface Element<GenPolynomial<C extends RingElem<C>>>equals in class java.lang.ObjectObject.equals(java.lang.Object)
public int hashCode()
hashCode in interface Element<GenPolynomial<C extends RingElem<C>>>hashCode in class java.lang.ObjectObject.hashCode()
public int compareTo(GenPolynomial<C> b)
compareTo in interface Element<GenPolynomial<C extends RingElem<C>>>compareTo in interface java.lang.Comparable<GenPolynomial<C extends RingElem<C>>>b - GenPolynomial.
public int signum()
signum in interface AbelianGroupElem<GenPolynomial<C extends RingElem<C>>>public int numberOfVariables()
public java.util.Map.Entry<ExpVector,C> leadingMonomial()
public ExpVector leadingExpVector()
public C leadingBaseCoefficient()
public C trailingBaseCoefficient()
public GenPolynomial<C> reductum()
public long degree(int i)
public long degree()
public ExpVector degreeVector()
public C maxNorm()
public C sumNorm()
public GenPolynomial<C> sum(GenPolynomial<C> S)
sum in interface AbelianGroupElem<GenPolynomial<C extends RingElem<C>>>S - GenPolynomial.
public GenPolynomial<C> sum(C a,
ExpVector e)
a - coefficient.e - exponent.
public GenPolynomial<C> subtract(GenPolynomial<C> S)
subtract in interface AbelianGroupElem<GenPolynomial<C extends RingElem<C>>>S - GenPolynomial.
public GenPolynomial<C> subtract(C a,
ExpVector e)
a - coefficient.e - exponent.
public GenPolynomial<C> negate()
negate in interface AbelianGroupElem<GenPolynomial<C extends RingElem<C>>>public GenPolynomial<C> abs()
abs in interface AbelianGroupElem<GenPolynomial<C extends RingElem<C>>>public GenPolynomial<C> multiply(GenPolynomial<C> S)
multiply in interface MonoidElem<GenPolynomial<C extends RingElem<C>>>S - GenPolynomial.
public GenPolynomial<C> multiply(C s)
s - coefficient.
public GenPolynomial<C> monic()
public GenPolynomial<C> multiply(C s,
ExpVector e)
s - coefficient.e - exponent.
public GenPolynomial<C> multiply(ExpVector e)
e - exponent (!= null).
public GenPolynomial<C> multiply(java.util.Map.Entry<ExpVector,C> m)
m - 'monomial'.
public GenPolynomial<C> divide(C s)
s - coefficient.
public GenPolynomial<C>[] divideAndRemainder(GenPolynomial<C> S)
PolyUtil.basePseudoRemainder(edu.jas.poly.GenPolynomial,edu.jas.poly.GenPolynomial).S - nonzero GenPolynomial with invertible leading coefficient.
public GenPolynomial<C> divide(GenPolynomial<C> S)
divide in interface MonoidElem<GenPolynomial<C extends RingElem<C>>>PolyUtil.basePseudoRemainder(edu.jas.poly.GenPolynomial,edu.jas.poly.GenPolynomial).S - nonzero GenPolynomial with invertible leading coefficient.
public GenPolynomial<C> remainder(GenPolynomial<C> S)
remainder in interface MonoidElem<GenPolynomial<C extends RingElem<C>>>PolyUtil.basePseudoRemainder(edu.jas.poly.GenPolynomial,edu.jas.poly.GenPolynomial).S - nonzero GenPolynomial with invertible leading coefficient.
public GenPolynomial<C> gcd(GenPolynomial<C> S)
gcd in interface RingElem<GenPolynomial<C extends RingElem<C>>>S - GenPolynomial.
public GenPolynomial<C>[] egcd(GenPolynomial<C> S)
egcd in interface RingElem<GenPolynomial<C extends RingElem<C>>>S - GenPolynomial.
public GenPolynomial<C> inverse()
inverse in interface MonoidElem<GenPolynomial<C extends RingElem<C>>>public GenPolynomial<C> modInverse(GenPolynomial<C> m)
m - GenPolynomial.
public GenPolynomial<C> extend(GenPolynomialRing<C> pfac,
int j,
long k)
pfac - extended polynomial ring factory (by i variables).j - index of variable to be used for multiplication.k - exponent for x_j.
public java.util.Map<ExpVector,GenPolynomial<C>> contract(GenPolynomialRing<C> pfac)
pfac - contracted polynomial ring factory (by i variables).
public GenPolynomial<C> reverse(GenPolynomialRing<C> oring)
|
|||||||||
| PREV CLASS NEXT CLASS | FRAMES NO FRAMES | ||||||||
| SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD | ||||||||