PolyBoRi
Public Member Functions | Protected Member Functions
polybori::groebner::GroebnerStrategy Class Reference

This class defines GroebnerStrategy. More...

#include <GroebnerStrategy.h>

Inheritance diagram for polybori::groebner::GroebnerStrategy:
polybori::groebner::GroebnerOptions polybori::groebner::PairManagerFacade< GroebnerStrategy >

List of all members.

Public Member Functions

 GroebnerStrategy (const GroebnerStrategy &orig)
 copy constructor
 GroebnerStrategy (const BoolePolyRing &input_ring)
 Construct from a ring.
const BoolePolyRingring () const
bool containsOne () const
std::vector< PolynomialminimalizeAndTailReduce ()
std::vector< Polynomialminimalize ()
void addGenerator (const PolyEntry &entry)
void addGeneratorDelayed (const BoolePolynomial &p)
void addAsYouWish (const Polynomial &p)
void addGeneratorTrySplit (const Polynomial &p, bool is_minimal)
bool variableHasValue (idx_type i)
void llReduceAll ()
void treat_m_p_1_case (const PolyEntry &e)
Polynomial nextSpoly ()
void addNonTrivialImplicationsDelayed (const PolyEntry &p)
void propagate (const PolyEntry &e)
void log (const char *c) const
Polynomial redTail (const Polynomial &p)
std::vector< PolynomialnoroStep (const std::vector< Polynomial > &)
std::vector< PolynomialfaugereStepDense (const std::vector< Polynomial > &)
Polynomial nf (Polynomial p) const
void symmGB_F2 ()
int suggestPluginVariable ()
std::vector< PolynomialallGenerators ()
bool checkSingletonCriterion (int i, int j) const
bool checkPairCriteria (const Exponent &lm, int i, int j)
bool checkChainCriterion (const Exponent &lm, int i, int j)
bool checkExtendedProductCriterion (int i, int j)
bool checkVariableSingletonCriterion (int idx) const
bool checkVariableLeadOfFactorCriterion (int idx, int var) const
bool checkVariableChainCriterion (int idx)
bool checkVariableCriteria (int idx, int var)

Public Attributes

public available parameters
ReductionStrategy generators
boost::shared_ptr< CacheManagercache
unsigned int reductionSteps
int normalForms
int currentDegree
int averageLength
int chainCriterions
int variableChainCriterions
int easyProductCriterions
int extendedProductCriterions

Protected Member Functions

std::vector< PolynomialtreatVariablePairs (PolyEntryReference)
void normalPairsWithLast (const MonomialSet &)
void addVariablePairs (PolyEntryReference)
std::vector< Polynomialadd4ImplDelayed (PolyEntryReference)
std::vector< Polynomialadd4ImplDelayed (const Polynomial &p, const Exponent &lm_exp, const Exponent &used_variables) const
std::vector< PolynomialaddHigherImplDelayedUsing4 (PolyEntryReference)
std::vector< PolynomialaddHigherImplDelayedUsing4 (const LiteralFactorization &) const

Detailed Description

This class defines GroebnerStrategy.


Constructor & Destructor Documentation

copy constructor

Construct from a ring.


Member Function Documentation

std::vector< Polynomial > polybori::groebner::GroebnerStrategy::add4ImplDelayed ( const Polynomial p,
const Exponent lm_exp,
const Exponent used_variables 
) const [protected]

References add4ImplDelayed().

std::vector< Polynomial > polybori::groebner::GroebnerStrategy::addHigherImplDelayedUsing4 ( const LiteralFactorization literal_factors) const [protected]
bool polybori::groebner::GroebnerStrategy::checkChainCriterion ( const Exponent lm,
int  i,
int  j 
)
bool polybori::groebner::GroebnerStrategy::checkPairCriteria ( const Exponent lm,
int  i,
int  j 
) [inline]
bool polybori::groebner::GroebnerStrategy::checkSingletonCriterion ( int  i,
int  j 
) const [inline]
bool polybori::groebner::GroebnerStrategy::checkVariableCriteria ( int  idx,
int  var 
) [inline]

References PBORI_UNLIKELY.

bool polybori::groebner::GroebnerStrategy::checkVariableLeadOfFactorCriterion ( int  idx,
int  var 
) const [inline]
void polybori::groebner::GroebnerStrategy::log ( const char *  c) const [inline]
std::vector<Polynomial> polybori::groebner::GroebnerStrategy::noroStep ( const std::vector< Polynomial > &  )

Member Data Documentation

Referenced by checkChainCriterion().


The documentation for this class was generated from the following files: