Package edu.jas.gb
Class GroebnerBaseParIter<C extends RingElem<C>>
- java.lang.Object
-
- edu.jas.gb.GroebnerBaseAbstract<C>
-
- edu.jas.gb.GroebnerBaseParIter<C>
-
- Type Parameters:
C
- coefficient type
- All Implemented Interfaces:
GroebnerBase<C>
,java.io.Serializable
public class GroebnerBaseParIter<C extends RingElem<C>> extends GroebnerBaseAbstract<C>
Groebner Base parallel iterative algorithm. Implements a shared memory parallel version of Groebner bases.- See Also:
GBAlgorithmBuilder
,GBFactory
, Serialized Form
-
-
Field Summary
Fields Modifier and Type Field Description private static boolean
debug
private static org.apache.logging.log4j.Logger
logger
protected java.util.concurrent.ExecutorService
pool
Pool of threads to use.protected int
threads
Number of threads to use.-
Fields inherited from class edu.jas.gb.GroebnerBaseAbstract
blas, red, strategy
-
-
Constructor Summary
Constructors Constructor Description GroebnerBaseParIter()
Constructor.GroebnerBaseParIter(int threads)
Constructor.GroebnerBaseParIter(int threads, PairList<C> pl)
Constructor.GroebnerBaseParIter(int threads, Reduction<C> red)
Constructor.GroebnerBaseParIter(int threads, Reduction<C> red, PairList<C> pl)
Constructor.GroebnerBaseParIter(int threads, java.util.concurrent.ExecutorService pool)
Constructor.GroebnerBaseParIter(int threads, java.util.concurrent.ExecutorService pool, Reduction<C> red)
Constructor.GroebnerBaseParIter(int threads, java.util.concurrent.ExecutorService pool, Reduction<C> red, PairList<C> pl)
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 iterative Groebner base using pairlist class.java.util.List<GenPolynomial<C>>
GB(int modv, java.util.List<GenPolynomial<C>> G, GenPolynomial<C> f)
Groebner base using pairlist 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, criterion3, 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
-
GroebnerBaseParIter
public GroebnerBaseParIter()
Constructor.
-
GroebnerBaseParIter
public GroebnerBaseParIter(int threads)
Constructor.- Parameters:
threads
- number of threads to use.
-
GroebnerBaseParIter
public GroebnerBaseParIter(int threads, Reduction<C> red)
Constructor.- Parameters:
threads
- number of threads to use.red
- parallelism aware reduction engine
-
GroebnerBaseParIter
public GroebnerBaseParIter(int threads, PairList<C> pl)
Constructor.- Parameters:
threads
- number of threads to use.pl
- pair selection strategy
-
GroebnerBaseParIter
public GroebnerBaseParIter(int threads, java.util.concurrent.ExecutorService pool)
Constructor.- Parameters:
threads
- number of threads to use.pool
- ExecutorService to use.
-
GroebnerBaseParIter
public GroebnerBaseParIter(int threads, java.util.concurrent.ExecutorService pool, Reduction<C> red)
Constructor.- Parameters:
pool
- ExecutorService to use.red
- Reduction engine
-
GroebnerBaseParIter
public GroebnerBaseParIter(int threads, Reduction<C> red, PairList<C> pl)
Constructor.- Parameters:
red
- Reduction enginepl
- pair selection strategy
-
-
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 iterative Groebner base using pairlist class.- Parameters:
modv
- number of module variables.F
- polynomial list.- Returns:
- GB(F) a Groebner base of F.
-
GB
public java.util.List<GenPolynomial<C>> GB(int modv, java.util.List<GenPolynomial<C>> G, GenPolynomial<C> f)
Groebner base using pairlist class.- Parameters:
modv
- module variable number.G
- polynomial list of a Groebner base.f
- polynomial.- Returns:
- GB(G,f) a Groebner base of G+(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.
-
-