Finding the roots of an equation f(x)=0f(x) = 0 is one of the oldest problems in mathematics. For linear and quadratic equations, explicit closed-form formulas give exact answers immediately. But symbolic inversion quickly runs into insurmountable barriers: the Abel-Ruffini theorem famously proves that general polynomial equations of degree five and higher possess no closed-form radical solutions, and transcendental equations such as cos⁡(x)=x\cos(x) = x or x3+4x2=10x^3 + 4x^2 = 10 completely defy algebraic rearrangement.

When analytical formulas fail, computation takes over through iterative approximation. Instead of seeking an instantaneous closed form, an iterative method constructs a sequence of approximations x0,x1,x2,…x_0, x_1, x_2, \dots designed to march inexorably toward the true root x∗x^*.

This note explores two foundational paradigms for solving nonlinear equations on the real line:

  1. Bisection: A geometric, bracketing strategy that traps the root inside an ever-halving interval. Backed by Bolzano’s Intermediate Value Theorem, it is slow (gaining exactly one bit of precision per step) but indestructible.
  2. Fixed-Point Iteration: A dynamical systems transformation that converts a static root equation f(x)=0f(x) = 0 into an iterative feedback map xn+1=g(xn)x_{n+1} = g(x_n). Governed by Banach’s Contraction Principle, it reveals how the local derivative slope ∣g′(x∗)∣<1|g'(x^*)| < 1 creates a gravitational basin of attraction.

Roots, fixed points, and sequences

Before analyzing convergence, we establish the formal link between finding a zero of a function and finding an invariant state of an iteration map.

DefinitionRoot

A number x∗x^* is a root or zero of ff when f(x∗)=0f(x^*) = 0.

DefinitionFixed point

For a function g ⁣:D→Rg \colon D \to \mathbb{R}, a point x∗∈Dx^* \in D is a fixed point when g(x∗)=x∗g(x^*) = x^*. Geometrically, fixed points are the intersections of the curve y=g(x)y = g(x) with the diagonal line y=xy = x.

DefinitionFixed-point iteration

Given an initial guess x0∈Dx_0 \in D, the iteration sequence generated by gg is

xn+1=g(xn),n=0,1,2,…x_{n+1} = g(x_n), \qquad n = 0,1,2,\dots

whenever every required evaluation is defined.

DefinitionConvergence of a sequence

The notation xn→x∗x_n \to x^* means that for every error tolerance ε>0\varepsilon > 0, there exists an integer NN such that ∣xn−x∗∣<ε|x_n - x^*| < \varepsilon for all n≥Nn \ge N. A shifted sequence inherits the identical limit: xn→x∗x_n \to x^* implies xn+1→x∗x_{n+1} \to x^*.

Any root problem f(x)=0f(x) = 0 can be algebraically converted into infinitely many fixed-point formats x=g(x)x = g(x). For example, for any non-zero parameter λ\lambda, we may define

gλ(x)=x−λf(x).g_\lambda(x) = x - \lambda f(x).

Then f(x)=0f(x) = 0 if and only if gλ(x)=xg_\lambda(x) = x. The roots of ff are precisely the fixed points of gλg_\lambda. However, algebraic equivalence is only the first step: whether the iterative dynamical system xn+1=g(xn)x_{n+1} = g(x_n) converges or diverges depends entirely on the analytical properties of gg.

ExampleAlgebraic conversion versus dynamical convergence

Consider finding the positive root of f(x)=x2−2=0f(x) = x^2 - 2 = 0. We can rewrite this in multiple ways:

  1. x=x−14(x2−2)x = x - \tfrac{1}{4}(x^2 - 2)
  2. x=2/xx = 2 / x
  3. x=12(x+2/x)x = \tfrac{1}{2}(x + 2/x)

All three share the identical fixed point x∗=2≈1.4142x^* = \sqrt{2} \approx 1.4142. Yet their numerical dynamics could not be more different: the second formulation oscillates in an endless 2-cycle (x0=1→2→1→2…x_0 = 1 \to 2 \to 1 \to 2 \dots), while the third formulation (Babylonian/Newton iteration) doubles its correct digits with every single step.

Converting f(x)=0f(x)=0 into x=g(x)x=g(x) is therefore not a solution; it is a design choice that must be justified through contraction analysis.

Two existence tools

TheoremIntermediate Value Theorem

