104 #endif // P_BUCKET_SORT
void sBucketClearMerge(sBucket_pt bucket, poly *p, int *length)
void sBucketDestroy(sBucket_pt *bucket)
void sBucketDestroyMerge(sBucket_pt bucket, poly *p, int *length)
void sBucketDestroyAdd(sBucket_pt bucket, poly *p, int *length)
void sBucket_Merge_p(sBucket_pt bucket, poly p, int lp)
Merges p into Spoly: assumes Bpoly and p have no common monoms destroys p!
bool sIsEmpty(const sBucket_pt bucket)
Test whether bucket is empty!?
poly sBucketSortMerge(poly p, ring r)
Sorts p with bucketSort: assumes all monomials of p are different.
sBucket_pt sBucketCreate(ring r)
ring sBucketGetRing(const sBucket_pt bucket)
Returns bucket ring.
void sBucketDeleteAndDestroy(sBucket_pt *bucket_pt)
poly sBucketSortAdd(poly p, ring r)
Sorts p with bucketSort: p may have equal monomials.
void sBucket_Add_p(sBucket_pt bucket, poly p, int lp)
adds poly p to bucket destroys p!
sBucket_pt sBucketCopy(const sBucket_pt bucket)
Copy sBucket non-intrusive!!!
void sBucketClearAdd(sBucket_pt bucket, poly *p, int *length)