Bug #1310
RealRoots: gives odd number of roots for deg 6 irred poly
Status:
Closed
Priority:
Urgent
Assignee:
Category:
Maths Bugs
Target version:
Description
The following looks to be wrong:
/**/ f := x^6 +4*x^5 -x^3 -4*x^2 -1; /**/ IsIrred(f); true /**/ len(RealRoots(f)); -- must be even! 1 /**/ RootBound(f); 189/64
History
#1 Updated by John Abbott over 4 years ago
- Status changed from New to In Progress
- % Done changed from 0 to 10
There appear to be two real roots: approx -4.00095 and 1.05
RootBound(f)
gives about 2.95; this is wrong!
#2 Updated by John Abbott over 4 years ago
- Assignee set to John Abbott
- % Done changed from 10 to 30
I now have a simpler failing example:
g := x^4 -288*x^3 -593*x +256; RootBound(g,0); --> 254, but there is a real root close to 288.01
Verbose mode shows that the "Birkhoff" bound is wrong. Investigating...
#3 Updated by John Abbott over 4 years ago
- Status changed from In Progress to Feedback
- % Done changed from 30 to 90
- Estimated time set to 2.22 h
I have found a bug, and fixed it! It produces reasonable answers on the two tests mentioned above:
/**/ gg := x^4 -288*x^3 -593*x +256; /**/ RootBound(gg); 289 /**/ f := x^6 +4*x^5 -x^3 -4*x^2 -1; /**/ FloatStr(RootBound(f)); 4.0156
I'll add a new "exbug" test. Phew!
#4 Updated by Anna Maria Bigatti over 4 years ago
- Target version changed from CoCoALib-0.99700 to CoCoALib-0.99650 November 2019
#5 Updated by John Abbott over 4 years ago
- Status changed from Feedback to Closed
- % Done changed from 90 to 100