Macaulay2 Engine
Loading...
Searching...
No Matches
MonomialOrderMatrix Class Reference

Matrix-form encoding of a MonomialOrdering used by the Groebner walk algorithm. More...

Public Member Functions

 MonomialOrderMatrix (const MonomialOrdering *mo)
 ~MonomialOrderMatrix ()
const long * part (int i) const
int compare (long *m1, long *m2) const
int minpart (long *m) const
long value (int i, long *monom) const
MonomialOrderingtoMonomialOrdering () const
int facet_compare (long *mon1, long *mon2)

Private Attributes

int nvars
long ** order

Detailed Description

Matrix-form encoding of a MonomialOrdering used by the Groebner walk algorithm.

Note
AI-generated documentation. Verify against the source before relying on it.

Every monomial ordering can be expressed as a matrix M so m_1 < m_2 iff the first non-zero entry of M (exp(m_2) - exp(m_1)) is positive. This class extracts that matrix from a MonomialOrdering* and stores each row in order[i]. value(i, m) is the inner product order[i] . exp(m), compare(m1, m2) walks the rows until one differs, and minpart(m) returns the first row that takes a non-zero value on m. Used internally by gb-walk.cpp to interpolate between monomial orderings during a GB walk.

Definition at line 35 of file gb-walk.cpp.


The documentation for this class was generated from the following file: