Go to the source code of this file.
Definition at line 19 of file p_Minus_mm_Mult_qq__T.cc.
39 tneg = n_Neg__T(n_Copy__T(tm,
r->cf),
r->cf),
45 DECLARE_LENGTH(
const unsigned long length =
r->ExpL_Size);
46 DECLARE_ORDSGN(
const long* ordsgn =
r->ordsgn);
48 const unsigned long* m_e =
m->exp;
51 if (
p ==
NULL)
goto Finish;
58 p_MemSum__T(qm->exp, q->exp, m_e, length);
59 p_MemAddAdjust__T(qm,
r);
63 p_MemCmp__T(qm->exp,
p->exp, length, ordsgn,
goto Equal,
goto Greater,
goto Smaller );
67 #ifdef HAVE_ZERODIVISORS
68 if (!n_IsZero__T(tb,
r->cf)) {
71 if (!n_Equal__T(tc, tb,
r->cf))
74 tc = n_Sub__T(tc, tb,
r->cf);
86 #ifdef HAVE_ZERODIVISORS
101 #ifdef HAVE_ZERODIVISORS
103 if (!n_IsZero__T(tb,
r->cf))
108 #ifdef HAVE_ZERODIVISORS
128 if (
p ==
NULL)
goto Finish;
140 if (spNoether !=
NULL)
143 pNext(a) =
r->p_Procs->pp_Mult_mm_Noether(q,
m, spNoether, ll,
r);
148 pNext(a) =
r->p_Procs->pp_Mult_mm(q,
m,
r);
#define p_AllocBin(p, bin, r)
static BOOLEAN rField_is_Domain(const ring r)
static number & pGetCoeff(poly p)
return an alias to the leading coefficient of p assumes that p != NULL NOTE: not copy ...
static int pLength(poly a)
#define p_FreeBinAddr(p, r)
#define n_Delete__T(n, r)
static poly p_LmFreeAndNext(poly p, ring)
static bool Greater(mono_type m1, mono_type m2)