| 12972 | */ |
| 12973 | #ifdef HAVE_SHIFTBBA |
| 12974 | void enterTShift(LObject p, kStrategy strat, int atT) |
| 12975 | { |
| 12976 | /* determine how many elements we have to insert */ |
| 12977 | /* x(0)y(1)z(2) : lastVblock-1=2, to add until lastVblock=uptodeg-1 */ |
| 12978 | /* hence, a total number of elt's to add is: */ |
| 12979 | /* int toInsert = 1 + (uptodeg-1) - (pLastVblock(p.p, lV) -1); */ |
| 12980 | pAssume(p.p != NULL); |
| 12981 | |
| 12982 | int maxPossibleShift = p_mLPmaxPossibleShift(p.p, strat->tailRing); |
| 12983 | |
| 12984 | for (int i = 1; i <= maxPossibleShift; i++) |
| 12985 | { |
| 12986 | LObject qq; |
| 12987 | qq.p = pLPCopyAndShiftLM(p.p, i); // don't use Set() because it'll test the poly order |
| 12988 | qq.shift = i; |
| 12989 | strat->initEcart(&qq); // initEcartBBA sets length, pLength, FDeg and ecart |
| 12990 | |
| 12991 | enterT(qq, strat, atT); // enterT is modified, so it doesn't copy and delete the tail of shifted polys |
| 12992 | } |
| 12993 | } |
| 12994 | #endif |
| 12995 | |
| 12996 | #ifdef HAVE_SHIFTBBA |
no test coverage detected