ExpVector(p1) -= ExpVector(p2)
| 1452 | } |
| 1453 | // ExpVector(p1) -= ExpVector(p2) |
| 1454 | static inline void p_ExpVectorSub(poly p1, poly p2, const ring r) |
| 1455 | { |
| 1456 | p_LmCheckPolyRing1(p1, r); |
| 1457 | p_LmCheckPolyRing1(p2, r); |
| 1458 | #if PDEBUG >= 1 |
| 1459 | for (int i=1; i<=r->N; i++) |
| 1460 | pAssume1(p_GetExp(p1, i, r) >= p_GetExp(p2, i, r)); |
| 1461 | pAssume1(p_GetComp(p1, r) == 0 || p_GetComp(p2, r) == 0 || |
| 1462 | p_GetComp(p1, r) == p_GetComp(p2, r)); |
| 1463 | #endif |
| 1464 | |
| 1465 | p_MemSub_LengthGeneral(p1->exp, p2->exp, r->ExpL_Size); |
| 1466 | p_MemSub_NegWeightAdjust(p1, r); |
| 1467 | } |
| 1468 | |
| 1469 | // ExpVector(p1) += ExpVector(p2) - ExpVector(p3) |
| 1470 | static inline void p_ExpVectorAddSub(poly p1, poly p2, poly p3, const ring r) |
no test coverage detected