Package edu.jas.gb
Class GroebnerBaseF5zSigSeqIter<C extends RingElem<C>>
- java.lang.Object
-
- edu.jas.gb.GroebnerBaseAbstract<C>
-
- edu.jas.gb.GroebnerBaseSigSeqIter<C>
-
- edu.jas.gb.GroebnerBaseF5zSigSeqIter<C>
-
- Type Parameters:
C
- coefficient type
- All Implemented Interfaces:
GroebnerBase<C>
,java.io.Serializable
public class GroebnerBaseF5zSigSeqIter<C extends RingElem<C>> extends GroebnerBaseSigSeqIter<C>
Groebner Base F5z signature based sequential iterative algorithm. Implements Groebner bases.- See Also:
GBAlgorithmBuilder
,GBFactory
, Serialized Form
-
-
Field Summary
Fields Modifier and Type Field Description private static org.apache.logging.log4j.Logger
logger
-
Fields inherited from class edu.jas.gb.GroebnerBaseSigSeqIter
sred
-
Fields inherited from class edu.jas.gb.GroebnerBaseAbstract
blas, red, strategy
-
-
Constructor Summary
Constructors Constructor Description GroebnerBaseF5zSigSeqIter()
Constructor.GroebnerBaseF5zSigSeqIter(SigReductionSeq<C> red)
Constructor.
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description (package private) java.util.List<ExpVector>
initializeSyz(java.util.List<GenPolynomial<C>> F, java.util.List<SigPoly<C>> G)
Initializes syzygy list.(package private) java.util.List<SigPair<C>>
pruneP(java.util.List<SigPair<C>> P, java.util.List<ExpVector> syz)
Prune total pair list P.(package private) java.util.List<SigPair<C>>
pruneS(java.util.List<SigPair<C>> S, java.util.List<ExpVector> syz, java.util.List<SigPoly<C>> done, java.util.List<SigPoly<C>> G)
Prune pair list of degree d.(package private) SigPoly<C>
sigNormalform(java.util.List<GenPolynomial<C>> F, java.util.List<SigPoly<C>> G, SigPoly<C> A)
Top normalform.(package private) void
updateSyz(java.util.List<ExpVector> syz, SigPoly<C> r)
Update syzygy list.-
Methods inherited from class edu.jas.gb.GroebnerBaseSigSeqIter
GB, GB, newPair, newPair, SPolynomial, SPolynomial, SPolynomialFactors
-
Methods inherited from class edu.jas.gb.GroebnerBaseAbstract
cancel, commonZeroTest, constructUnivariate, criterion3, extGB, extGB, GB, GB, GB, isGB, isGB, isGB, isGB, isGB, isGB, isGBidem, isGBsimple, isMinimalGB, isMinReductionMatrix, isMinReductionMatrix, isReductionMatrix, isReductionMatrix, minimalExtendedGB, minimalGB, normalizeMatrix, normalizeZerosOnes, terminate, toString, univariateDegrees
-
-
-
-
Constructor Detail
-
GroebnerBaseF5zSigSeqIter
public GroebnerBaseF5zSigSeqIter()
Constructor.
-
GroebnerBaseF5zSigSeqIter
public GroebnerBaseF5zSigSeqIter(SigReductionSeq<C> red)
Constructor.- Parameters:
red
- Reduction engine
-
-
Method Detail
-
sigNormalform
SigPoly<C> sigNormalform(java.util.List<GenPolynomial<C>> F, java.util.List<SigPoly<C>> G, SigPoly<C> A)
Top normalform.- Overrides:
sigNormalform
in classGroebnerBaseSigSeqIter<C extends RingElem<C>>
- Parameters:
A
- polynomial.F
- polynomial list.G
- polynomial list.- Returns:
- nf(A) with respect to F and G.
-
pruneP
java.util.List<SigPair<C>> pruneP(java.util.List<SigPair<C>> P, java.util.List<ExpVector> syz)
Prune total pair list P.- Overrides:
pruneP
in classGroebnerBaseSigSeqIter<C extends RingElem<C>>
- Parameters:
P
- pair list.syz
- list of exponent vectors representing syzygies.- Returns:
- updated pair list. Note: stores polynomials not only indices.
-
pruneS
java.util.List<SigPair<C>> pruneS(java.util.List<SigPair<C>> S, java.util.List<ExpVector> syz, java.util.List<SigPoly<C>> done, java.util.List<SigPoly<C>> G)
Prune pair list of degree d.- Overrides:
pruneS
in classGroebnerBaseSigSeqIter<C extends RingElem<C>>
- Parameters:
S
- pair list.syz
- list of exponent vectors representing syzygies.done
- list of treated polynomials.G
- polynomial with signature list.- Returns:
- updated pair list.
-
initializeSyz
java.util.List<ExpVector> initializeSyz(java.util.List<GenPolynomial<C>> F, java.util.List<SigPoly<C>> G)
Initializes syzygy list.- Overrides:
initializeSyz
in classGroebnerBaseSigSeqIter<C extends RingElem<C>>
- Parameters:
F
- polynomial list.G
- polynomial with signature list.- Returns:
- list of exponent vectors representing syzygies.
-
updateSyz
void updateSyz(java.util.List<ExpVector> syz, SigPoly<C> r)
Update syzygy list.- Overrides:
updateSyz
in classGroebnerBaseSigSeqIter<C extends RingElem<C>>
- Parameters:
syz
- list of exponent vectors representing syzygies.r
- polynomial. Note: szy is modified to represent updated list of exponent vectors.
-
-