edu.jas.poly
Class PolynomialList<C extends RingElem<C>>

java.lang.Object
  extended by edu.jas.poly.PolynomialList<C>
All Implemented Interfaces:
java.io.Serializable, java.lang.Cloneable, java.lang.Comparable<PolynomialList<C>>
Direct Known Subclasses:
OptimizedPolynomialList, OrderedPolynomialList

public class PolynomialList<C extends RingElem<C>>
extends java.lang.Object
implements java.lang.Comparable<PolynomialList<C>>, java.io.Serializable, java.lang.Cloneable

List of polynomials. Mainly for storage and printing / toString and conversions to other representations.

Author:
Heinz Kredel
See Also:
Serialized Form

Field Summary
 java.util.List<GenPolynomial<C>> list
          The data structure is a List of polynomials.
 GenPolynomialRing<C> ring
          The factory for the solvable polynomial ring.
 
Constructor Summary
PolynomialList(GenPolynomialRing<C> r, java.util.List<GenPolynomial<C>> l)
          Constructor.
PolynomialList(GenSolvablePolynomialRing<C> r, java.util.List<GenSolvablePolynomial<C>> l)
          Constructor.
 
Method Summary
static
<C extends RingElem<C>>
java.util.List<GenPolynomial<C>>
castToList(java.util.List<? extends GenPolynomial<C>> slist)
          Get list of extensions of polynomials as List of GenPolynomials.
static
<C extends RingElem<C>>
java.util.List<java.util.List<GenPolynomial<C>>>
castToMatrix(java.util.List<java.util.List<? extends GenPolynomial<C>>> slist)
          Get list of list of extensions of polynomials as List of List of GenPolynomials.
 java.util.List<GenSolvablePolynomial<C>> castToSolvableList()
          Get list as List of GenSolvablePolynomials.
static
<C extends RingElem<C>>
java.util.List<GenSolvablePolynomial<C>>
castToSolvableList(java.util.List<GenPolynomial<C>> list)
          Get list as List of GenSolvablePolynomials.
static
<C extends RingElem<C>>
java.util.List<java.util.List<GenSolvablePolynomial<C>>>
castToSolvableMatrix(java.util.List<java.util.List<GenPolynomial<C>>> list)
          Get list of list as List of List of GenSolvablePolynomials.
 PolynomialList<C> clone()
          Clone this.
 int compareTo(PolynomialList<C> L)
          Polynomial list comparison.
 boolean equals(java.lang.Object p)
          Comparison with any other object.
 ModuleList<C> getModuleList(int i)
          Get ModuleList from PolynomialList.
 int hashCode()
          Hash code for this polynomial list.
 boolean isONE()
          Test if list contains a ONE.
 boolean isZERO()
          Test if list contains only ZEROs.
 java.lang.String toScript()
          Get a scripting compatible string representation.
 java.lang.String toString()
          String representation of the polynomial list.
 
Methods inherited from class java.lang.Object
finalize, getClass, notify, notifyAll, wait, wait, wait
 

Field Detail

ring

public final GenPolynomialRing<C extends RingElem<C>> ring
The factory for the solvable polynomial ring.


list

public final java.util.List<GenPolynomial<C extends RingElem<C>>> list
The data structure is a List of polynomials.

Constructor Detail

PolynomialList

public PolynomialList(GenPolynomialRing<C> r,
                      java.util.List<GenPolynomial<C>> l)
Constructor.

Parameters:
r - polynomial ring factory.
l - list of polynomials.

PolynomialList

public PolynomialList(GenSolvablePolynomialRing<C> r,
                      java.util.List<GenSolvablePolynomial<C>> l)
Constructor.

Parameters:
r - solvable polynomial ring factory.
l - list of solvable polynomials.
Method Detail

clone

public PolynomialList<C> clone()
Clone this.

Overrides:
clone in class java.lang.Object
Returns:
a copy of this.

equals

public boolean equals(java.lang.Object p)
Comparison with any other object.

Overrides:
equals in class java.lang.Object
See Also:
Object.equals(java.lang.Object)

compareTo

public int compareTo(PolynomialList<C> L)
Polynomial list comparison.

Specified by:
compareTo in interface java.lang.Comparable<PolynomialList<C extends RingElem<C>>>
Parameters:
L - other PolynomialList.
Returns:
lexicographical comparison, sign of first different polynomials.

hashCode

public int hashCode()
Hash code for this polynomial list.

Overrides:
hashCode in class java.lang.Object
See Also:
Object.hashCode()

toString

public java.lang.String toString()
String representation of the polynomial list.

Overrides:
toString in class java.lang.Object
See Also:
Object.toString()

toScript

public java.lang.String toScript()
Get a scripting compatible string representation.

Returns:
script compatible representation for this polynomial list.

getModuleList

public ModuleList<C> getModuleList(int i)
Get ModuleList from PolynomialList. Extract module from polynomial ring.

Parameters:
i - number of variables to be contract form the polynomials.
Returns:
module list corresponding to this.
See Also:
ModuleList

castToSolvableList

public java.util.List<GenSolvablePolynomial<C>> castToSolvableList()
Get list as List of GenSolvablePolynomials. Required because no List casts allowed. Equivalent to cast (List<GenSolvablePolynomial<C>>) list.

Returns:
solvable polynomial list from this.

castToSolvableList

public static <C extends RingElem<C>> java.util.List<GenSolvablePolynomial<C>> castToSolvableList(java.util.List<GenPolynomial<C>> list)
Get list as List of GenSolvablePolynomials. Required because no List casts allowed. Equivalent to cast (List<GenSolvablePolynomial<C>>) list.

Parameters:
list - list of extensions of polynomials.
Returns:
solvable polynomial list from this.

castToSolvableMatrix

public static <C extends RingElem<C>> java.util.List<java.util.List<GenSolvablePolynomial<C>>> castToSolvableMatrix(java.util.List<java.util.List<GenPolynomial<C>>> list)
Get list of list as List of List of GenSolvablePolynomials. Required because no List casts allowed. Equivalent to cast (List<GenSolvablePolynomial<C>>) list.

Parameters:
list - list of extensions of polynomials.
Returns:
solvable polynomial list from this.

castToList

public static <C extends RingElem<C>> java.util.List<GenPolynomial<C>> castToList(java.util.List<? extends GenPolynomial<C>> slist)
Get list of extensions of polynomials as List of GenPolynomials. Required because no List casts allowed. Equivalent to cast (List<GenPolynomial<C>>) list. Mainly used for lists of GenSolvablePolynomials.

Parameters:
slist - list of extensions of polynomials.
Returns:
polynomial list from slist.

castToMatrix

public static <C extends RingElem<C>> java.util.List<java.util.List<GenPolynomial<C>>> castToMatrix(java.util.List<java.util.List<? extends GenPolynomial<C>>> slist)
Get list of list of extensions of polynomials as List of List of GenPolynomials. Required because no List casts allowed. Equivalent to cast (List<GenPolynomial<C>>) list. Mainly used for lists of GenSolvablePolynomials.

Parameters:
slist - list of extensions of polynomials.
Returns:
polynomial list from slist.

isZERO

public boolean isZERO()
Test if list contains only ZEROs.

Returns:
true, if this is the 0 list, else false

isONE

public boolean isONE()
Test if list contains a ONE.

Returns:
true, if this contains 1, else false