If ff is continuous on [a,b][a,b] and f(a)f(b)<0f(a)f(b) < 0, then there is a point x∗∈(a,b)x^* \in (a,b) such that f(x∗)=0f(x^*) = 0.

Proof

Assume f(a)<0<f(b)f(a)<0<f(b), replacing ff by −f-f if necessary. Let S={x∈[a,b]:f(x)<0}S=\{x\in[a,b]:f(x)<0\} and c=sup⁡Sc=\sup S, which exists by completeness of the real numbers. Continuity at the endpoints places cc strictly between them. If f(c)<0f(c)<0, continuity gives a larger point still in SS, contradicting the supremum. If f(c)>0f(c)>0, a whole neighborhood of cc contains no point of SS, contradicting that points of SS approach its supremum from below. Thus f(c)=0f(c)=0.

A sign change guarantees existence, not uniqueness. Conversely, f(a)f(b)>0f(a)f(b) > 0 does not prove that no root exists: an even number of crossings may lie inside the interval.

TheoremMean Value Theorem

If gg is continuous on [a,b][a,b] and differentiable on (a,b)(a,b), then for any distinct x,y∈[a,b]x,y \in [a,b] there is a point cc between them such that

g(x)−g(y)=g′(c) (x−y).g(x) - g(y) = g'(c)\,(x-y).
Proof

For x<yx<y, subtract the secant line:

h(t)=g(t)−g(x)−g(y)−g(x)y−x(t−x).h(t)=g(t)-g(x)-\frac{g(y)-g(x)}{y-x}(t-x).

Then h(x)=h(y)=0h(x)=h(y)=0. Rolle’s theorem and its proof give h′(c)=0h'(c)=0 at an interior point. Substitution yields the formula; exchanging x,yx,y covers the other order.

IVT creates a root or a fixed point. MVT turns a derivative bound into a bound on changes in the function.

Lipschitz and contraction conditions

DefinitionLipschitz condition

Let g ⁣:[a,b]→Rg \colon [a,b] \to \mathbb{R}. The function gg is Lipschitz on [a,b][a,b] if there exists a finite constant L∈[0,∞)L \in [0,\infty) such that, for every x,y∈[a,b]x,y \in [a,b],

∣g(x)−g(y)∣≤L∣x−y∣.|g(x) - g(y)| \le L |x-y|.

Any such LL is a Lipschitz constant. There is no requirement that L<1L < 1.

DefinitionContraction condition

A Lipschitz function g ⁣:[a,b]→Rg \colon [a,b] \to \mathbb{R} is a contraction on [a,b][a,b] if the Lipschitz inequality holds for some constant in the strictly smaller range L∈[0,1)L \in [0,1). If, in addition, g([a,b])⊆[a,b]g([a,b]) \subseteq [a,b], then gg is a contraction self-map of [a,b][a,b]: the contraction brings points closer together, while the self-map keeps every iterate inside the interval.

This note uses LL for both a Lipschitz constant and, when L<1L < 1, a contraction factor. If L=0L = 0, then gg is constant. A finite global bound ∣g′(x)∣≤L<∞|g'(x)| \le L < \infty proves that gg is Lipschitz. It proves that gg is a contraction only when the bound can be chosen with L<1L < 1. Finding one point where ∣g′(x)∣>1|g'(x)| > 1 rules out the derivative-based contraction test, but does not rule out Lipschitz continuity.

PropositionDerivative bound gives a Lipschitz estimate

If gg is continuous on [a,b][a,b], differentiable on (a,b)(a,b), and ∣g′(s)∣≤L|g'(s)| \le L for some finite L≥0L \ge 0 and all s∈(a,b)s \in (a,b), then ∣g(x)−g(y)∣≤L∣x−y∣|g(x)-g(y)| \le L |x-y| for every x,y∈[a,b]x,y \in [a,b]. Hence gg is Lipschitz. If the same bound can be obtained with L<1L < 1, then gg is a contraction.

Proof

If x=yx = y, the claim is immediate. If x≠yx \neq y, the Mean Value Theorem gives a point cc between xx and yy with g(x)−g(y)=g′(c)(x−y)g(x)-g(y) = g'(c)(x-y). Taking absolute values and using the derivative bound gives ∣g(x)−g(y)∣=∣g′(c)∣ ∣x−y∣≤L∣x−y∣|g(x)-g(y)| = |g'(c)|\,|x-y| \le L |x-y|.

