edu.jas.gb
Class OrderedDPairlist<C extends RingElem<C>>

java.lang.Object
  extended by edu.jas.gb.OrderedPairlist<C>
      extended by edu.jas.gb.OrderedDPairlist<C>
All Implemented Interfaces:
PairList<C>

public class OrderedDPairlist<C extends RingElem<C>>
extends OrderedPairlist<C>

Pair list management for d-Groebner bases. Implemented using GenPolynomial, TreeMap and BitSet.

Author:
Heinz Kredel

Field Summary
protected  DReduction<C> dreduction
           
 
Fields inherited from class edu.jas.gb.OrderedPairlist
moduleVars, oneInGB, P, pairlist, putCount, red, reduction, remCount, ring, useCriterion4
 
Constructor Summary
OrderedDPairlist(GenPolynomialRing<C> r)
          Constructor for OrderedDPairlist.
OrderedDPairlist(int m, GenPolynomialRing<C> r)
          Constructor for OrderedDPairlist.
 
Method Summary
 PairList<C> create(GenPolynomialRing<C> r)
          Create a new PairList.
 PairList<C> create(int m, GenPolynomialRing<C> r)
          Create a new PairList.
 boolean criterion3(int i, int j, ExpVector eij)
          GB criterium 3 with coefficient division test.
 Pair<C> removeNext()
          Remove the next required pair from the pairlist and reduction matrix.
 
Methods inherited from class edu.jas.gb.OrderedPairlist
getList, hasNext, put, putCount, putOne, putOne, remCount, toString
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait
 

Field Detail

dreduction

protected final DReduction<C extends RingElem<C>> dreduction
Constructor Detail

OrderedDPairlist

public OrderedDPairlist(GenPolynomialRing<C> r)
Constructor for OrderedDPairlist.

Parameters:
r - polynomial factory.

OrderedDPairlist

public OrderedDPairlist(int m,
                        GenPolynomialRing<C> r)
Constructor for OrderedDPairlist.

Parameters:
m - number of module variables.
r - polynomial factory.
Method Detail

create

public PairList<C> create(GenPolynomialRing<C> r)
Create a new PairList.

Specified by:
create in interface PairList<C extends RingElem<C>>
Overrides:
create in class OrderedPairlist<C extends RingElem<C>>
Parameters:
r - polynomial ring.

create

public PairList<C> create(int m,
                          GenPolynomialRing<C> r)
Create a new PairList.

Specified by:
create in interface PairList<C extends RingElem<C>>
Overrides:
create in class OrderedPairlist<C extends RingElem<C>>
Parameters:
m - number of module variables.
r - polynomial ring.

removeNext

public Pair<C> removeNext()
Remove the next required pair from the pairlist and reduction matrix. The results of the application of the criterions 3 and 4 to see if the S-polynomial is required are recorded in the Pair.

Specified by:
removeNext in interface PairList<C extends RingElem<C>>
Overrides:
removeNext in class OrderedPairlist<C extends RingElem<C>>
Returns:
the next pair if one exists, otherwise null.

criterion3

public boolean criterion3(int i,
                          int j,
                          ExpVector eij)
GB criterium 3 with coefficient division test.

Specified by:
criterion3 in interface PairList<C extends RingElem<C>>
Overrides:
criterion3 in class OrderedPairlist<C extends RingElem<C>>
Returns:
true if the S-polynomial(i,j) is required.