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

◆ compare_grevlex()

int ResMonoidSparse::compare_grevlex ( res_const_packed_monomial m,
res_const_packed_monomial n ) const
inline

Definition at line 427 of file res-moninfo-sparse.hpp.

429 {
431 for (int i = 3; i < mFirstVar; i++)
432 {
433 int cmp = m[i] - n[i];
434 if (cmp > 0) return 1;
435 if (cmp < 0) return -1;
436 }
437 const int* m1 = m + mFirstVar;
438 const int* n1 = n + mFirstVar;
439 const int* mend = m + *m;
440 const int* nend = n + *n;
441 while (*m1 == *n1)
442 {
443 m1++;
444 n1++;
445 if (m1 == mend)
446 {
447 if (n1 == nend)
448 break;
449 else
450 {
451 return -1;
452 }
453 }
454 else
455 {
456 if (n1 == nend) return 1;
457 ;
458 }
459 }
460 res_monomial_word cmp = m[2] - n[2];
461 if (cmp < 0) return 1;
462 if (cmp > 0) return -1;
463 return 0;
464 }
unsigned long ncalls_compare_grevlex
myword res_monomial_word

References mFirstVar, and ncalls_compare_grevlex.

Referenced by compare_schreyer().