97{
99 const Monoid *M =
R->getMonoid();
101 ring_elem c =
R->getCoefficients()->negate(f->
coeff);
102 if (
R->is_skew_commutative())
103 {
106
109 if (
R->getSkewInfo().mult_sign(EXP1, EXP2) < 0)
110 R->getCoefficients()->negate_to(c);
111 }
112 ring_elem g1 = const_cast<Nterm *>(g);
113 g1 =
R->mult_by_term(g1, c, MONOM1);
114 ring_elem f1 = f;
115 R->internal_add_to(f1, g1);
116 f = f1;
117}
exponents::Exponents exponents_t
void to_expvector(const_monomial m, exponents_t result_exp) const
void divide(const_monomial m, const_monomial n, monomial result) const
#define ALLOCATE_EXPONENTS(byte_len)
#define ALLOCATE_MONOMIAL(byte_len)