PolyBoRi
|
#include <groebner_alg.h>
Public Types | |
typedef std::priority_queue < Pair, std::vector< PairE > , PairECompare > | queue_type |
Public Member Functions | |
PairManager (GroebnerStrategy &strat) | |
void | appendHiddenGenerators (std::vector< Polynomial > &vec) |
void | introducePair (const Pair &p) |
Polynomial | nextSpoly (const PolyEntryVector &gen) |
bool | pairSetEmpty () const |
void | cleanTopByChainCriterion () |
Public Attributes | |
PairStatusSet | status |
GroebnerStrategy * | strat |
queue_type | queue |
Protected Member Functions | |
void | replacePair (int &i, int &j) |
typedef std::priority_queue<Pair,std::vector<PairE>, PairECompare> polybori::groebner::PairManager::queue_type |
polybori::groebner::PairManager::PairManager | ( | GroebnerStrategy & | strat | ) | [inline] |
void polybori::groebner::PairManager::appendHiddenGenerators | ( | std::vector< Polynomial > & | vec | ) |
void polybori::groebner::PairManager::cleanTopByChainCriterion | ( | ) |
References pairSetEmpty(), queue, polybori::groebner::IJ_PAIR, polybori::groebner::IJPairData::i, polybori::groebner::IJPairData::j, strat, polybori::groebner::GroebnerStrategy::pairs, status, polybori::groebner::PairStatusSet::hasTRep(), polybori::groebner::GroebnerStrategy::generators, polybori::groebner::PairStatusSet::setToHasTRep(), polybori::groebner::GroebnerStrategy::extendedProductCriterions, polybori::groebner::ReductionStrategy::leadingTerms, polybori::BooleExponent::divisors(), polybori::BooleSet::expBegin(), polybori::BooleSet::expEnd(), polybori::groebner::GroebnerStrategy::chainCriterions, polybori::groebner::VARIABLE_PAIR, UNLIKELY, polybori::groebner::VariablePairData::i, polybori::groebner::VariablePairData::v, polybori::groebner::GroebnerStrategy::log(), and polybori::groebner::GroebnerStrategy::variableChainCriterions.
void polybori::groebner::PairManager::introducePair | ( | const Pair & | p | ) |
References polybori::groebner::PairE::getType(), polybori::groebner::IJ_PAIR, and polybori::groebner::PairE::sugar.
Referenced by polybori::groebner::GroebnerStrategy::addVariablePairs(), polybori::groebner::GroebnerStrategy::treatNormalPairs(), and polybori::groebner::GroebnerStrategy::addGeneratorDelayed().
Polynomial polybori::groebner::PairManager::nextSpoly | ( | const PolyEntryVector & | gen | ) |
References UNLIKELY, polybori::groebner::IJ_PAIR, polybori::groebner::IJPairData::i, polybori::groebner::IJPairData::j, polybori::spoly(), polybori::groebner::VARIABLE_PAIR, polybori::groebner::VariablePairData::i, polybori::groebner::VariablePairData::v, polybori::BoolePolynomial::isZero(), and polybori::BoolePolynomial::lead().
bool polybori::groebner::PairManager::pairSetEmpty | ( | ) | const |
Referenced by cleanTopByChainCriterion().
void polybori::groebner::PairManager::replacePair | ( | int & | i, |
int & | j | ||
) | [protected] |
Referenced by polybori::groebner::GroebnerStrategy::GroebnerStrategy(), and cleanTopByChainCriterion().