The global constant is a bound over the whole interval. It is not generally the single number ∣g′(x∗)∣|g'(x^*)|.

The bisection method

Suppose ff is continuous on [a0,b0][a_0,b_0] and f(a0)f(b0)<0f(a_0)f(b_0) < 0. By the Intermediate Value Theorem, at least one root lies inside the initial bracket. For k≥1k \ge 1, let xk=(ak−1+bk−1)/2x_k = (a_{k-1}+b_{k-1})/2 be the midpoint. If f(xk)=0f(x_k) = 0, stop. Otherwise retain the half interval whose endpoint values still have opposite signs.

PropositionBracket invariant

Until an exact root is returned, every bisection update produces an interval Ik=[ak,bk]I_k = [a_k,b_k] such that

f(ak)f(bk)<0,bk−ak=(b0−a0)/2k,f(a_k)f(b_k) < 0, \qquad b_k - a_k = (b_0-a_0)/2^k,

and IkI_k contains at least one root. The intervals are nested: Ik⊆Ik−1I_k \subseteq I_{k-1}.

Proof

The claim holds for I0I_0 by the initial assumptions and the Intermediate Value Theorem. Assume it holds for Ik−1I_{k-1}. Its midpoint divides the interval into two closed halves. If the midpoint is not a root, exactly one of f(ak−1)f(xk)f(a_{k-1})f(x_k) and f(xk)f(bk−1)f(x_k)f(b_{k-1}) is negative. Retaining that half preserves a sign-changing bracket and hence contains at least one root. It is a subset of the previous bracket and has half its width, so induction gives nestedness and the displayed width formula.

Intuitively, bisection searches for the interval where root existence is guaranteed by IVT, and stops when that interval is small enough. It always converges when the hypotheses hold, but the convergence is slow.

Algorithm 1 Bisection with cached endpoint values

Require: continuous ff, endpoints a<ba < b, tolerance ε>0\varepsilon > 0, maximum midpoint count Nmax⁡N_{\max}

1:evaluate and cache fa=f(a)f_a = f(a) and fb=f(b)f_b = f(b)

2:if fa=0f_a = 0 then

3:return aa

4:end if

5:if fb=0f_b = 0 then

6:return bb

7:end if

8:if fafb>0f_a f_b > 0 then

9:reject the interval: it is not a certified bracket

10:end if

11:for k←1k \gets 1 to Nmax⁡N_{\max} do

12:x←(a+b)/2x \gets (a+b)/2, evaluate fx=f(x)f_x = f(x) once

13:if fx=0f_x = 0 then

14:return xx

15:end if

16:if fafx<0f_a f_x < 0 then

17:b←xb \gets x, fb←fxf_b \gets f_x

18:else

19:a←xa \gets x, fa←fxf_a \gets f_x

20:end if

21:if (b−a)/2<ε(b-a)/2 < \varepsilon then

22:return midpoint of the updated bracket

23:end if

24:end for

25:report that the maximum iteration count was reached

After the two initial endpoint evaluations, each loop needs only one new function evaluation.

TheoremBisection convergence and a priori error

Let ff be continuous on [a0,b0][a_0,b_0] with f(a0)f(b0)<0f(a_0)f(b_0) < 0. The nested bisection brackets determine a root x∗x^*. If xkx_k is the kkth midpoint, then

∣x∗−xk∣≤(12)k(b0−a0).|x^* - x_k| \le \Bigl(\frac{1}{2}\Bigr)^k (b_0 - a_0).

Consequently xk→x∗x_k \to x^*.

Proof

By the bracket invariant, the intervals IkI_k are nested, closed, nonempty, and have lengths (b0−a0)/2k→0(b_0-a_0)/2^k \to 0. The nested interval principle gives a unique point x∗x^* in every IkI_k. For each kk, IVT supplies a root rk∈Ikr_k \in I_k. Since rkr_k and x∗x^* both lie in IkI_k, ∣rk−x∗∣≤bk−ak→0|r_k - x^*| \le b_k - a_k \to 0. Thus rk→x∗r_k \to x^*, and continuity gives f(x∗)=lim⁡f(rk)=0f(x^*) = \lim f(r_k) = 0.

At the start of iteration kk, both this root x∗x^* and the midpoint xkx_k lie in Ik−1I_{k-1}. The farthest any point of this interval can be from its midpoint is half the interval width, so

