polybori::groebner::GroebnerStrategy Class Reference

#include <groebner_alg.h>

List of all members.

Public Member Functions

bool containsOne () const
 GroebnerStrategy (const GroebnerStrategy &orig)
std::vector< PolynomialminimalizeAndTailReduce ()
std::vector< Polynomialminimalize ()
int addGenerator (const BoolePolynomial &p, bool is_impl=false, std::vector< int > *impl_v=NULL)
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)
 GroebnerStrategy ()
Polynomial nextSpoly ()
void addNonTrivialImplicationsDelayed (const PolyEntry &p)
void propagate (const PolyEntry &e)
void propagate_step (const PolyEntry &e, std::set< int > others)
void log (const char *c)
bool canRewrite (const Polynomial &p) 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 ()

Public Attributes

idx_type reducibleUntil
PairManager pairs
bool reduceByTailReduced
PolyEntryVector generators
MonomialSet leadingTerms
MonomialSet minimalLeadingTerms
MonomialSet leadingTerms11
MonomialSet leadingTerms00
MonomialSet llReductor
MonomialSet monomials
MonomialSet monomials_plus_one
boost::shared_ptr< CacheManagercache
BoolePolyRing r
bool enabledLog
unsigned int reductionSteps
int normalForms
int currentDegree
int chainCriterions
int variableChainCriterions
int easyProductCriterions
int extendedProductCriterions
int averageLength
bool optRedTail
bool optLazy
bool optLL
bool optDelayNonMinimals
bool optBrutalReductions
bool optExchange
bool optAllowRecursion
bool optRedTailDegGrowth
bool optStepBounded
bool optLinearAlgebraInLastBlock
bool optRedTailInLastBlock
lm2Index_map_type lm2Index
exp2Index_map_type exp2Index

Protected Member Functions

std::vector< PolynomialtreatVariablePairs (int s)
void treatNormalPairs (int s, MonomialSet intersecting_terms, MonomialSet other_terms, MonomialSet ext_prod_terms)
void addVariablePairs (int s)
std::vector< Polynomialadd4ImplDelayed (const Polynomial &p, const Exponent &lm_exp, const Exponent &used_variables, int s, bool include_orig)
std::vector< PolynomialaddHigherImplDelayedUsing4 (int s, const LiteralFactorization &literal_factors, bool include_orig)

Constructor & Destructor Documentation

polybori::groebner::GroebnerStrategy::GroebnerStrategy ( const GroebnerStrategy orig  ) 
polybori::groebner::GroebnerStrategy::GroebnerStrategy (  )  [inline]

References BooleEnv::ordering().


Member Function Documentation

std::vector<Polynomial> polybori::groebner::GroebnerStrategy::add4ImplDelayed ( const Polynomial p,
const Exponent lm_exp,
const Exponent used_variables,
int  s,
bool  include_orig 
) [protected]
void polybori::groebner::GroebnerStrategy::addAsYouWish ( const Polynomial p  ) 
int polybori::groebner::GroebnerStrategy::addGenerator ( const BoolePolynomial p,
bool  is_impl = false,
std::vector< int > *  impl_v = NULL 
)
void polybori::groebner::GroebnerStrategy::addGeneratorDelayed ( const BoolePolynomial p  ) 
void polybori::groebner::GroebnerStrategy::addGeneratorTrySplit ( const Polynomial p,
bool  is_minimal 
)
std::vector<Polynomial> polybori::groebner::GroebnerStrategy::addHigherImplDelayedUsing4 ( int  s,
const LiteralFactorization literal_factors,
bool  include_orig 
) [protected]
void polybori::groebner::GroebnerStrategy::addNonTrivialImplicationsDelayed ( const PolyEntry p  ) 
void polybori::groebner::GroebnerStrategy::addVariablePairs ( int  s  )  [protected]
std::vector<Polynomial> polybori::groebner::GroebnerStrategy::allGenerators (  ) 
bool polybori::groebner::GroebnerStrategy::canRewrite ( const Polynomial p  )  const [inline]

References is_rewriteable().

bool polybori::groebner::GroebnerStrategy::containsOne (  )  const [inline]
std::vector<Polynomial> polybori::groebner::GroebnerStrategy::faugereStepDense ( const std::vector< Polynomial > &   ) 
void polybori::groebner::GroebnerStrategy::llReduceAll (  ) 
void polybori::groebner::GroebnerStrategy::log ( const char *  c  )  [inline]
std::vector<Polynomial> polybori::groebner::GroebnerStrategy::minimalize (  ) 
std::vector<Polynomial> polybori::groebner::GroebnerStrategy::minimalizeAndTailReduce (  ) 
Polynomial polybori::groebner::GroebnerStrategy::nextSpoly (  )  [inline]
Polynomial polybori::groebner::GroebnerStrategy::nf ( Polynomial  p  )  const
std::vector<Polynomial> polybori::groebner::GroebnerStrategy::noroStep ( const std::vector< Polynomial > &   ) 
void polybori::groebner::GroebnerStrategy::propagate ( const PolyEntry e  ) 
void polybori::groebner::GroebnerStrategy::propagate_step ( const PolyEntry e,
std::set< int >  others 
)
Polynomial polybori::groebner::GroebnerStrategy::redTail ( const Polynomial p  ) 
int polybori::groebner::GroebnerStrategy::suggestPluginVariable (  ) 
void polybori::groebner::GroebnerStrategy::symmGB_F2 (  ) 
void polybori::groebner::GroebnerStrategy::treat_m_p_1_case ( const PolyEntry e  ) 
void polybori::groebner::GroebnerStrategy::treatNormalPairs ( int  s,
MonomialSet  intersecting_terms,
MonomialSet  other_terms,
MonomialSet  ext_prod_terms 
) [protected]
std::vector<Polynomial> polybori::groebner::GroebnerStrategy::treatVariablePairs ( int  s  )  [protected]
bool polybori::groebner::GroebnerStrategy::variableHasValue ( idx_type  i  ) 

Member Data Documentation


The documentation for this class was generated from the following file:
Generated on Wed May 5 21:36:26 2010 for PolyBoRi by  doxygen 1.6.3