Proofs: Bairstow's method
These are the human proofs of Bairstow's method, at full length.
Correctness of Bairstow's method full
This proof shows: correctness, termination, convergence-rate.
Let be real with and . For real let and let , be the sequences of lines L2 and L4, with . Write . Statements are in exact arithmetic unless said otherwise.
Lemma 1 (division identity)
with .
Proof. Compare coefficients. For the coefficient of on the right is , which is by the recurrence. The coefficient of is , and the constant term is .
So divides if and only if the remainder is the zero polynomial, that is, . Then is the quotient, which line L12 keeps.
Lemma 2 (the Jacobian)
and for all , so the Newton system for is the one solved at L5 and L6.
Proof. Differentiate . With we get with . The sequence satisfies the same recurrence, , with the same initial values, so . In the same way , which is the recurrence of .
The Jacobian matrix is with determinant , and Cramer's rule gives the formulas of L6.
Lemma 3 (when the Jacobian is nonsingular)
Let divide , with . Then the Jacobian of at is nonsingular if and only if .
Proof. For a direction let , the change of to first order. Differentiate the identity of Lemma 1 along the direction at , where and the remainder vanishes: , where and are the first order changes of the quotient and of the remainder, and . So is the remainder of modulo . The Jacobian is singular iff some nonzero of degree at most 1 gives , that is, divides . If this forces , impossible for a nonzero polynomial of degree at most 1. If has degree 1 or 2, take when , or any nonzero constant when ; then . The map is the Jacobian (written in the basis , of the remainders), so this proves the claim.
The condition fails exactly when a root of is also a root of , that is, when a root of has multiplicity in larger than its multiplicity in . A factor with of multiplicity exactly 2 satisfies it.
Theorem 1 (local quadratic convergence)
If and , there is such that from every within distance of the steps of FACTOR are defined, converge to , and satisfy for some constant .
Proof. By Lemmas 1 and 2, L5 to L7 are exactly Newton's method on . The map is polynomial in , so its Jacobian is Lipschitz on bounded sets, and by Lemma 3 it is nonsingular at the zero . The standard local convergence theorem for Newton's method in (for example Dennis and Schnabel, Theorem 5.2.1, or the statement on the page Newton's method for systems) then gives a ball of quadratic convergence. If some step lands exactly on the factor, L3 returns "exact".
All norms on are equivalent, so the measure only changes .
Theorem 2 (termination and output)
FACTOR stops after at most steps and divisions. ROOTS stops after at most FACTOR runs per factor and factors, so after at most steps, with output either "failed" or roots.
Proof. Each pass of the loop L1 returns or increases , so the loop ends by L9. In ROOTS each successful factor replaces by the quotient of degree (Lemma 1), so the degree falls by 2 each pass of L10 and the loop ends once the degree is at most 2; each factor search is retried at most times before ROOTS returns "failed". Each factor adds two roots at L11 and L13 adds the rest, so a successful run returns roots. In exact arithmetic, when a factor search ends "exact", the two roots of L11 are roots of and the quotient carries the rest, so by induction the output is the multiset of roots of .
What is not proved
There is no global convergence theorem: from a given start the iteration may cycle, diverge or hit , and the restarts are a heuristic with a cap, not a guarantee. When FACTOR stops on the step test or the rounding floor, the factor is accepted only approximately, and the quotient carries a perturbation into the later factors; the size of the resulting errors is observed in the tests, not proved. The rounding floor follows the pattern of the running error bound for Horner's rule but is used here as a stopping heuristic.