|
Macaulay2 Engine
|
BIBasis::MonomDRL — degree-reverse-lex specialisation of the BIBasis monomial type. More...
Go to the source code of this file.
Classes | |
| class | BIBasis::MonomDRL |
| Monom specialisation that orders monomials by degree, then by reverse-lex on the variable list (DegRevLex). More... | |
Namespaces | |
| namespace | BIBasis |
BIBasis::MonomDRL — degree-reverse-lex specialisation of the BIBasis monomial type.
Concrete Monom subclass whose Compare, operator<, and operator> compare by cached TotalDegree first and break ties with reverse-lex on the variable list — the default ordering for most Gröbner-basis work, since on typical inputs it produces the smallest output bases. The variable list is stored ascending and the order-specific traversal direction is baked into the comparison, while multiplication, division, and divisibility share the same linear-walk structure as the other orderings. Storage routes through a per-class static FastAllocator so prolongation churn stays slab-resident.
Selected at runtime by Launcher when the user requests DegRevLex; instantiated as BooleanInvolutiveBasis<MonomDRL> so the comparison kernel inlines into the reduction inner loop. Also implements IsPommaretDivisibleBy for the Janet driver.
Definition in file monomDRL.hpp.