Macaulay2 Engine
Loading...
Searching...
No Matches

◆ compare()

int binomial_ring::compare ( monomial0 m,
monomial0 n ) const

Definition at line 223 of file gb-toric.cpp.

224{
225 int i;
226 if (have_weights)
227 {
228 i = nvars + 1;
229 if (m[i] < n[i]) return GT;
230 if (m[i] > n[i]) return LT;
231 i--;
232 }
233 else
234 i = nvars;
235 // check degree? For now...
236 if (m[i] < n[i]) return GT; // Remember: m[nvars] is NEGATIVE of degree
237 if (m[i] > n[i]) return LT;
238 if (revlex)
239 for (; i >= 0; i--)
240 {
241 if (m[i] > n[i]) return LT;
242 if (m[i] < n[i]) return GT;
243 }
244 else
245 for (; i >= 0; i--)
246 {
247 if (m[i] > n[i]) return GT;
248 if (m[i] < n[i]) return LT;
249 }
250 return EQ;
251}
bool have_weights
Definition gb-toric.hpp:96
const int EQ
Definition style.hpp:40
const int GT
Definition style.hpp:41
const int LT
Definition style.hpp:39

References EQ, GT, have_weights, LT, monomial, nvars, and revlex.