Correctness of Bernoulli's method full
This proof shows: correctness, termination, convergence-rate.
Let p(x)=a0xn+⋯+an with a0=0, n≥1, and distinct roots r1,…,rs with multiplicities m1,…,ms, so p(x)=a0∏i(x−ri)mi. Let sk=∑imirik be the power sums, with s0=n. Statements are in exact arithmetic.
Lemma 1 (the computed sequence is the power sums)
The window of line L1 is (s0,…,sn−1), and the terms produced at L3 are, up to one common positive factor per step, sn,sn+1,…. In particular each ratio of L6 equals sj+1/sj for the corresponding j.
Proof. Newton's identities state a0sk+a1sk−1+⋯+ak−1s1+kak=0 for 1≤k≤n, so L1 computes s1,…,sn−1 correctly. For k≥n,
j=0∑najsk−j=i∑mirik−nj=0∑najrin−j=i∑mirik−np(ri)=0, so the power sums satisfy the recurrence of L3, and a sequence satisfying it is determined by any n consecutive terms. The rescaling at L4 multiplies the whole window by 1/c for some c>0; since the recurrence is linear, every later term is multiplied by the same factor, and a ratio of two terms of one window is unchanged. Line L6 divides the new term by the last term of the window it was computed from, before that window is rescaled, so the ratio is sj+1/sj. □
Theorem 1 (convergence to the dominant root)
Suppose r1 is the only distinct root of largest modulus and r1=0, and let λ=maxi≥2∣ri∣/∣r1∣<1 (with λ=0 when s=1). Then r1 is real, sj=0 for all large j, and
sjsj+1−r1=1+εj1i≥2∑m1mi(ri−r1)(r1ri)j,εj=i≥2∑m1mi(r1ri)j, so ∣sj+1/sj−r1∣≤2n∣r1∣λj/(1−nλj) once nλj<1. If moreover r2 is the only distinct root of modulus λ∣r1∣, the errors Ej=sj+1/sj−r1 satisfy Ej+1/Ej→r2/r1.
Proof. If r1 were not real, rˉ1=r1 would be a root of the same modulus, since the coefficients are real; so r1 is real. Write sj=m1r1j(1+εj). Since ∣ri/r1∣≤λ for i≥2 and ∑imi=n, ∣εj∣≤nλj/m1≤nλj, which tends to 0, so sj=0 once nλj<1. Then
sj+1−r1sj=i≥2∑mirij(ri−r1), and dividing by sj gives the identity. Using ∣ri−r1∣≤2∣r1∣ and ∑i≥2mi≤n gives the bound. For the last claim, the terms with ∣ri∣<∣r2∣ are o(∣r2/r1∣j), so Ej=m1m2(r2−r1)(r2/r1)j(1+o(1)), with r2 real by the same conjugation argument, and Ej+1/Ej→r2/r1. □
So the method converges linearly with rate λ for every multiplicity m1; since the power sums contain no factors polynomial in j, a multiple dominant root does not slow it. If r1=0 is the only root, p=a0xn, the window becomes all zeros after n steps and L4 returns 0, which is correct.
Ties for the largest modulus
The hypothesis cannot be dropped. For p=x2−1 the power sums are 2,0,2,0,…, so every other ratio is undefined and the others are 0. For a dominant conjugate pair re±iθ with 0<θ<π and no other root of that modulus, sj=2m∣r∣jcos(jθ)+o(∣r∣j), and the ratios ∣r∣cos((j+1)θ)/cos(jθ) do not converge. In both cases the method only stops at the cap.
Termination
Each pass of the loop L2 either returns at L4 or L7 or ends with k increased; L8 returns after K passes. The rescaling keeps the window's largest entry equal to 1 in absolute value, so no term overflows. When the run stops at L7, the theorem gives an error bound only through λ, which the method does not know: a small change of the ratio is evidence of convergence, not a proof, and the page's pitfalls give the estimate ∣ρk−ρk−1∣λ/(1−λ) that holds asymptotically when r2 is the only subdominant root. In floating point the recurrence and the rounded coefficients add noise to the ratios; its size is observed in the tests, not bounded here.