Algorithm Search⌘K

Proofs: Fixed-point iteration

These are the human proofs of Fixed-point iteration, at full length.

Convergence of fixed-point iteration, global, local and of order q full

This proof shows: correctness, termination.

We work in exact real arithmetic. The iterates are xk+1=g(xk)x_{k+1} = g(x_k), and ek=xk−x∗e_k = x_k - x^*.

Theorem 1 (global). Let II be a closed interval, let g(I)⊆Ig(I) \subseteq I, and let ∣g(x)−g(y)∣≤L∣x−y∣|g(x) - g(y)| \le L|x - y| for all x,y∈Ix, y \in I with 0≤L<10 \le L < 1. Then gg has exactly one fixed point x∗∈Ix^* \in I. For each x0∈Ix_0 \in I the iterates stay in II, and for all k≥1k \ge 1:

  1. ∣ek∣≤Lk∣e0∣|e_k| \le L^k |e_0|;
  2. ∣xk−x∗∣≤L1−L∣xk−xk−1∣|x_k - x^*| \le \frac{L}{1 - L}|x_k - x_{k-1}| (a posteriori bound);
  3. ∣xk−x∗∣≤Lk1−L∣x1−x0∣|x_k - x^*| \le \frac{L^k}{1 - L}|x_1 - x_0| (a priori bound).

Proof. The iterates stay in II by induction, since g(I)⊆Ig(I) \subseteq I. For k≥1k \ge 1, ∣xk+1−xk∣=∣g(xk)−g(xk−1)∣≤L∣xk−xk−1∣|x_{k+1} - x_k| = |g(x_k) - g(x_{k-1})| \le L|x_k - x_{k-1}|, so ∣xk+1−xk∣≤Lk∣x1−x0∣|x_{k+1} - x_k| \le L^k|x_1 - x_0|. For j>kj > k,

∣xj−xk∣≤∑i=kj−1∣xi+1−xi∣≤∑i=kj−1Li∣x1−x0∣≤Lk1−L∣x1−x0∣.|x_j - x_k| \le \sum_{i=k}^{j-1} |x_{i+1} - x_i| \le \sum_{i=k}^{j-1} L^i |x_1 - x_0| \le \frac{L^k}{1 - L}|x_1 - x_0|.

So (xk)(x_k) is a Cauchy sequence. It has a limit x∗x^*, which lies in II because II is closed. The map gg is continuous (it is Lipschitz), so x∗=lim⁡xk+1=lim⁡g(xk)=g(x∗)x^* = \lim x_{k+1} = \lim g(x_k) = g(x^*). If y∗∈Iy^* \in I is another fixed point, then ∣x∗−y∗∣=∣g(x∗)−g(y∗)∣≤L∣x∗−y∗∣|x^* - y^*| = |g(x^*) - g(y^*)| \le L|x^* - y^*|, and L<1L < 1 forces x∗=y∗x^* = y^*.

For item 1, ∣ek∣=∣g(xk−1)−g(x∗)∣≤L∣ek−1∣|e_{k}| = |g(x_{k-1}) - g(x^*)| \le L|e_{k-1}|, and induction gives ∣ek∣≤Lk∣e0∣|e_k| \le L^k|e_0|. For item 2, ∣xk−x∗∣≤∣xk−xk+1∣+∣xk+1−x∗∣≤L∣xk−xk−1∣+L∣xk−x∗∣|x_k - x^*| \le |x_k - x_{k+1}| + |x_{k+1} - x^*| \le L|x_k - x_{k-1}| + L|x_k - x^*|, and we solve for ∣xk−x∗∣|x_k - x^*|. Item 3 follows from the display when j→∞j \to \infty. □\square

Corollary (the stop test). Under Theorem 1, if line L1 sets τ=δ(1−L)/L\tau = \delta(1-L)/L with L>0L > 0 and line L6 returns y=xky = x_{k} because ∣xk−xk−1∣≤τ|x_k - x_{k-1}| \le \tau, then ∣y−x∗∣≤L1−Lτ=δ|y - x^*| \le \frac{L}{1-L}\tau = \delta by item 2. The test holds at the latest when Lk−11∣x1−x0∣≤τ\frac{L^{k-1}}{1}|x_1 - x_0| \le \tau, because ∣xk−xk−1∣≤Lk−1∣x1−x0∣|x_k - x_{k-1}| \le L^{k-1}|x_1 - x_0|. So FIXED-POINT stops after at most 1+⌈log⁡(∣x1−x0∣/τ)/log⁡(1/L)⌉1 + \lceil \log(|x_1 - x_0|/\tau)/\log(1/L) \rceil steps, a finite number. If L=0L = 0, gg is constant on II and x1=x∗x_1 = x^*; the test with any τ≥0\tau \ge 0 holds at step 2. □\square

