|
Macaulay2 Engine
|
Heuristic-weight evaluator for gbvectors, used during Groebner basis computation to drive the S-pair sugar strategy. More...
#include <gbweight.hpp>
Public Member Functions | |
| GBWeight (const FreeModule *F, M2_arrayint wts) | |
| ~GBWeight () | |
| M2_arrayint | get_weights () const |
| int | exponents_weight (const_exponents e, int comp) const |
| int | gbvector_term_weight (const gbvector *f) const |
| int | gbvector_weight (const gbvector *f) const |
| int | gbvector_weight (const gbvector *f, int &lead_term_weight) const |
| int | monomial_weight (const_monomial m, int comp) const |
Private Attributes | |
| M2_arrayint | wts_ |
| bool | use_component_degrees_ |
| const FreeModule * | F_ |
| int | nvars_ |
| GBRing * | R_ |
| size_t | exp_size |
| long * | Fdegs_ |
Additional Inherited Members | |
| Static Public Member Functions inherited from our_new_delete | |
| static void * | operator new (size_t size) |
| static void * | operator new[] (size_t size) |
| static void | operator delete (void *obj) |
| static void | operator delete[] (void *obj) |
| static void * | operator new (size_t size, void *existing_memory) |
| static void * | operator new[] (size_t size, void *existing_memory) |
| static void | operator delete (void *obj, void *existing_memory) |
| static void | operator delete[] (void *obj, void *existing_memory) |
Heuristic-weight evaluator for gbvectors, used during Groebner basis computation to drive the S-pair sugar strategy.
Caches a per-variable weight vector (wts_), an optional flag use_component_degrees_ that mixes in the target free module's component degrees, and a Fdegs_ table of per-component degree shifts pulled from F_. The weight of a gbvector is then the wts_-weighted sum of the leading monomial's exponents plus Fdegs_[component], computed without allocating a temporary exponent vector longer than exp_size.
Definition at line 64 of file gbweight.hpp.