Go to the source code of this file.
§ MULTIPLY_BUCKET
#define MULTIPLY_BUCKET |
( |
|
B, |
|
|
|
I |
|
) |
| |
§ p_kBucketSetLm__T()
Definition at line 27 of file p_kBucketSetLm__T.cc.
32 assume(bucket->buckets[0] ==
NULL && bucket->buckets_length[0] == 0);
33 DECLARE_LENGTH(
const unsigned long length = r->ExpL_Size);
34 DECLARE_ORDSGN(
const long* ordsgn = r->ordsgn);
40 for (
int i = 1;
i<=bucket->buckets_used;
i++)
42 if (bucket->buckets[
i] !=
NULL)
45 p = bucket->buckets[
j];
53 p_MemCmp__T(bucket->buckets[
i]->exp, p->exp, length, ordsgn,
goto Equal,
goto Greater,
goto Continue);
60 pIter(bucket->buckets[j]);
62 (bucket->buckets_length[
j])--;
76 n_InpAdd__T(tn,
pGetCoeff(bucket->buckets[
i]), r->cf);
79 p = bucket->buckets[
i];
83 (bucket->buckets_length[
i])--;
89 p = bucket->buckets[
j];
90 if (j > 0 && n_IsZero__T(
pGetCoeff(p), r->cf))
93 pIter(bucket->buckets[j]);
95 (bucket->buckets_length[
j])--;
107 lt = bucket->buckets[
j];
108 bucket->buckets[
j] =
pNext(lt);
109 bucket->buckets_length[
j]--;
111 bucket->buckets[0] = lt;
112 bucket->buckets_length[0] = 1;
114 kBucketAdjustBucketsUsed(bucket);
static BOOLEAN Equal(number a, number b, const coeffs r)
static number & pGetCoeff(poly p)
return an alias to the leading coefficient of p assumes that p != NULL NOTE: not copy ...
#define p_FreeBinAddr(p, r)
#define MULTIPLY_BUCKET(B, I)
#define n_Delete__T(n, r)
static bool Greater(mono_type m1, mono_type m2)