Package edu.jas.poly
Class ExpVectorShort
- java.lang.Object
-
- edu.jas.poly.ExpVector
-
- edu.jas.poly.ExpVectorShort
-
- All Implemented Interfaces:
AbelianGroupElem<ExpVector>,Element<ExpVector>,java.io.Serializable,java.lang.Comparable<ExpVector>
public final class ExpVectorShort extends ExpVector
ExpVectorShort implements exponent vectors for polynomials using arrays of short as storage unit. This class is used by ExpVector internally, there is no need to use this class directly.- Author:
- Heinz Kredel
- See Also:
ExpVector, Serialized Form
-
-
Nested Class Summary
-
Nested classes/interfaces inherited from class edu.jas.poly.ExpVector
ExpVector.StorUnit
-
-
Constructor Summary
Constructors Modifier Constructor Description ExpVectorShort(int n)Constructor for ExpVector.ExpVectorShort(int n, int i, long e)Constructor for ExpVector.ExpVectorShort(int n, int i, short e)Constructor for ExpVector.ExpVectorShort(long[] v)Constructor for ExpVector.protectedExpVectorShort(short[] v)Internal constructor for ExpVector.ExpVectorShort(java.lang.String s)Constructor for ExpVector.
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description ExpVectorShortabs()ExpVector absolute value.ExpVectorShortcombine(ExpVector V)Combine with ExpVector.intcompareTo(ExpVector V)ExpVector compareTo.ExpVectorShortcontract(int i, int len)Contract variables.ExpVectorShortcopy()Clone this.int[]dependencyOnVariables()ExpVector dependency on variables.intdependentVariables()ExpVector dependent variables.booleanequals(java.lang.Object B)Comparison with any other object.ExpVectorShortextend(int i, int j, long e)Extend variables.ExpVectorShortextendLower(int i, int j, long e)Extend lower variables.ExpVectorShortgcd(ExpVector V)ExpVector greatest common divisor.long[]getVal()Get the exponent vector.longgetVal(int i)Get the exponent at position i.inthashCode()hashCode for this exponent vector.intinvGradCompareTo(ExpVector V)ExpVector inverse graded lexicographical compareTo.intinvGradCompareTo(ExpVector V, int begin, int end)ExpVector inverse graded lexicographical compareTo.intinvLexCompareTo(ExpVector V)ExpVector inverse lexicographical compareTo.intinvLexCompareTo(ExpVector V, int begin, int end)ExpVector inverse lexicographical compareTo.intinvTdegCompareTo(ExpVector V)ExpVector inverse total degree lexicographical compareTo.intinvWeightCompareTo(long[][] w, ExpVector V)ExpVector inverse weighted lexicographical compareTo.intinvWeightCompareTo(long[][] w, ExpVector V, int begin, int end)ExpVector inverse weighted lexicographical compareTo.ExpVectorShortlcm(ExpVector V)ExpVector least common multiple.intlength()Get the length of this exponent vector.longmaxDeg()ExpVector maximal degree.longminDeg()ExpVector minimal degree.booleanmultipleOf(ExpVector V)ExpVector multiple test.ExpVectorShortnegate()ExpVector negate.ExpVectorShortpermutation(java.util.List<java.lang.Integer> P)Permutation of exponent vector.ExpVectorShortreverse()Reverse variables.ExpVectorShortreverse(int j)Reverse lower j variables.intrevInvGradCompareTo(ExpVector V)ExpVector reverse inverse graded compareTo.intrevInvGradCompareTo(ExpVector V, int begin, int end)ExpVector reverse inverse graded compareTo.intrevInvLexCompareTo(ExpVector V)ExpVector reverse inverse lexicographical compareTo.intrevInvLexCompareTo(ExpVector V, int begin, int end)ExpVector reverse inverse lexicographical compareTo.intrevLexInvTdegCompareTo(ExpVector V)ExpVector reverse lexicographical inverse total degree compareTo.ExpVectorShortscalarMultiply(long s)ExpVector multiply by scalar.protected longsetVal(int i, long e)Set the exponent at position i to e.protected shortsetVal(int i, short e)Set the exponent at position i to e.intsignum()ExpVector signum.ExpVectorShortsubst(int i, long d)ExpVector substitution.ExpVectorShortsubst(int i, short d)ExpVector substitution.ExpVectorShortsubtract(ExpVector V)ExpVector subtract.ExpVectorShortsum(ExpVector V)ExpVector summation.java.lang.StringtoString()Get the string representation.longtotalDeg()ExpVector total degree.longweightDeg(long[] w)ExpVector weighted degree.longweightDeg(long[][] w)ExpVector weighted degree.-
Methods inherited from class edu.jas.poly.ExpVector
bitLength, create, create, create, create, create, degree, divides, EVABS, evaluate, EVDIF, EVDOV, EVGCD, EVIGLC, EVIGLC, EVILCP, EVILCP, EVITDEGLC, EVIWLC, EVIWLC, EVLCM, EVMDEG, EVMINDEG, EVMT, EVNEG, EVRAND, EVRAND, EVRIGLC, EVRIGLC, EVRILCP, EVRILCP, EVRLITDEGC, EVSIGN, EVSU, EVSUM, EVTDEG, EVWDEG, factory, indexVar, indexVarName, isFinite, isZERO, random, random, stdVars, stdVars, STDVARS, STDVARS, toScript, toScript, toScriptFactory, toString, varIndex, varsToString
-
-
-
-
Field Detail
-
maxShort
public static final long maxShort
Largest short.- See Also:
- Constant Field Values
-
minShort
public static final long minShort
Smallest short.- See Also:
- Constant Field Values
-
-
Constructor Detail
-
ExpVectorShort
public ExpVectorShort(int n)
Constructor for ExpVector.- Parameters:
n- length of exponent vector.
-
ExpVectorShort
public ExpVectorShort(int n, int i, short e)
Constructor for ExpVector. Sets exponent i to e.- Parameters:
n- length of exponent vector.i- index of exponent to be set.e- exponent to be set.
-
ExpVectorShort
public ExpVectorShort(int n, int i, long e)
Constructor for ExpVector. Sets exponent i to e.- Parameters:
n- length of exponent vector.i- index of exponent to be set.e- exponent to be set.
-
ExpVectorShort
protected ExpVectorShort(short[] v)
Internal constructor for ExpVector. Sets val.- Parameters:
v- internal representation array.
-
ExpVectorShort
public ExpVectorShort(long[] v)
Constructor for ExpVector. Sets val, converts from long array.- Parameters:
v- long representation array.
-
ExpVectorShort
public ExpVectorShort(java.lang.String s) throws java.lang.NumberFormatException
Constructor for ExpVector. Converts a String representation to an ExpVector. Accepted format = (1,2,3,4,5,6,7).- Parameters:
s- String representation.- Throws:
java.lang.NumberFormatException
-
-
Method Detail
-
copy
public ExpVectorShort copy()
Clone this.
-
getVal
public long[] getVal()
Get the exponent vector.
-
getVal
public long getVal(int i)
Get the exponent at position i.
-
setVal
protected long setVal(int i, long e)
Set the exponent at position i to e.
-
setVal
protected short setVal(int i, short e)
Set the exponent at position i to e.- Parameters:
i-e-- Returns:
- old val[i].
-
length
public int length()
Get the length of this exponent vector.
-
extend
public ExpVectorShort extend(int i, int j, long e)
Extend variables. Used e.g. in module embedding. Extend this by i elements and set val[j] to e.
-
extendLower
public ExpVectorShort extendLower(int i, int j, long e)
Extend lower variables. Extend this by i lower elements and set val[j] to e.- Specified by:
extendLowerin classExpVector- Parameters:
i- number of elements to extend.j- index of element to be set.e- new exponent for val[j].- Returns:
- extended exponent vector.
-
contract
public ExpVectorShort contract(int i, int len)
Contract variables. Used e.g. in module embedding. Contract this to len elements.
-
reverse
public ExpVectorShort reverse()
Reverse variables. Used e.g. in opposite rings.
-
reverse
public ExpVectorShort reverse(int j)
Reverse lower j variables. Used e.g. in opposite rings. Reverses the first j-1 variables, the rest is unchanged.
-
combine
public ExpVectorShort combine(ExpVector V)
Combine with ExpVector. Combine this with the other ExpVector V.
-
permutation
public ExpVectorShort permutation(java.util.List<java.lang.Integer> P)
Permutation of exponent vector.- Specified by:
permutationin classExpVector- Parameters:
P- permutation.- Returns:
- P(e).
-
toString
public java.lang.String toString()
Get the string representation.
-
equals
public boolean equals(java.lang.Object B)
Comparison with any other object.
-
hashCode
public int hashCode()
hashCode for this exponent vector.
-
abs
public ExpVectorShort abs()
ExpVector absolute value.- Specified by:
absin interfaceAbelianGroupElem<ExpVector>- Specified by:
absin classExpVector- Returns:
- abs(this).
-
negate
public ExpVectorShort negate()
ExpVector negate.- Specified by:
negatein interfaceAbelianGroupElem<ExpVector>- Specified by:
negatein classExpVector- Returns:
- -this.
-
sum
public ExpVectorShort sum(ExpVector V)
ExpVector summation.- Specified by:
sumin interfaceAbelianGroupElem<ExpVector>- Specified by:
sumin classExpVector- Parameters:
V-- Returns:
- this+V.
-
subtract
public ExpVectorShort subtract(ExpVector V)
ExpVector subtract. Result may have negative entries.- Specified by:
subtractin interfaceAbelianGroupElem<ExpVector>- Specified by:
subtractin classExpVector- Parameters:
V-- Returns:
- this-V.
-
scalarMultiply
public ExpVectorShort scalarMultiply(long s)
ExpVector multiply by scalar.- Specified by:
scalarMultiplyin classExpVector- Parameters:
s- scalar- Returns:
- s*this.
-
subst
public ExpVectorShort subst(int i, short d)
ExpVector substitution. Clone and set exponent to d at position i.- Parameters:
i- position.d- new exponent.- Returns:
- substituted ExpVector.
-
subst
public ExpVectorShort subst(int i, long d)
ExpVector substitution. Clone and set exponent to d at position i.
-
signum
public int signum()
ExpVector signum.- Specified by:
signumin interfaceAbelianGroupElem<ExpVector>- Specified by:
signumin classExpVector- Returns:
- 0 if this is zero, -1 if some entry is negative, 1 if no entry is negative and at least one entry is positive.
-
totalDeg
public long totalDeg()
ExpVector total degree.
-
maxDeg
public long maxDeg()
ExpVector maximal degree.
-
minDeg
public long minDeg()
ExpVector minimal degree.
-
weightDeg
public long weightDeg(long[][] w)
ExpVector weighted degree.
-
weightDeg
public long weightDeg(long[] w)
ExpVector weighted degree.
-
lcm
public ExpVectorShort lcm(ExpVector V)
ExpVector least common multiple.
-
gcd
public ExpVectorShort gcd(ExpVector V)
ExpVector greatest common divisor.
-
dependentVariables
public int dependentVariables()
ExpVector dependent variables.- Specified by:
dependentVariablesin classExpVector- Returns:
- number of indices where val has positive exponents.
-
dependencyOnVariables
public int[] dependencyOnVariables()
ExpVector dependency on variables.- Specified by:
dependencyOnVariablesin classExpVector- Returns:
- array of indices where val has positive exponents.
-
multipleOf
public boolean multipleOf(ExpVector V)
ExpVector multiple test. Test if this is component wise greater or equal to V.- Specified by:
multipleOfin classExpVector- Parameters:
V-- Returns:
- true if this is a multiple of V, else false.
-
invLexCompareTo
public int invLexCompareTo(ExpVector V)
ExpVector inverse lexicographical compareTo.- Specified by:
invLexCompareToin classExpVector- Parameters:
V-- Returns:
- 0 if U == V, -1 if U < V, 1 if U > V.
-
invLexCompareTo
public int invLexCompareTo(ExpVector V, int begin, int end)
ExpVector inverse lexicographical compareTo.- Specified by:
invLexCompareToin classExpVector- Parameters:
V-begin-end-- Returns:
- 0 if U == V, -1 if U < V, 1 if U > V.
-
invGradCompareTo
public int invGradCompareTo(ExpVector V)
ExpVector inverse graded lexicographical compareTo.- Specified by:
invGradCompareToin classExpVector- Parameters:
V-- Returns:
- 0 if U == V, -1 if U < V, 1 if U > V.
-
invGradCompareTo
public int invGradCompareTo(ExpVector V, int begin, int end)
ExpVector inverse graded lexicographical compareTo.- Specified by:
invGradCompareToin classExpVector- Parameters:
V-begin-end-- Returns:
- 0 if U == V, -1 if U < V, 1 if U > V.
-
revInvLexCompareTo
public int revInvLexCompareTo(ExpVector V)
ExpVector reverse inverse lexicographical compareTo.- Specified by:
revInvLexCompareToin classExpVector- Parameters:
V-- Returns:
- 0 if U == V, -1 if U < V, 1 if U > V.
-
revInvLexCompareTo
public int revInvLexCompareTo(ExpVector V, int begin, int end)
ExpVector reverse inverse lexicographical compareTo.- Specified by:
revInvLexCompareToin classExpVector- Parameters:
V-begin-end-- Returns:
- 0 if U == V, -1 if U < V, 1 if U > V.
-
revInvGradCompareTo
public int revInvGradCompareTo(ExpVector V)
ExpVector reverse inverse graded compareTo.- Specified by:
revInvGradCompareToin classExpVector- Parameters:
V-- Returns:
- 0 if U == V, -1 if U < V, 1 if U > V.
-
revInvGradCompareTo
public int revInvGradCompareTo(ExpVector V, int begin, int end)
ExpVector reverse inverse graded compareTo.- Specified by:
revInvGradCompareToin classExpVector- Parameters:
V-begin-end-- Returns:
- 0 if U == V, -1 if U < V, 1 if U > V.
-
invTdegCompareTo
public int invTdegCompareTo(ExpVector V)
ExpVector inverse total degree lexicographical compareTo.- Specified by:
invTdegCompareToin classExpVector- Parameters:
V-- Returns:
- 0 if U == V, -1 if U < V, 1 if U > V.
-
revLexInvTdegCompareTo
public int revLexInvTdegCompareTo(ExpVector V)
ExpVector reverse lexicographical inverse total degree compareTo.- Specified by:
revLexInvTdegCompareToin classExpVector- Parameters:
V-- Returns:
- 0 if U == V, -1 if U < V, 1 if U > V.
-
invWeightCompareTo
public int invWeightCompareTo(long[][] w, ExpVector V)
ExpVector inverse weighted lexicographical compareTo.- Specified by:
invWeightCompareToin classExpVector- Parameters:
w- weight array.V-- Returns:
- 0 if U == V, -1 if U < V, 1 if U > V.
-
invWeightCompareTo
public int invWeightCompareTo(long[][] w, ExpVector V, int begin, int end)
ExpVector inverse weighted lexicographical compareTo.- Specified by:
invWeightCompareToin classExpVector- Parameters:
w- weight array.V-begin-end-- Returns:
- 0 if U == V, -1 if U < V, 1 if U > V.
-
-