Package edu.jas.poly
Class PolynomialList<C extends RingElem<C>>
- java.lang.Object
-
- edu.jas.poly.PolynomialList<C>
-
- All Implemented Interfaces:
java.io.Serializable
,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
List of polynomials. Mainly for storage and printing / toString and conversions to other representations.- Author:
- Heinz Kredel
- See Also:
- Serialized Form
-
-
Field Summary
Fields Modifier and Type Field Description 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
Constructors Constructor Description PolynomialList(GenPolynomialRing<C> r, java.util.List<GenPolynomial<C>> l)
Constructor.PolynomialList(GenSolvablePolynomialRing<C> r, java.util.List<GenSolvablePolynomial<C>> l)
Constructor.
-
Method Summary
All Methods Static Methods Instance Methods Concrete Methods Modifier and Type Method Description 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.int
compareTo(PolynomialList<C> L)
Polynomial list comparison.PolynomialList<C>
copy()
Copy this.PolynomialList<C>
deHomogenize()
Dehomogenize.java.util.SortedSet<ExpVector>
deltaExpVectors()
Union of the delta of exponent vectors of all polynomials.java.util.SortedSet<ExpVector>
deltaExpVectors(java.util.List<ExpVector> mark)
Union of the delta of exponent vectors of all polynomials.boolean
equals(java.lang.Object p)
Comparison with any other object.java.util.List<GenPolynomial<C>>
getList()
Get list.ModuleList<C>
getModuleList(int i)
Get ModuleList from PolynomialList.java.util.List<GenSolvablePolynomial<C>>
getSolvableList()
Get list as List of GenSolvablePolynomials.GenSolvablePolynomialRing<C>
getSolvableRing()
Get ring as GenSolvablePolynomialRing.int
hashCode()
Hash code for this polynomial list.PolynomialList<C>
homogenize()
Make homogeneous.boolean
isEmpty()
Test if list is empty.boolean
isHomogeneous()
Test if all polynomials are homogeneous.boolean
isONE()
Test if list contains a ONE.boolean
isZERO()
Test if list contains only ZEROs.java.util.List<GenPolynomial<C>>
leadingWeightPolynomials()
Leading weight polynomials.java.lang.String
toScript()
Get a scripting compatible string representation.java.lang.String
toString()
String representation of the polynomial list.
-
-
-
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
-
copy
public PolynomialList<C> copy()
Copy this.- Returns:
- a copy of this.
-
equals
public boolean equals(java.lang.Object p)
Comparison with any other object.- Overrides:
equals
in classjava.lang.Object
- See Also:
Object.equals(java.lang.Object)
-
compareTo
public int compareTo(PolynomialList<C> L)
Polynomial list comparison.
-
hashCode
public int hashCode()
Hash code for this polynomial list.- Overrides:
hashCode
in classjava.lang.Object
- See Also:
Object.hashCode()
-
isEmpty
public boolean isEmpty()
Test if list is empty.- Returns:
- true if this is empty, else false.
-
toString
public java.lang.String toString()
String representation of the polynomial list.- Overrides:
toString
in classjava.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
-
getList
public java.util.List<GenPolynomial<C>> getList()
Get list.- Returns:
- list from this.
-
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.
-
getSolvableList
public java.util.List<GenSolvablePolynomial<C>> getSolvableList()
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.
-
getSolvableRing
public GenSolvablePolynomialRing<C> getSolvableRing()
Get ring as GenSolvablePolynomialRing.- Returns:
- solvable polynomial ring 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
-
homogenize
public PolynomialList<C> homogenize()
Make homogeneous.- Returns:
- polynomial list of homogeneous polynomials.
-
deHomogenize
public PolynomialList<C> deHomogenize()
Dehomogenize.- Returns:
- polynomial list of de-homogenized polynomials.
-
isHomogeneous
public boolean isHomogeneous()
Test if all polynomials are homogeneous.- Returns:
- true, if all polynomials are homogeneous, else false
-
deltaExpVectors
public java.util.SortedSet<ExpVector> deltaExpVectors()
Union of the delta of exponent vectors of all polynomials.- Returns:
- list of u-v, where u = lt() and v != u in p in list.
-
deltaExpVectors
public java.util.SortedSet<ExpVector> deltaExpVectors(java.util.List<ExpVector> mark)
Union of the delta of exponent vectors of all polynomials.- Parameters:
mark
- list of marked exp vectors of polynomials.- Returns:
- list of u-v, where u in mark and v != u in p.expVectors in list.
-
leadingWeightPolynomials
public java.util.List<GenPolynomial<C>> leadingWeightPolynomials()
Leading weight polynomials.- Returns:
- list of polynomials with terms of maximal weight degree.
-
-