 |
My Project
debian-1:4.1.1-p2+ds-4build2
|
Go to the source code of this file.
|
BOOLEAN | pqLength (poly p, poly q, int &lp, int &lq, const int min) |
|
static poly | _p_Mult_q_Bucket (poly p, const int lp, poly q, const int lq, const int copy, const ring r) |
|
static poly | _p_Mult_q_Normal_ZeroDiv (poly p, poly q, const int copy, const ring r) |
|
static poly | _p_Mult_q_Normal (poly p, poly q, const int copy, const ring r) |
|
poly | _p_Mult_q (poly p, poly q, const int copy, const ring r) |
| Returns: p * q, Destroys: if !copy then p, q Assumes: pLength(p) >= 2 pLength(q) >=2. More...
|
|
◆ _p_Mult_q()
poly _p_Mult_q |
( |
poly |
p, |
|
|
poly |
q, |
|
|
const int |
copy, |
|
|
const ring |
r |
|
) |
| |
Returns: p * q, Destroys: if !copy then p, q Assumes: pLength(p) >= 2 pLength(q) >=2.
Definition at line 273 of file p_Mult_q.cc.
◆ _p_Mult_q_Bucket()
static poly _p_Mult_q_Bucket |
( |
poly |
p, |
|
|
const int |
lp, |
|
|
poly |
q, |
|
|
const int |
lq, |
|
|
const int |
copy, |
|
|
const ring |
r |
|
) |
| |
|
static |
Definition at line 68 of file p_Mult_q.cc.
95 if (rn ==
NULL)
goto Smaller;
125 if (qq ==
NULL)
goto Finish;
◆ _p_Mult_q_Normal()
static poly _p_Mult_q_Normal |
( |
poly |
p, |
|
|
poly |
q, |
|
|
const int |
copy, |
|
|
const ring |
r |
|
) |
| |
|
static |
Definition at line 191 of file p_Mult_q.cc.
212 if (rn ==
NULL)
goto Smaller;
236 if (qq ==
NULL)
goto Finish;
◆ _p_Mult_q_Normal_ZeroDiv()
static poly _p_Mult_q_Normal_ZeroDiv |
( |
poly |
p, |
|
|
poly |
q, |
|
|
const int |
copy, |
|
|
const ring |
r |
|
) |
| |
|
static |
◆ pqLength()
BOOLEAN pqLength |
( |
poly |
p, |
|
|
poly |
q, |
|
|
int & |
lp, |
|
|
int & |
lq, |
|
|
const int |
min |
|
) |
| |
static poly _p_Mult_q_Normal(poly p, poly q, const int copy, const ring r)
void kBucketSetLm(kBucket_pt bucket, poly lm)
static poly p_LmFreeAndNext(poly p, ring)
static BOOLEAN Equal(number a, number b, const coeffs r)
static poly _p_Mult_q_Normal_ZeroDiv(poly p, poly q, const int copy, const ring r)
static BOOLEAN rField_is_Domain(const ring r)
#define MIN_LENGTH_BUCKET
static poly p_Plus_mm_Mult_qq(poly p, poly m, poly q, int &lp, int lq, const ring r)
BOOLEAN pqLength(poly p, poly q, int &lp, int &lq, const int min)
static FORCE_INLINE void n_Delete(number *p, const coeffs r)
delete 'p'
static poly pp_Mult_mm(poly p, poly m, const ring r)
static FORCE_INLINE BOOLEAN n_IsZero(number n, const coeffs r)
TRUE iff 'n' represents the zero element.
static unsigned pLength(poly a)
static bool Greater(mono_type m1, mono_type m2)
static FORCE_INLINE number n_Add(number a, number b, const coeffs r)
return the sum of 'a' and 'b', i.e., a+b
poly kBucketExtractLm(kBucket_pt bucket)
void kBucketDestroy(kBucket_pt *bucket_pt)
#define TEST_OPT_NOT_BUCKETS
void kBucketInit(kBucket_pt bucket, poly lm, int length)
static poly _p_Mult_q_Bucket(poly p, const int lp, poly q, const int lq, const int copy, const ring r)
static BOOLEAN rField_is_Ring(const ring r)
void kBucket_Plus_mm_Mult_pp(kBucket_pt bucket, poly m, poly p, int l)
Bpoly == Bpoly + m*p; where m is a monom Does not destroy p and m assume (l <= 0 || pLength(p) == l)
void kBucketClear(kBucket_pt bucket, poly *p, int *length)
poly singclap_pmult(poly f, poly g, const ring r)
static void p_LmFree(poly p, ring)
#define p_LmCmpAction(p, q, r, actionE, actionG, actionS)
static void p_Delete(poly *p, const ring r)
static int min(int a, int b)
#define MIN_LENGTH_FACTORY
kBucket_pt kBucketCreate(const ring bucket_ring)
Creation/Destruction of buckets.
CanonicalForm ndConvSingNFactoryN(number, BOOLEAN, const coeffs)
static number & pGetCoeff(poly p)
return an alias to the leading coefficient of p assumes that p != NULL NOTE: not copy
CFArray copy(const CFList &list)
write elements of list into an array
BOOLEAN pHaveCommonMonoms(poly p, poly q)
static FORCE_INLINE BOOLEAN nCoeff_is_Domain(const coeffs r)
returns TRUE, if r is a field or r has no zero divisors (i.e is a domain)