643{
647 int nvars_so_far = 0;
648
649
650
651
652
654 for (i = 0; i < M->len; i++)
655 {
657 for (j = 0; j < mo->
len; j++)
659 }
660
662 next = 0;
663 for (i = 0; i < M->len; i++)
664 {
666 for (j = 0; j < mo->
len; j++)
667 {
668 mon_part
p = mo->
array[j];
671 nvars_so_far +=
p->nvars;
672 else
673 {
674
677 for (j = 0; j < nvars_so_far; j++) q->wts[j] = 0;
678 for (; j < q->nvars; j++) q->wts[j] =
p->wts[j - nvars_so_far];
680 }
682 }
683 }
685}
VALGRIND_MAKE_MEM_DEFINED & result(result)
#define getmemvectortype(S, len)
static struct mon_part_rec_ * mo_make(enum MonomialOrdering_type type, int nvars, const int *wts)
static bool is_good(mon_part p)
static MonomialOrdering * make_mon_order(int n)
const mpreal sum(const mpreal tab[], const unsigned long int n, int &status, mp_rnd_t mode=mpreal::get_default_rnd())
Front-end-side description of a monomial ordering as a list of mon_part blocks.