54template <
typename Key>
83 std::vector<mi_node *>
mis;
103 std::vector<Key>& result_k)
const;
130 Key &result_k)
const;
134 Key &result_k)
const;
140 std::vector<Key> & result_k)
const;
144 std::vector<Key> & result_k)
const;
164 std::vector<int> & result_minimals);
void reset_expvector(const_varpower_monomial m)
mi_node * next(mi_node *p) const
void update_expvector(int topvar, const_varpower_monomial m)
void text_out(buffer &o) const
bool find_one_divisor_packed(const MonomialInfo *M, const_packed_monomial m, Key &result_k) const
int debug_check(mi_node *p, const mi_node *up) const
void do_node(mi_node *p, int indent, int disp) const
~F4MonomialLookupTableT()
bool insert_vp(long comp, const_varpower_monomial m, Key &k)
void do_tree(mi_node *p, int depth, int indent, int disp) const
mi_node * new_mi_node(varpower_word v, varpower_word e, Key k)
bool find_one_divisor1(mi_node *mi, const_ntuple_monomial exp, Key &result_k) const
mi_node * new_mi_node(varpower_word v, varpower_word e, mi_node *d)
void debug_out(int disp=1) const
F4MonomialLookupTableT(int nvars)
void insert_minimal_vp(long comp, const_varpower_monomial m, Key k)
void find_all_divisors_vp(long comp, const_varpower_monomial m, std::vector< Key > &result_k) const
void delete_mi_node(mi_node *p)
std::vector< mi_node * > mis
mi_node * prev(mi_node *p) const
void find_all_divisors1(mi_node *mi, const_ntuple_monomial exp, std::vector< Key > &result_k) const
void find_all_divisors_packed(const MonomialInfo *M, const_packed_monomial m, std::vector< Key > &result_k) const
void insert1(mi_node *&p, const_varpower_monomial m, Key k)
bool find_one_divisor_vp(long comp, const_varpower_monomial m, Key &result_k) const
Per-ring monomial layout / encoding helper used by F4GB.
void minimalize_varpower_monomials(const std::vector< varpower_monomial > &elems, std::vector< int > &result_minimals)
const monomial_word * const_packed_monomial
MonomialInfo — F4's packed_monomial encoding plus operations.
ntuple_monomials::Exponent ntuple_word
const ntuple_word * const_ntuple_monomial
F4's dense int64_t exponent-vector specialisation of ExponentVector (legacy).
void insert_to_left(mi_node *q)
union F4MonomialLookupTableT::mi_node::@275361037347002122310232014171022201144232123300 val
enum F4MonomialLookupTableT::mi_node::@106101245262356146223070047151024177106047314172 tag
const varpower_word * const_varpower_monomial
varpower_monomials::Exponent varpower_word
F4's (variable, exponent) sparse-monomial ExponentList specialisation (legacy).