version 1.1, 2018/09/19 05:45:07 |
version 1.2, 2018/09/28 08:20:28 |
Line 34 void divsrp(VL vl,P p1,P p2,P *q,P *r) |
|
Line 34 void divsrp(VL vl,P p1,P p2,P *q,P *r) |
|
} else { |
} else { |
if ( !smallz(deg1) ) |
if ( !smallz(deg1) ) |
error("divsrp : invalid input"); |
error("divsrp : invalid input"); |
d1 = QTOS(deg1); d2 = QTOS(deg2); |
d1 = ZTOS(deg1); d2 = ZTOS(deg2); |
W_CALLOC(d1-d2,P,pq); W_CALLOC(d1,P,pr); W_CALLOC(d2,P,pd); |
W_CALLOC(d1-d2,P,pq); W_CALLOC(d1,P,pr); W_CALLOC(d2,P,pd); |
for ( dc = dc1; dc; dc = NEXT(dc) ) |
for ( dc = dc1; dc; dc = NEXT(dc) ) |
pr[QTOS(DEG(dc))] = COEF(dc); |
pr[ZTOS(DEG(dc))] = COEF(dc); |
for ( dc = dc2; dc; dc = NEXT(dc) ) |
for ( dc = dc2; dc; dc = NEXT(dc) ) |
pd[QTOS(DEG(dc))] = COEF(dc); |
pd[ZTOS(DEG(dc))] = COEF(dc); |
for ( dvr = COEF(dc2), i = d1 - d2; i >= 0; i-- ) { |
for ( dvr = COEF(dc2), i = d1 - d2; i >= 0; i-- ) { |
if ( !pr[i+d2] ) |
if ( !pr[i+d2] ) |
continue; |
continue; |