∣x∗−xk∣≤bk−1−ak−12=b0−a02k.|x^* - x_k| \le \frac{b_{k-1}-a_{k-1}}{2} = \frac{b_0-a_0}{2^k}.

The right-hand side tends to zero, so xk→x∗x_k \to x^*.

This is an a priori estimate: it uses only the initial width and the iteration number. It does not require knowing the root or differentiating ff.

PropositionSufficient midpoint count for strict tolerance

Given ε>0\varepsilon > 0, the integer

K=⌊log⁡((b0−a0)/ε)/log⁡2⌋+1K = \Bigl\lfloor \log\bigl((b_0-a_0)/\varepsilon\bigr) / \log 2 \Bigr\rfloor + 1

is sufficient to ensure ∣x∗−xK∣<ε|x^* - x_K| < \varepsilon.

Proof

The a priori estimate is strictly below ε\varepsilon whenever (b0−a0)/2K<ε(b_0-a_0)/2^K < \varepsilon. Since all quantities are positive, this is equivalent to K>log⁡((b0−a0)/ε)/log⁡2K > \log((b_0-a_0)/\varepsilon)/\log 2. For any real rr, the smallest integer known to satisfy K>rK > r is ⌊r⌋+1\lfloor r \rfloor + 1.

If the target is the non-strict bound ∣x∗−xK∣≤ε|x^*-x_K| \le \varepsilon, then K=⌈log⁡2((b0−a0)/ε)⌉K = \lceil \log_2((b_0-a_0)/\varepsilon) \rceil is sufficient. The difference appears only when the logarithmic ratio is already an integer.

Let NN be the number of midpoint iterations. From the stopping result, N=O(log⁡((b0−a0)/ε))N = O(\log((b_0-a_0)/\varepsilon)). If one evaluation of ff costs TfT_f, the algorithm takes O(NTf)O(N T_f) time. Rolling storage is O(1)O(1). “Linear convergence” describes how the error contracts. Big-O running time counts operations. They answer different questions even when both contain a logarithm.

As a concrete example, consider applying bisection to f(x)=x3+4x2−10f(x) = x^3 + 4x^2 - 10 on [1,2][1,2]. The initial bracket is valid because f(1)=−5<0f(1) = -5 < 0 and f(2)=14>0f(2) = 14 > 0. For a target error tolerance ε=10−4\varepsilon = 10^{-4}, the strict theoretical midpoint count is K=14K = 14. A naive residual check might stop earlier (∣f(x9)∣<10−4|f(x_9)| < 10^{-4}), but the residual measures vertical distance to zero, whereas the bisection error certificate guarantees horizontal proximity to the true root using bracket width.

This interactive figure needs JavaScript.

Fixed-point iteration

To turn f(x)=0f(x) = 0 into a fixed-point problem, choose a nonzero constant λ\lambda and define gλ(x)=x−λf(x)g_\lambda(x) = x - \lambda f(x). Then the roots of ff are exactly the fixed points of gλg_\lambda. The associated algorithm is xn+1=xn−λf(xn)x_{n+1} = x_n - \lambda f(x_n). Different choices of λ\lambda produce different maps. Here gλ′(x)=1−λf′(x)g_\lambda'(x) = 1 - \lambda f'(x), so λ\lambda changes local attraction or repulsion.

PropositionThe limit of a convergent iteration is a fixed point

Suppose xn+1=g(xn)x_{n+1} = g(x_n), xn→x∗x_n \to x^*, and gg is continuous at x∗x^*. Then g(x∗)=x∗g(x^*) = x^*.

Proof

Since xn→x∗x_n \to x^*, we have xn+1→x∗x_{n+1} \to x^*. By the iteration rule, xn+1=g(xn)x_{n+1} = g(x_n), so lim⁡xn+1=lim⁡g(xn)\lim x_{n+1} = \lim g(x_n). Continuity of gg at x∗x^* gives g(xn)→g(x∗)g(x_n) \to g(x^*). Therefore g(x∗)=x∗g(x^*) = x^*.

This is necessary, not sufficient. A map may have a fixed point while an iteration diverges from it. Passing a limit through gg uses continuity of gg, not linearity of gg. For example, g(u)=u2g(u) = u^2 is nonlinear but continuous.

TheoremFixed-point theorem on a closed interval

Let gg be continuous on [a,b][a,b] and satisfy g([a,b])⊆[a,b]g([a,b]) \subseteq [a,b]. Then gg has at least one fixed point in [a,b][a,b].

