x[i+1] := RootOf( F(x[i])-p(z), z );
Selecting which root of the polynomial to use is a crucial point. If we want to insure convergence, we must select the root which is closest to the iteration value.
Since this selection is necessary for convergence, we will use it in every step of the algorithm. Furthermore, many iterative methods for solving polynomials can profit significantly from starting their iterators at an approximation of the root; the correct root could come almost for free.
For example, for the solution of the equation
x[i+1] := RootOf( z^5-6*z^4+5*z^3+6*z-5 = 7*x[i]^2*ln(x[i]), z );
If we start with x0 = 1,
then the rounded roots are
The root which is closest to x0=1 is 0.758845...
Hence we set
x1=0.758845...
For the second iteration the polynomial becomes
z5-6z4+5z3+6z-5 = -1.11236...
The roots of this polynomial are
and the root closest to x1 is 0.586566... which
becomes x2.
This process converges quite quickly,