Package edu.jas.gb
Class GroebnerBaseSeqPairParallel<C extends RingElem<C>>
- java.lang.Object
-
- edu.jas.gb.GroebnerBaseAbstract<C>
-
- edu.jas.gb.GroebnerBaseSeqPairParallel<C>
-
- Type Parameters:
C
- coefficient type
- All Implemented Interfaces:
GroebnerBase<C>
,java.io.Serializable
public class GroebnerBaseSeqPairParallel<C extends RingElem<C>> extends GroebnerBaseAbstract<C>
Groebner Base parallel algorithm. Makes some effort to produce the same sequence of critical pairs as in the sequential version. However already reduced pairs are not rereduced if new polynomials appear. Implements a shared memory parallel version of Groebner bases. Slaves maintain pairlist.- Author:
- Heinz Kredel
- See Also:
- Serialized Form
-
-
Constructor Summary
Constructors Constructor Description GroebnerBaseSeqPairParallel()
Constructor.GroebnerBaseSeqPairParallel(int threads)
Constructor.GroebnerBaseSeqPairParallel(int threads, Reduction<C> red)
Constructor.GroebnerBaseSeqPairParallel(int threads, java.util.concurrent.ExecutorService pool)
Constructor.GroebnerBaseSeqPairParallel(int threads, java.util.concurrent.ExecutorService pool, Reduction<C> red)
Constructor.
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description int
cancel()
Cancel ExecutorService.java.util.List<GenPolynomial<C>>
GB(int modv, java.util.List<GenPolynomial<C>> F)
Parallel Groebner base using sequential pair order class.java.util.List<GenPolynomial<C>>
minimalGB(java.util.List<GenPolynomial<C>> Fp)
Minimal ordered groebner basis, parallel.void
terminate()
Cleanup and terminate ExecutorService.-
Methods inherited from class edu.jas.gb.GroebnerBaseAbstract
commonZeroTest, constructUnivariate, extGB, extGB, GB, GB, GB, isGB, isGB, isGB, isGB, isGB, isGB, isGBidem, isGBsimple, isMinimalGB, isMinReductionMatrix, isMinReductionMatrix, isReductionMatrix, isReductionMatrix, minimalExtendedGB, normalizeMatrix, normalizeZerosOnes, toString, univariateDegrees
-
-
-
-
Constructor Detail
-
GroebnerBaseSeqPairParallel
public GroebnerBaseSeqPairParallel()
Constructor.
-
GroebnerBaseSeqPairParallel
public GroebnerBaseSeqPairParallel(int threads)
Constructor.- Parameters:
threads
- number of threads to use.
-
GroebnerBaseSeqPairParallel
public GroebnerBaseSeqPairParallel(int threads, java.util.concurrent.ExecutorService pool)
Constructor.- Parameters:
threads
- number of threads to use.pool
- ExecutorService to use.
-
GroebnerBaseSeqPairParallel
public GroebnerBaseSeqPairParallel(int threads, Reduction<C> red)
Constructor.- Parameters:
threads
- number of threads to use.red
- parallelism aware reduction engine
-
GroebnerBaseSeqPairParallel
public GroebnerBaseSeqPairParallel(int threads, java.util.concurrent.ExecutorService pool, Reduction<C> red)
Constructor.- Parameters:
threads
- number of threads to use.pool
- ExecutorService to use.red
- parallelism aware reduction engine
-
-
Method Detail
-
terminate
public void terminate()
Cleanup and terminate ExecutorService.- Overrides:
terminate
in classGroebnerBaseAbstract<C extends RingElem<C>>
-
cancel
public int cancel()
Cancel ExecutorService.- Overrides:
cancel
in classGroebnerBaseAbstract<C extends RingElem<C>>
-
GB
public java.util.List<GenPolynomial<C>> GB(int modv, java.util.List<GenPolynomial<C>> F)
Parallel Groebner base using sequential pair order class. Slaves maintain pairlist.- Parameters:
modv
- number of module variables.F
- polynomial list.- Returns:
- GB(F) a Groebner base of F.
-
minimalGB
public java.util.List<GenPolynomial<C>> minimalGB(java.util.List<GenPolynomial<C>> Fp)
Minimal ordered groebner basis, parallel.- Specified by:
minimalGB
in interfaceGroebnerBase<C extends RingElem<C>>
- Overrides:
minimalGB
in classGroebnerBaseAbstract<C extends RingElem<C>>
- Parameters:
Fp
- a Groebner base.- Returns:
- minimalGB(F) a minimal Groebner base of Fp.
-
-