PolyBoRi
|
typedef boost::minstd_rand polybori::groebner::base_generator_type |
typedef boost::variate_generator<base_generator_type&, distribution_type> polybori::groebner::bool_gen_type |
typedef int polybori::groebner::deg_type |
typedef boost::uniform_smallint polybori::groebner::distribution_type |
typedef polybori ::CacheManager<CCacheTypes::divisorsof> polybori::groebner::fixed_divisors_cache_type |
typedef long polybori::groebner::len_type |
typedef PairE polybori::groebner::Pair |
typedef boost::shared_ptr<PairData> polybori::groebner::pair_data_ptr |
typedef std::vector<PolyEntry> polybori::groebner::PolyEntryVector |
typedef long long polybori::groebner::wlen_type |
Polynomial polybori::groebner::add_up_exponents | ( | const std::vector< Exponent > & | vec | ) |
Referenced by random_set_using_generator().
Polynomial polybori::groebner::add_up_generic | ( | const std::vector< T > & | res_vec, |
Polynomial | init | ||
) |
Polynomial polybori::groebner::add_up_generic | ( | const std::vector< T > & | res_vec, |
int | start, | ||
int | end, | ||
Polynomial | init | ||
) |
References add_up_generic().
Polynomial polybori::groebner::add_up_monomials | ( | const std::vector< Monomial > & | vec | ) |
References add_up_generic().
Referenced by gen_random_subset().
Polynomial polybori::groebner::add_up_polynomials | ( | const std::vector< Polynomial > & | vec | ) |
References add_up_generic().
Referenced by red_tail_general(), and red_tail_generic().
void polybori::groebner::addPolynomialToReductor | ( | Polynomial & | p, |
MonomialSet & | m | ||
) |
References polybori::BooleExponent::begin(), polybori::BooleMonomial::begin(), polybori::BoolePolynomial::diagram(), polybori::CDDInterface< CuddLikeZDD >::emptiness(), polybori::BooleExponent::end(), polybori::BooleSet::expBegin(), polybori::BoolePolynomial::lead(), ll_red_nf(), polybori::BoolePolynomial::navigation(), and recursively_insert().
Referenced by polybori::groebner::GroebnerStrategy::addGenerator().
deg_type polybori::groebner::common_literal_factors_deg | ( | const LiteralFactorization & | a, |
const LiteralFactorization & | b | ||
) |
MonomialSet polybori::groebner::contained_deg2_cudd_style | ( | const MonomialSet & | m | ) |
References contained_variables_cudd_style(), polybori::CCuddNavigator::elseBranch(), polybori::CCuddNavigator::isConstant(), polybori::CCuddNavigator::isValid(), polybori::CDDInterface< CuddLikeZDD >::manager(), polybori::CDDInterface< CuddLikeZDD >::navigation(), and polybori::CCuddNavigator::thenBranch().
MonomialSet polybori::groebner::contained_variables_cudd_style | ( | const MonomialSet & | m | ) |
References polybori::CCuddNavigator::elseBranch(), polybori::CCuddNavigator::incrementElse(), polybori::CCuddNavigator::isConstant(), polybori::CCuddNavigator::isTerminated(), polybori::CCuddNavigator::isValid(), polybori::CDDInterface< CuddLikeZDD >::manager(), polybori::CDDInterface< CuddLikeZDD >::navigation(), and polybori::CCuddNavigator::thenBranch().
Referenced by contained_deg2_cudd_style().
Polynomial polybori::groebner::do_is_rewriteable | ( | const Polynomial & | p, |
const MonomialSet & | leading_terms | ||
) |
References polybori::BoolePolynomial::diagram(), polybori::CCuddNavigator::elseBranch(), polybori::CCuddNavigator::incrementElse(), polybori::CCuddNavigator::incrementThen(), polybori::CCuddNavigator::isConstant(), polybori::CCuddNavigator::isEmpty(), polybori::BoolePolynomial::isOne(), polybori::CCuddNavigator::isTerminated(), polybori::CCuddNavigator::isValid(), polybori::BoolePolynomial::isZero(), polybori::BoolePolynomial::navigation(), polybori::CDDInterface< CuddLikeZDD >::navigation(), polybori::CDDInterface< CuddLikeZDD >::ownsOne(), polybori::BoolePolynomial::ring(), and polybori::CCuddNavigator::thenBranch().
Referenced by is_rewriteable().
Polynomial polybori::groebner::do_plug_1 | ( | const Polynomial & | p, |
const MonomialSet & | m_plus_ones | ||
) |
References polybori::BoolePolynomial::diagram(), polybori::BooleSet::diff(), polybori::CCuddNavigator::elseBranch(), polybori::CCuddNavigator::incrementElse(), polybori::CCuddNavigator::isConstant(), mod_mon_set(), polybori::BoolePolynomial::navigation(), polybori::CDDInterface< CuddLikeZDD >::navigation(), and polybori::CCuddNavigator::thenBranch().
Referenced by plug_1_top().
std::vector< Polynomial > polybori::groebner::full_implication_gb | ( | const Polynomial & | p, |
CacheManager & | cache, | ||
GroebnerStrategy & | strat_param | ||
) |
References polybori::groebner::GroebnerStrategy::addGenerator(), polybori::groebner::GroebnerStrategy::cache, polybori::groebner::CacheManager::insert(), polybori::groebner::GroebnerStrategy::log(), polybori::groebner::CacheManager::lookup(), polybori::groebner::GroebnerStrategy::minimalizeAndTailReduce(), polybori::groebner::GroebnerStrategy::optAllowRecursion, and polybori::groebner::GroebnerStrategy::symmGB_F2().
Referenced by polybori::groebner::GroebnerStrategy::addGeneratorTrySplit().
MonomialSet polybori::groebner::gen_random_subset | ( | const std::vector< Monomial > & | vec, |
bool_gen_type & | bit_gen | ||
) |
References add_up_monomials(), polybori::BooleSet::begin(), and polybori::BoolePolynomial::diagram().
Referenced by random_interpolation().
void polybori::groebner::groebner | ( | GroebnerStrategy & | strat | ) |
MonomialSet polybori::groebner::include_divisors | ( | const MonomialSet & | m | ) |
Polynomial polybori::groebner::interpolate | ( | MonomialSet | to_zero, |
MonomialSet | to_one | ||
) |
References polybori::CDDInterface< CuddLikeZDD >::emptiness(), polybori::BooleSet::intersect(), polybori::CCuddNavigator::isValid(), polybori::CDDInterface< CuddLikeZDD >::manager(), polybori::CDDInterface< CuddLikeZDD >::navigation(), polybori::BooleSet::subset0(), and polybori::BooleSet::subset1().
Polynomial polybori::groebner::interpolate_smallest_lex | ( | MonomialSet | to_zero, |
MonomialSet | to_one | ||
) |
References polybori::BoolePolynomial::diagram(), polybori::BooleSet::diff(), polybori::CDDInterface< CuddLikeZDD >::emptiness(), polybori::BooleSet::intersect(), polybori::CCuddNavigator::isValid(), polybori::CDDInterface< CuddLikeZDD >::manager(), polybori::CDDInterface< CuddLikeZDD >::navigation(), polybori::BooleSet::subset0(), polybori::BooleSet::subset1(), polybori::BooleSet::unite(), and zeros().
Referenced by nf_lex_points(), and random_interpolation().
bool polybori::groebner::is_rewriteable | ( | const Polynomial & | p, |
const MonomialSet & | leading_terms | ||
) |
References do_is_rewriteable().
Referenced by polybori::groebner::GroebnerStrategy::canRewrite().
Polynomial polybori::groebner::ll_red_nf | ( | const Polynomial & | p, |
const BooleSet & | reductors | ||
) |
Polynomial polybori::groebner::ll_red_nf_generic | ( | const Polynomial & | p, |
const BooleSet::navigator | navi | ||
) |
Polynomial polybori::groebner::ll_red_nf_generic | ( | const Polynomial & | p, |
const BooleSet & | reductors | ||
) |
References polybori::BoolePolynomial::diagram(), polybori::CCuddNavigator::elseBranch(), polybori::CCuddNavigator::incrementThen(), polybori::CCuddNavigator::isConstant(), polybori::BoolePolynomial::isConstant(), polybori::CDDInterface< CuddLikeZDD >::navigation(), polybori::BoolePolynomial::navigation(), and polybori::CCuddNavigator::thenBranch().
Polynomial polybori::groebner::ll_red_nf_noredsb | ( | const Polynomial & | p, |
const BooleSet & | reductors | ||
) |
Polynomial polybori::groebner::map_every_x_to_x_plus_one | ( | const CacheMgr & | cache_mgr, |
MonomialSet::navigator | nav | ||
) |
Polynomial polybori::groebner::map_every_x_to_x_plus_one | ( | Polynomial | p | ) |
References polybori::BoolePolynomial::diagram(), and map_every_x_to_x_plus_one().
bool polybori::groebner::maps_to_one | ( | const std::pair< const polybori::groebner::idx_type, int > | v | ) |
bool polybori::groebner::maps_to_zero | ( | const std::pair< const polybori::groebner::idx_type, int > | v | ) |
MonomialSet polybori::groebner::minimal_elements | ( | const MonomialSet & | s | ) |
MonomialSet polybori::groebner::minimal_elements_cudd_style | ( | MonomialSet | m | ) |
MonomialSet polybori::groebner::minimal_elements_cudd_style_unary | ( | MonomialSet | m | ) |
References polybori::CCuddNavigator::elseBranch(), polybori::CDDInterface< CuddLikeZDD >::emptiness(), polybori::CDDInterface< CuddLikeZDD >::manager(), mod_mon_set(), polybori::CDDInterface< CuddLikeZDD >::navigation(), polybori::CDDInterface< CuddLikeZDD >::ownsOne(), and polybori::CCuddNavigator::thenBranch().
Referenced by minimal_elements().
MonomialSet polybori::groebner::minimal_elements_internal | ( | const MonomialSet & | s | ) |
References polybori::BooleSet::begin(), polybori::BooleSet::change(), polybori::BooleMonomial::diagram(), polybori::BooleSet::diff(), polybori::CDDInterface< CuddLikeZDD >::emptiness(), polybori::BoolePolynomial::isOne(), polybori::CDDInterface< CuddLikeZDD >::length(), polybori::CDDInterface< CuddLikeZDD >::navigation(), polybori::BooleMonomial::reducibleBy(), polybori::BooleSet::subset0(), polybori::BooleSet::subset1(), polybori::CDDInterface< CuddLikeZDD >::unateProduct(), and polybori::BooleSet::unite().
Referenced by minimal_elements().
MonomialSet polybori::groebner::minimal_elements_internal2 | ( | MonomialSet | s | ) |
References polybori::BooleSet::change(), polybori::BooleMonomial::diagram(), polybori::BooleSet::diff(), polybori::CDDInterface< CuddLikeZDD >::emptiness(), polybori::BoolePolynomial::hasConstantPart(), polybori::CCuddNavigator::incrementElse(), polybori::CCuddNavigator::isConstant(), polybori::BoolePolynomial::isOne(), polybori::CDDInterface< CuddLikeZDD >::length(), polybori::CDDInterface< CuddLikeZDD >::navigation(), polybori::BooleSet::ring(), polybori::BooleSet::subset0(), polybori::BooleSet::subset1(), polybori::CDDInterface< CuddLikeZDD >::unateProduct(), and polybori::BooleSet::unite().
std::vector<Exponent> polybori::groebner::minimal_elements_internal3 | ( | MonomialSet | s | ) |
MonomialSet polybori::groebner::mod_deg2_set | ( | const MonomialSet & | as, |
const MonomialSet & | vs | ||
) |
References polybori::CDDInterface< CuddLikeZDD >::manager(), and polybori::CDDInterface< CuddLikeZDD >::navigation().
Referenced by mod_deg2_set().
MonomialSet polybori::groebner::mod_deg2_set | ( | const CacheMgr & | cache_mgr, |
MonomialSet::navigator | a, | ||
MonomialSet::navigator | v | ||
) |
MonomialSet polybori::groebner::mod_mon_set | ( | const MonomialSet & | as, |
const MonomialSet & | vs | ||
) |
References polybori::CCuddNavigator::elseBranch(), polybori::CCuddNavigator::incrementElse(), polybori::CCuddNavigator::isConstant(), polybori::CDDInterface< CuddLikeZDD >::manager(), polybori::CDDInterface< CuddLikeZDD >::navigation(), polybori::CDDInterface< CuddLikeZDD >::ownsOne(), and polybori::CCuddNavigator::thenBranch().
Referenced by polybori::groebner::GroebnerStrategy::addGenerator(), do_plug_1(), minimal_elements_cudd_style_unary(), plug_1_top(), and red_tail_generic().
MonomialSet polybori::groebner::mod_var_set | ( | const CacheMgr & | cache_mgr, |
MonomialSet::navigator | a, | ||
MonomialSet::navigator | v | ||
) |
References polybori::CCuddNavigator::elseBranch(), polybori::CDDInterface< CuddLikeZDD >::emptiness(), polybori::CCuddNavigator::incrementElse(), polybori::CCuddNavigator::isConstant(), polybori::CCuddNavigator::isValid(), polybori::CDDInterface< CuddLikeZDD >::navigation(), and polybori::CCuddNavigator::thenBranch().
Referenced by mod_deg2_set(), and mod_var_set().
MonomialSet polybori::groebner::mod_var_set | ( | const MonomialSet & | as, |
const MonomialSet & | vs | ||
) |
Polynomial polybori::groebner::mult_fast_sim | ( | const std::vector< Polynomial > & | vec | ) |
References polybori::BoolePolynomial::ring().
Polynomial polybori::groebner::nf1 | ( | GroebnerStrategy & | strat, |
Polynomial | p | ||
) |
References polybori::groebner::GroebnerStrategy::generators, select1(), and polybori::spoly().
Polynomial polybori::groebner::nf2 | ( | GroebnerStrategy & | strat, |
Polynomial | p | ||
) |
Polynomial polybori::groebner::nf2_short | ( | GroebnerStrategy & | strat, |
Polynomial | p | ||
) |
Polynomial polybori::groebner::nf3 | ( | const GroebnerStrategy & | strat, |
Polynomial | p, | ||
Monomial | rest_lead | ||
) |
References polybori::BooleMonomial::exp(), polybori::groebner::GroebnerStrategy::generators, polybori::BoolePolynomial::isZero(), polybori::BoolePolynomial::lead(), polybori::groebner::GroebnerStrategy::optBrutalReductions, reduce_complete(), and select1().
Referenced by polybori::groebner::GroebnerStrategy::nf(), polybori::groebner::BlockOrderHelper::nf(), polybori::groebner::LexHelper::nf(), red_tail_general(), and red_tail_self_tuning().
Polynomial polybori::groebner::nf3_db | ( | GroebnerStrategy & | strat, |
Polynomial | p, | ||
int | deg_bound | ||
) |
Polynomial polybori::groebner::nf3_degree_order | ( | const GroebnerStrategy & | strat, |
Polynomial | p, | ||
Monomial | lead | ||
) |
References polybori::BoolePolynomial::boundedLead(), polybori::BooleExponent::deg(), polybori::BoolePolynomial::deg(), polybori::BooleMonomial::exp(), polybori::groebner::GroebnerStrategy::generators, polybori::BoolePolynomial::gradedPart(), polybori::BoolePolynomial::isZero(), polybori::BoolePolynomial::lead(), polybori::BoolePolynomial::lmDeg(), polybori::groebner::GroebnerStrategy::optBrutalReductions, reduce_complete(), and select1().
Referenced by polybori::groebner::GroebnerStrategy::nf(), polybori::groebner::DegOrderHelper::nf(), and red_tail_general().
Polynomial polybori::groebner::nf3_lexbuckets | ( | const GroebnerStrategy & | strat, |
Polynomial | p, | ||
Monomial | rest_lead | ||
) |
References polybori::BooleMonomial::exp(), polybori::groebner::GroebnerStrategy::generators, polybori::groebner::LexBucket::getFront(), polybori::groebner::LexBucket::isZero(), polybori::groebner::LexBucket::leadExp(), polybori::groebner::GroebnerStrategy::optBrutalReductions, polybori::BoolePolynomial::ring(), select1(), and polybori::groebner::LexBucket::value().
Polynomial polybori::groebner::nf3_no_deg_growth | ( | const GroebnerStrategy & | strat, |
Polynomial | p, | ||
Monomial | rest_lead | ||
) |
References polybori::BooleMonomial::exp(), polybori::groebner::GroebnerStrategy::generators, polybori::BoolePolynomial::isZero(), polybori::BoolePolynomial::lead(), polybori::groebner::GroebnerStrategy::optBrutalReductions, reduce_complete(), and select_no_deg_growth().
Referenced by polybori::groebner::LexHelper::nf().
Polynomial polybori::groebner::nf3_short | ( | const GroebnerStrategy & | strat, |
Polynomial | p | ||
) |
References polybori::groebner::GroebnerStrategy::generators, polybori::BoolePolynomial::lead(), reduce_complete(), and polybori::spoly().
Referenced by red_tail_self_tuning(), and red_tail_short().
Polynomial polybori::groebner::nf_delaying | ( | GroebnerStrategy & | strat, |
Polynomial | p | ||
) |
References polybori::groebner::GroebnerStrategy::addGeneratorDelayed(), polybori::BoolePolynomial::diagram(), polybori::BoolePolynomial::eliminationLength(), polybori::groebner::GroebnerStrategy::generators, polybori::BoolePolynomial::length(), polybori::groebner::GroebnerStrategy::log(), polybori::BoolePolynomial::navigation(), polybori::BoolePolynomial::nNodes(), select1(), and polybori::spoly().
Polynomial polybori::groebner::nf_delaying_exchanging | ( | GroebnerStrategy & | strat, |
Polynomial | p | ||
) |
References polybori::groebner::GroebnerStrategy::addGeneratorDelayed(), polybori::BoolePolynomial::diagram(), polybori::BoolePolynomial::eliminationLength(), polybori::groebner::GroebnerStrategy::generators, polybori::BoolePolynomial::lead(), polybori::BoolePolynomial::length(), polybori::groebner::GroebnerStrategy::log(), polybori::BoolePolynomial::navigation(), polybori::BoolePolynomial::nNodes(), select1(), and polybori::spoly().
MonomialSet polybori::groebner::nf_lex_points | ( | const Polynomial & | f, |
const MonomialSet & | p | ||
) |
References polybori::BooleSet::diff(), interpolate_smallest_lex(), and zeros().
Referenced by variety_lex_groebner_basis().
value_type polybori::groebner::p2code | ( | Polynomial | p, |
const std::vector< char > & | ring_2_0123, | ||
int | max_vars | ||
) |
std::vector< Polynomial > polybori::groebner::parallel_reduce | ( | std::vector< Polynomial > | inp, |
GroebnerStrategy & | strat, | ||
int | average_steps, | ||
double | delay_f | ||
) |
References polybori::groebner::GroebnerStrategy::addGeneratorDelayed(), polybori::BooleMonomial::begin(), polybori::BooleMonomial::deg(), polybori::groebner::GroebnerStrategy::faugereStepDense(), polybori::groebner::GroebnerStrategy::generators, polybori::groebner::PolynomialSugar::getSugar(), polybori::groebner::GroebnerStrategy::log(), polybori::groebner::GroebnerStrategy::optExchange, polybori::groebner::GroebnerStrategy::optLazy, polybori::groebner::GroebnerStrategy::optLinearAlgebraInLastBlock, polybori::groebner::GroebnerStrategy::optStepBounded, and select1().
Referenced by polybori::groebner::GroebnerStrategy::symmGB_F2().
Polynomial polybori::groebner::plug_1 | ( | const Polynomial & | p, |
const MonomialSet & | m_plus_ones | ||
) |
References plug_1_top().
Polynomial polybori::groebner::plug_1_top | ( | const Polynomial & | p, |
const MonomialSet & | m_plus_ones | ||
) |
References polybori::BoolePolynomial::diagram(), do_plug_1(), and mod_mon_set().
Referenced by plug_1().
bool polybori::groebner::polynomial_in_one_block | ( | const Polynomial | p | ) |
References polybori::BooleMonomial::begin(), polybori::BooleMonomial::end(), polybori::BoolePolynomial::isConstant(), polybori::BooleEnv::ordering(), and polybori::BoolePolynomial::usedVariables().
Referenced by polybori::groebner::GroebnerStrategy::addGeneratorTrySplit(), and polybori::groebner::GroebnerStrategy::treatVariablePairs().
MonomialSet polybori::groebner::random_interpolation | ( | const MonomialSet & | as_set, |
const std::vector< Monomial > & | as_vector, | ||
bool_gen_type & | bit_gen | ||
) |
References polybori::BooleSet::diff(), gen_random_subset(), and interpolate_smallest_lex().
Referenced by variety_lex_leading_terms().
MonomialSet polybori::groebner::random_set | ( | const Monomial & | variables, |
unsigned int | len | ||
) |
References random_set_using_generator().
MonomialSet polybori::groebner::random_set_using_generator | ( | const Monomial & | variables, |
unsigned int | len, | ||
bool_gen_type & | bit_gen | ||
) |
References add_up_exponents(), polybori::BooleExponent::begin(), polybori::BooleExponent::end(), polybori::BooleMonomial::exp(), and polybori::BooleExponent::push_back().
Referenced by random_set().
MonomialSet polybori::groebner::recursively_insert | ( | const MgrType & | mgr, |
MonomialSet::navigator | p, | ||
idx_type | idx, | ||
MonomialSet::navigator | m | ||
) |
References polybori::CCuddNavigator::elseBranch(), and polybori::CCuddNavigator::thenBranch().
Referenced by addPolynomialToReductor(), and recursively_insert().
MonomialSet polybori::groebner::recursively_insert | ( | MonomialSet::navigator | p, |
idx_type | idx, | ||
MonomialSet | mset | ||
) |
References polybori::CDDInterface< CuddLikeZDD >::manager(), polybori::CDDInterface< CuddLikeZDD >::navigation(), and recursively_insert().
Polynomial polybori::groebner::red_tail | ( | const GroebnerStrategy & | strat, |
Polynomial | p | ||
) |
References red_tail_general().
Referenced by polybori::groebner::GroebnerStrategy::addAsYouWish(), polybori::groebner::GroebnerStrategy::addGenerator(), polybori::groebner::GroebnerStrategy::addGeneratorTrySplit(), polybori::groebner::GroebnerStrategy::minimalizeAndTailReduce(), polybori::groebner::GroebnerStrategy::nf(), red_tail_in_last_block(), and polybori::groebner::GroebnerStrategy::redTail().
Polynomial polybori::groebner::red_tail_general | ( | const GroebnerStrategy & | strat, |
Polynomial | p | ||
) |
References add_up_generic(), add_up_polynomials(), polybori::BoolePolynomial::deg(), polybori::BooleMonomial::diagram(), polybori::BoolePolynomial::diagram(), polybori::BoolePolynomial::isZero(), polybori::BoolePolynomial::lead(), polybori::BoolePolynomial::length(), nf3(), nf3_degree_order(), polybori::BoolePolynomial::orderedBegin(), polybori::BoolePolynomial::orderedEnd(), and polybori::BoolePolynomial::ring().
Referenced by red_tail().
Polynomial polybori::groebner::red_tail_generic | ( | const GroebnerStrategy & | strat, |
Polynomial | p | ||
) |
References add_up_polynomials(), polybori::groebner::GroebnerStrategy::canRewrite(), polybori::BoolePolynomial::deg(), polybori::BooleMonomial::diagram(), polybori::BoolePolynomial::diagram(), polybori::BoolePolynomial::isZero(), polybori::BoolePolynomial::lead(), polybori::BoolePolynomial::length(), ll_red_nf(), polybori::groebner::GroebnerStrategy::llReductor, polybori::groebner::GroebnerStrategy::minimalLeadingTerms, mod_mon_set(), polybori::groebner::GroebnerStrategy::monomials, polybori::groebner::GroebnerStrategy::optLL, and polybori::BoolePolynomial::ring().
Polynomial polybori::groebner::red_tail_in_last_block | ( | const GroebnerStrategy & | strat, |
Polynomial | p | ||
) |
References polybori::CCuddNavigator::incrementElse(), polybori::CCuddNavigator::isConstant(), polybori::BoolePolynomial::isZero(), polybori::BoolePolynomial::navigation(), polybori::groebner::GroebnerStrategy::nf(), red_tail(), and polybori::BooleEnv::ring().
Referenced by polybori::groebner::GroebnerStrategy::addAsYouWish().
Polynomial polybori::groebner::red_tail_self_tuning | ( | const GroebnerStrategy & | strat, |
Polynomial | p | ||
) |
Polynomial polybori::groebner::red_tail_short | ( | const GroebnerStrategy & | strat, |
Polynomial | p | ||
) |
References polybori::BoolePolynomial::isZero(), polybori::BoolePolynomial::lead(), and nf3_short().
Polynomial polybori::groebner::reduce_by_binom | ( | const Polynomial & | p, |
const Polynomial & | binom | ||
) |
Polynomial polybori::groebner::reduce_by_monom | ( | const Polynomial & | p, |
const Monomial & | m | ||
) |
References polybori::BooleMonomial::begin(), polybori::BooleMonomial::deg(), polybori::BooleMonomial::diagram(), polybori::BooleMonomial::end(), polybori::BoolePolynomial::ring(), polybori::BooleSet::subset1(), and polybori::CDDInterface< CuddLikeZDD >::unateProductAssign().
Referenced by nf2(), and nf2_short().
Polynomial polybori::groebner::reduce_complete | ( | const Polynomial & | p, |
const Polynomial & | reductor | ||
) |
References polybori::BoolePolynomial::begin(), polybori::BoolePolynomial::end(), polybori::BooleMonomial::GCD(), polybori::BoolePolynomial::lead(), polybori::BooleSet::subset1(), and polybori::CDDInterface< CuddLikeZDD >::unateProduct().
Referenced by nf2(), nf2_short(), nf3(), nf3_db(), nf3_degree_order(), nf3_no_deg_growth(), and nf3_short().
Polynomial polybori::groebner::reduce_complete | ( | const Polynomial & | p, |
const PolyEntry & | reductor, | ||
wlen_type & | len | ||
) |
References polybori::BooleExponent::begin(), polybori::BoolePolynomial::diagram(), polybori::BooleExponent::end(), polybori::CDDInterface< CuddLikeZDD >::length(), polybori::groebner::PolyEntry::length, polybori::groebner::PolyEntry::lmExp, polybori::groebner::PolyEntry::p, reduce_by_binom(), and polybori::BooleSet::subset1().
int polybori::groebner::select1 | ( | const GroebnerStrategy & | strat, |
const Monomial & | m | ||
) |
int polybori::groebner::select1 | ( | const GroebnerStrategy & | strat, |
const Polynomial & | p | ||
) |
References polybori::BooleSet::divisorsOf(), polybori::CDDInterface< CuddLikeZDD >::emptiness(), polybori::groebner::GroebnerStrategy::exp2Index, polybori::BooleSet::expBegin(), polybori::BooleSet::expEnd(), polybori::BoolePolynomial::lead(), and polybori::groebner::GroebnerStrategy::leadingTerms.
Referenced by nf1(), nf2(), nf3(), nf3_db(), nf3_degree_order(), nf3_lexbuckets(), nf_delaying(), nf_delaying_exchanging(), parallel_reduce(), and polybori::groebner::SlimgbReduction< variant >::reduce().
int polybori::groebner::select_no_deg_growth | ( | const GroebnerStrategy & | strat, |
const Monomial & | m | ||
) |
References polybori::BooleSet::divisorsOf(), polybori::CDDInterface< CuddLikeZDD >::emptiness(), polybori::groebner::GroebnerStrategy::exp2Index, polybori::BooleSet::expBegin(), polybori::BooleSet::expEnd(), polybori::groebner::GroebnerStrategy::generators, polybori::groebner::GroebnerStrategy::leadingTerms, and wlen_literal_exceptioned().
Referenced by nf3_no_deg_growth().
void polybori::groebner::set_up_translation_vectors | ( | std::vector< idx_type1 > & | ring_2_0123, |
std::vector< idx_type2 > & | back_2_ring, | ||
const Exponent & | used_variables | ||
) |
References polybori::BooleExponent::begin(), and polybori::BooleExponent::end().
Referenced by polybori::groebner::GroebnerStrategy::add4ImplDelayed(), polybori::groebner::GroebnerStrategy::addHigherImplDelayedUsing4(), polybori::groebner::CacheManager::insert(), and polybori::groebner::CacheManager::lookup().
bool polybori::groebner::should_propagate | ( | const PolyEntry & | e | ) |
int polybori::groebner::sum_size | ( | const MonomialSet & | s1, |
const MonomialSet & | s2 | ||
) |
Polynomial polybori::groebner::translate_indices | ( | const Polynomial & | p, |
const std::vector< idx_type > & | table | ||
) |
References polybori::BooleSet::change(), polybori::dd_backward_transform(), polybori::BoolePolynomial::diagram(), polybori::BoolePolynomial::isConstant(), polybori::BoolePolynomial::navigation(), and polybori::BoolePolynomial::ring().
Referenced by polybori::groebner::CacheManager::insert(), and polybori::groebner::CacheManager::lookup().
std::vector< Polynomial > polybori::groebner::variety_lex_groebner_basis | ( | const MonomialSet & | points, |
const Monomial & | variables | ||
) |
MonomialSet polybori::groebner::variety_lex_leading_terms | ( | const MonomialSet & | points, |
const Monomial & | variables | ||
) |
References polybori::BooleSet::begin(), polybori::BooleSet::diff(), polybori::BooleMonomial::divisors(), polybori::BooleSet::end(), include_divisors(), polybori::CDDInterface< CuddLikeZDD >::manager(), polybori::BooleSet::minimalElements(), random_interpolation(), polybori::CDDInterface< CuddLikeZDD >::size(), and polybori::BooleSet::unite().
Referenced by variety_lex_groebner_basis().
Polynomial polybori::groebner::without_prior_part | ( | Polynomial | p, |
idx_type | tail_start | ||
) |
wlen_type polybori::groebner::wlen_literal_exceptioned | ( | const PolyEntry & | e | ) | [inline] |
MonomialSet polybori::groebner::zeros | ( | Polynomial | p, |
MonomialSet | candidates | ||
) |
References polybori::BoolePolynomial::diagram(), polybori::BooleSet::diff(), polybori::CDDInterface< CuddLikeZDD >::emptiness(), polybori::BoolePolynomial::hasConstantPart(), polybori::CCuddNavigator::incrementElse(), polybori::BoolePolynomial::isOne(), polybori::BoolePolynomial::isZero(), polybori::CDDInterface< CuddLikeZDD >::manager(), polybori::CDDInterface< CuddLikeZDD >::navigation(), polybori::BooleSet::subset0(), polybori::BooleSet::subset1(), and polybori::BooleSet::Xor().
Referenced by interpolate_smallest_lex(), and nf_lex_points().
const unsigned short polybori::groebner::dlex4var_data[][7] |
const unsigned short polybori::groebner::dp_asc4var_data[][7] |
const int polybori::groebner::FARE_WORSE = 10 |
const unsigned short polybori::groebner::lp4var_data[][7] |
const int polybori::groebner::SLIMGB_SIMPLEST = 0 |