Further suppose that g′g' exists on (a,b)(a,b) and that there is a constant 0≤L<10 \le L < 1 with ∣g′(x)∣≤L|g'(x)| \le L for all x∈(a,b)x \in (a,b). Then the fixed point is unique, and for every x0∈[a,b]x_0 \in [a,b] the iteration xn+1=g(xn)x_{n+1} = g(x_n) remains in [a,b][a,b] and converges to that fixed point.

The notation g([a,b])g([a,b]) means the set of outputs obtained by applying gg to every input in [a,b][a,b]. The derivative bound is a convenient sufficient test for a contraction. It does not replace the self-map condition. A common omission in introductory texts is the self-map condition g([a,b])⊆[a,b]g([a,b]) \subseteq [a,b]. Without it, neither the existence of a fixed point within the interval nor the invariance of subsequent iterates is guaranteed.

Proof

Existence. A point x∗x^* is a fixed point of gg exactly when g(x∗)−x∗=0g(x^*)-x^* = 0. Let q(x)=g(x)−xq(x) = g(x)-x. It is continuous on [a,b][a,b]. Because gg maps the interval into itself, a≤g(a)≤ba \le g(a) \le b and a≤g(b)≤ba \le g(b) \le b, which implies q(a)≥0q(a) \ge 0 and q(b)≤0q(b) \le 0. If either value is zero, that endpoint is a fixed point. Otherwise q(a)>0>q(b)q(a) > 0 > q(b), and IVT gives x∗∈(a,b)x^* \in (a,b) with q(x∗)=0q(x^*) = 0.

Uniqueness. Suppose pp and qq are fixed points. Then p−q=g(p)−g(q)p-q = g(p)-g(q). The derivative hypothesis and the Mean Value Theorem give ∣p−q∣=∣g(p)−g(q)∣≤L∣p−q∣|p-q| = |g(p)-g(q)| \le L |p-q|. Since L<1L < 1, this forces p=qp = q.

Invariance and convergence. The self-map keeps every iterate in [a,b][a,b]. Let x∗x^* be the unique fixed point. Then ∣x∗−xn+1∣=∣g(x∗)−g(xn)∣≤L∣x∗−xn∣|x^*-x_{n+1}| = |g(x^*)-g(x_n)| \le L |x^*-x_n|, so by induction ∣x∗−xn∣≤Ln∣x∗−x0∣|x^*-x_n| \le L^n |x^*-x_0|. Since L<1L < 1, the right-hand side tends to zero.

A local derivative test explains behaviour near an individual fixed point: if ∣g′(x∗)∣<1|g'(x^*)| < 1, the fixed point is locally attractive under suitable continuity assumptions on g′g'; if ∣g′(x∗)∣>1|g'(x^*)| > 1, it is locally repelling. A local test does not prove convergence from every point in a large interval.

Algorithm 2 Fixed-point iteration with a posteriori test

Require: map gg, initial value x0x_0, contraction bound 0≤L<10 \le L < 1, target error ε>0\varepsilon > 0, maximum count Nmax⁡N_{\max}

1:x←x0x \gets x_0

2:for n←0n \gets 0 to Nmax⁡−1N_{\max}-1 do

3:y←g(x)y \gets g(x)

4:if L=0L = 0 then

5:return yy

6:end if

7:if L/(1−L) ∣y−x∣≤εL/(1-L)\, |y-x| \le \varepsilon then

8:return yy

9:end if

10:x←yx \gets y

11:end for

12:report that the maximum iteration count was reached

The stopping test follows from the computable estimate

∣x∗−xn+1∣≤L1−L ∣xn+1−xn∣.|x^* - x_{n+1}| \le \frac{L}{1-L}\, |x_{n+1}-x_n|.
Proof

By the contraction estimate, ∣xj+1−xj∣≤L∣xj−xj−1∣|x_{j+1}-x_j| \le L |x_j-x_{j-1}| for every j≥n+1j \ge n+1, hence ∣xj+1−xj∣≤Lj−n∣xn+1−xn∣|x_{j+1}-x_j| \le L^{j-n} |x_{n+1}-x_n|. For m>n+1m > n+1, the triangle inequality and a geometric series give

∣xm−xn+1∣≤∣xn+1−xn∣∑j=n+1m−1Lj−n.|x_m - x_{n+1}| \le |x_{n+1}-x_n| \sum_{j=n+1}^{m-1} L^{j-n}.

