Bug #1281
Factor of multivariate sometimes prints ERROR
Description
Here is an example:
use QQ[x,y]; f := -x^4*y^3 -x^2*y +1; facs := factor(f); --> do this 97 times ERROR: maximum deg in destination polynomial too low
Despite the error message, the answer seems to be correct.
History
#1 Updated by John Abbott almost 5 years ago
The simplest examples (with 3 terms) seem to be of deg 7 (none found in deg 6 or deg 5).
-x^6*y -x^2 +1 -x^6*y -x^5*y +1 -x^4*y^3 -x^2*y +1 -x^5*y^2 +x^3*y +1
The signs of the coeffs seem to be important: I found no example with all coeffs equal to +1.
Just found a lower deg example:
-x^4*y +x^2 +x +1 x^4*y +x^3*y -x^2 +2 -x^4*y +x^4 -x^2 +x +1 -x^4*y -x^3*y -x^2*y -x^2 +1
There seem to be only 2 examples in deg 5 with 4 terms. The error mesg can be produced by fns in one of two files:
DUPZexgcd.c
DUPZinterp.c
The relevant line is a call toJERROR
with argJERROR_DEG_TOO_LOW
#2 Updated by John Abbott over 4 years ago
- Target version changed from CoCoALib-0.99700 to CoCoALib-0.99800
#3 Updated by John Abbott over 3 years ago
- Target version changed from CoCoALib-0.99800 to CoCoALib-0.99850
#4 Updated by Anna Maria Bigatti over 2 years ago
I confirm I (rarely) meet this error with tough examples in our development of Comprehensive Groebner Systems.
#5 Updated by Anna Maria Bigatti over 2 years ago
When it happens, it happens in pairs. Run this:
for i := 1 to 1000 do facs := factor(x^6*y +x^2 -1); println i, facs.RemainingFactor = 1, facs.factors = [x^6*y +x^2 -1], facs.multiplicities = [1]; endfor;
#6 Updated by Anna Maria Bigatti over 2 years ago
- % Done changed from 0 to 10
#7 Updated by John Abbott 3 months ago
- Target version changed from CoCoALib-0.99850 to CoCoALib-0.99880