|
| | ResMonoidSparse (int mNumVars, const std::vector< int > &var_degrees, const std::vector< int > &weightvecs, const MonomialOrderingType moType) |
| | ~ResMonoidSparse () |
| int | n_vars () const |
| int | max_monomial_size () const |
| int | monomial_size (res_const_packed_monomial m) const |
| void | show () const |
| res_monomial_word | hash_value (res_const_packed_monomial m) const |
| void | copy (res_const_packed_monomial src, res_packed_monomial target) const |
| void | set_component (component_index component, res_packed_monomial m) const |
| component_index | get_component (res_const_packed_monomial m) const |
| void | setWeightAndHash (res_packed_monomial result) const |
| bool | from_expvector (res_const_ntuple_monomial e, component_index comp, res_packed_monomial result) const |
| int | skew_vars (const SkewMultiplication *skew, res_const_packed_monomial m, int *skewvars) const |
| int | skew_mult_sign (const SkewMultiplication *skew, res_const_packed_monomial m, res_const_packed_monomial n) const |
| bool | one (component_index comp, res_packed_monomial result) const |
| bool | to_expvector (res_const_packed_monomial m, res_ntuple_monomial result, component_index &result_comp) const |
| void | to_varpower_monomial (res_const_packed_monomial m, res_varpower_monomial result) const |
| void | from_varpower_monomial (res_const_varpower_monomial m, component_index comp, res_packed_monomial result) const |
| bool | is_equal (res_const_packed_monomial m, res_const_packed_monomial n) const |
| bool | monomial_part_is_equal (res_const_packed_monomial m, res_const_packed_monomial n) const |
| void | unchecked_mult (res_const_packed_monomial a, res_const_packed_monomial b, res_packed_monomial result) const |
| bool | divide (res_const_packed_monomial m, res_const_packed_monomial n, res_packed_monomial result) const |
| bool | mult (res_const_packed_monomial m, res_const_packed_monomial n, res_packed_monomial result) const |
| void | show (res_const_packed_monomial m) const |
| void | showAlpha (res_const_packed_monomial m) const |
| int | compare_grevlex (res_const_packed_monomial m, res_const_packed_monomial n) const |
| int | compare_schreyer (res_const_packed_monomial m, res_const_packed_monomial n, res_const_packed_monomial m0, res_const_packed_monomial n0, component_index tie1, component_index tie2) const |
| void | variable_as_vp (int v, res_varpower_monomial result) const |
| int | degree_of_vp (res_const_varpower_monomial a) const |
| void | quotient_as_vp (res_const_packed_monomial m, res_const_packed_monomial n, res_varpower_monomial result) const |
| void | dump (std::ostream &o, res_const_packed_monomial mon) |
Sparse / varpower-format ResMonoid implementation: monomials laid out as length-prefixed lists of (variable, exponent) pairs.
- Note
- AI-generated documentation. Verify against the source before relying on it.
Each encoded monomial has variable width: [length, hash, Computations,
w_1, ..., w_r, v_1, e_1, ..., v_d, e_d]. Encode / decode walk only the non-zero variables, so the representation wins when monomials are typically supported in a small subset of variables; the dense counterpart is ResMonoidDense.
Definition at line 87 of file res-moninfo-sparse.hpp.