Letting m→∞m \to \infty yields ∣x∗−xn+1∣≤L1−L∣xn+1−xn∣|x^*-x_{n+1}| \le \frac{L}{1-L}|x_{n+1}-x_n|.

The a priori estimate ∣x∗−xn∣≤Ln∣x∗−x0∣|x^*-x_n| \le L^n |x^*-x_0| implies that NN grows logarithmically with 1/ε1/\varepsilon, but the constant deteriorates as LL approaches one. Rolling storage is O(1)O(1).

This interactive figure needs JavaScript.

Worked examples

ExerciseCosine iteration

Consider cos⁡x−x=0\cos x - x = 0 on I=[0,1]I = [0,1]. Write the equation as x=g(x)x = g(x) with g(x)=cos⁡xg(x) = \cos x. Starting from x0=1/2x_0 = 1/2, consider xn+1=g(xn)x_{n+1} = g(x_n). Prove that the equation has exactly one root in [0,1][0,1], that g([0,1])⊆[0,1]g([0,1]) \subseteq [0,1], and that the iteration converges.

Proof

Let F(x)=cos⁡x−xF(x) = \cos x - x. It is continuous, F(0)=1>0F(0) = 1 > 0, and F(1)=cos⁡1−1<0F(1) = \cos 1 - 1 < 0, so IVT gives a root. Moreover F′(x)=−sin⁡x−1<0F'(x) = -\sin x - 1 < 0 on [0,1][0,1], so FF is strictly decreasing and the root is unique.

For x∈[0,1]x \in [0,1], monotonicity of cosine gives cos⁡1≤cos⁡x≤1\cos 1 \le \cos x \le 1. Since 0<cos⁡1<10 < \cos 1 < 1, the map sends [0,1][0,1] into itself.

The function g(x)=cos⁡xg(x) = \cos x is continuous on [0,1][0,1] and differentiable on (0,1)(0,1). Moreover ∣g′(x)∣=sin⁡x≤sin⁡1<1|g'(x)| = \sin x \le \sin 1 < 1 for every x∈(0,1)x \in (0,1). All hypotheses of the fixed-point theorem hold with L=sin⁡1L = \sin 1. Therefore gg has a unique fixed point in [0,1][0,1], and the iteration converges for every x0∈[0,1]x_0 \in [0,1], including x0=1/2x_0 = 1/2.

ExerciseTesting the hypotheses

Let g(x)=x−1πsin⁡(πx)g(x) = x - \frac{1}{\pi}\sin(\pi x) for x∈[0,1]x \in [0,1]. Show that gg maps [0,1][0,1] into itself, deduce that it has at least one fixed point, show that the derivative condition for uniqueness fails, and solve g(x)=xg(x) = x on [0,1][0,1].

Proof

Since g′(x)=1−cos⁡(πx)≥0g'(x) = 1 - \cos(\pi x) \ge 0 on [0,1][0,1], the function gg is increasing. Its endpoint values are g(0)=0g(0) = 0 and g(1)=1g(1) = 1. Hence 0≤g(x)≤10 \le g(x) \le 1 for every x∈[0,1]x \in [0,1]. Continuity and the self-map give at least one fixed point.

The uniqueness derivative condition fails: ∣g′(2/3)∣=∣1−cos⁡(2π/3)∣=3/2>1|g'(2/3)| = |1 - \cos(2\pi/3)| = 3/2 > 1, so there is no L<1L < 1 with ∣g′(x)∣≤L|g'(x)| \le L throughout (0,1)(0,1). The map is still Lipschitz, with admissible constant L=2L = 2, because 0≤g′(x)≤20 \le g'(x) \le 2. That Lipschitz estimate alone does not give uniqueness.

The fixed-point equation is sin⁡(πx)=0\sin(\pi x) = 0, which on [0,1][0,1] holds exactly when x=0x = 0 or x=1x = 1. So gg has two fixed points.

Continuity together with an invariant interval guarantees existence. A global contraction bound further guarantees uniqueness and convergence from every initial value in that interval. If the self-map condition fails, the theorem yields no conclusion. If only the contraction bound fails, a fixed point may still exist, but uniqueness and global convergence must be investigated by other means.

The next note treats Newton’s method as a specially chosen fixed-point map. This page belongs to the Computational Mathematics reading path.