Theorem 2 (local). Let gg be C1C^1 on an open interval around a fixed point x∗x^*, with ∣g′(x∗)∣<1|g'(x^*)| < 1. Then there is ρ>0\rho > 0 such that, for each x0x_0 with ∣x0−x∗∣≤ρ|x_0 - x^*| \le \rho, the iterates converge to x∗x^*, and ek+1/ek→g′(x∗)e_{k+1}/e_k \to g'(x^*) when no eke_k is zero.

Proof. Choose LL with ∣g′(x∗)∣<L<1|g'(x^*)| < L < 1. By continuity of g′g' there is ρ>0\rho > 0 with ∣g′(x)∣≤L|g'(x)| \le L for ∣x−x∗∣≤ρ|x - x^*| \le \rho. Let I=[x∗−ρ,x∗+ρ]I = [x^* - \rho, x^* + \rho]. For x∈Ix \in I, the mean value theorem gives ξ\xi between xx and x∗x^* with ∣g(x)−x∗∣=∣g′(ξ)∣∣x−x∗∣≤Lρ|g(x) - x^*| = |g'(\xi)||x - x^*| \le L\rho, so g(I)⊆Ig(I) \subseteq I. The same theorem shows ∣g(x)−g(y)∣≤L∣x−y∣|g(x) - g(y)| \le L|x - y| on II. Theorem 1 applies. For the ratio, ek+1=g(xk)−g(x∗)=g′(ξk)eke_{k+1} = g(x_k) - g(x^*) = g'(\xi_k) e_k with ξk\xi_k between xkx_k and x∗x^*. Since xk→x∗x_k \to x^*, also ξk→x∗\xi_k \to x^*, and g′(ξk)→g′(x∗)g'(\xi_k) \to g'(x^*) by continuity. □\square

Theorem 3 (order qq). Let q≥2q \ge 2, let gg be CqC^q near x∗x^*, and let g′(x∗)=⋯=g(q−1)(x∗)=0g'(x^*) = \cdots = g^{(q-1)}(x^*) = 0 and g(q)(x∗)≠0g^{(q)}(x^*) \ne 0. Then the convergence of Theorem 2 holds, and ek+1/ekq→g(q)(x∗)/q!e_{k+1}/e_k^q \to g^{(q)}(x^*)/q! when no eke_k is zero. So the order is exactly qq with rate constant C=∣g(q)(x∗)∣/q!C = |g^{(q)}(x^*)|/q!.

Proof. Since g′(x∗)=0g'(x^*) = 0, Theorem 2 gives convergence for x0x_0 close enough. Taylor's theorem with the Lagrange remainder at x∗x^* gives g(xk)=g(x∗)+g(q)(ξk)q!ekqg(x_k) = g(x^*) + \frac{g^{(q)}(\xi_k)}{q!} e_k^q with ξk\xi_k between xkx_k and x∗x^*, because the terms of order 1 to q−1q - 1 vanish. So ek+1=g(q)(ξk)q!ekqe_{k+1} = \frac{g^{(q)}(\xi_k)}{q!} e_k^q, and ξk→x∗\xi_k \to x^* with continuity of g(q)g^{(q)} gives the limit. □\square

Theorem 4 (repulsion). Let gg be C1C^1 near x∗x^* with ∣g′(x∗)∣>1|g'(x^*)| > 1. If xk→x∗x_k \to x^*, then xk=x∗x_k = x^* for all large kk.

Proof. Choose λ\lambda with 1<λ<∣g′(x∗)∣1 < \lambda < |g'(x^*)| and ρ>0\rho > 0 with ∣g′(x)∣≥λ|g'(x)| \ge \lambda for ∣x−x∗∣≤ρ|x - x^*| \le \rho. If xk→x∗x_k \to x^*, then ∣ek∣≤ρ|e_k| \le \rho for all k≥Kk \ge K. For such kk, the mean value theorem gives ∣ek+1∣=∣g′(ξk)∣∣ek∣≥λ∣ek∣|e_{k+1}| = |g'(\xi_k)||e_k| \ge \lambda|e_k|. If eK≠0e_K \ne 0, then ∣eK+j∣≥λj∣eK∣→∞|e_{K+j}| \ge \lambda^j |e_K| \to \infty, which contradicts ∣ek∣≤ρ|e_k| \le \rho. So eK=0e_K = 0, and then ek=0e_k = 0 for all k≥Kk \ge K. □\square

Termination of FIXED-POINT. The loop of lines L3 to L7 runs at most kmax⁡k_{\max} times, and each pass either returns or goes on, so the procedure always ends. Under Theorem 1 with the scaled tolerance, the corollary shows that it returns at line L6 with error at most δ\delta once kmax⁡k_{\max} is at least the bound given there. ■\blacksquare

Back to Fixed-point iteration