11  Contraction Maps

The cauchy condition (that terms “bunch up”) appears in many natural situations, which makes it a very useful equivalent to convergence. Here we investigate one such instance, when sequences are generated by iterating certain functions.

Definition 11.1 (Contractive Sequence) A sequence sn is contractive if there is some positive constant k<1 such that for all n |an+1an|<k|anan1|

Definition 11.2 (Contraction Map) A function f is a contraction map if there is some positive constant k<1 such that for all x,y in the domain of f, |f(x)f(y)|<k|xy|

Proposition 11.1 If f is a contraction map, iterating f starting at any point of the domain produces a convergent sequence.

Proof. We prove the existence of a fixed point of f by constructing a sequence that converges to it. Start by choosing any x0R and set δ=|f(x0)x0|. We can define a sequence xn by iterating f: xn+1:=f(xn). Our goal is to show that xn is Cauchy by bounding |xmxn| appropriately. As a starting point, note that as f is a contraction map we can choose a positive k<1 where |f(x)f(y)|k|xy| for all x,y and compute

|xn+1xn|=k|f(xn)f(xn1)|k2|f(xn1)f(xn2)|kn|f(x0)x0|=knδ

This is not the quantity we are really interested in however, we wish to bound |xmxn|. Using the triangle inequality, we can replace this with nm bounds of the form above:

|xmxn|=|xmxm1+xm1xm2+xm2xn+1+xn+1xn||xmxm1|+|xm1xm2|++|xn+1xn|km1δ+km2δ++knδ

Simplifying this we can factor out the δ to get a sum

δ(km1+km2++kn)=δj=nm1kj=δknj=0mn1kj

The final sum here we may recognize as a geometric series (), where

j=0Nkj=1kN+11k11k

Putting this all together, we have managed to bound |xmxn| by

|xmxn|δknj=0mn1kjδkn11k

The numbers δ and 1/(1k) are both constants, and as |k|<1 we know by , kn0. Thus by the limit laws our bound δkn11k0, which means for every ε there is some N where n>N implies this is less than ε, and hence that |xmxn|<ε. This means the sequence of x’s is Cauchy, and hence convergent. Thus there is some xR with xnx.

Thinking harder about the limit of this sequence proves a rather important theorem in analysis:

Theorem 11.1 (The Contraction Mapping Theorem) Let f:RR be a contraction map. Then there is a unique real number x such that f(x)=x.

Proof. Starting from any x0 in the domain, iterating f produces a sequence converging to some limit point x. Since limxn=limxn+1=limf(xn) we see this same point x is also the limit of the sequence f(xn), so it suffices to prove that f(xn)f(x). Then since f is a contraction map, there’s a k<1 where |f(xn)f(x)|k|xnx|. This second sequence converges to 0 by assumption, so f(xn)f(x) as required (). Finally by uniqueness of limits () since f(xn)x and f(xn)f(x) we conclude x=f(x) is a fixed point.

Finally, we check uniqueness. Assume there are two fixed points x,y with x=f(x) and y=f(y). We apply the condition that f is a contraction map to |xy| to get |xy|k|xy| Since k is strictly less than 1, the only solution to this is that |xy|=0, so x=y and there is only one fixed point after all.

The contraction mapping theorem makes quick work of some proofs that previously took us rather a lot of work.

Example 11.1 (Proving an0 via contraction mapping) If |a|<1 the sequence an converges to zero.

Proof. This sequence is produced by iteration of the map f(x)=ax starting from x=1 at n=0. When |a|<1 we see immediately that f is a contraction map as |f(x)f(y)|=|axay|=|a||xy|, which is less than k|xy| for any k(a,1). Its immediate to see the fixed point of xax is x=0, and the proof above assures this fixed point is the limit of any sequence of iterates of f. Thus an0.

Example 11.2 (1+1+1+ via Contraction Mapping)  

Proof. The recursive sequence 1+1+1+ we previously studied with monotone convergence is generated by iterating the function f(x)=1+x. This map sends nonnegative numbers to nonnegative numbers, so we can consider it a function f:[0,)[0,).

Furthermore, its straightforward to verify its a contraction map on this domain, by a clever factoring (difference of squares). Starting with x,y0 and noticing |xy|=|(1+x)(1+y)|, we factor as

|(1+x)(1+y)|=|(1+x+1+y)(1+x1+y)|

As x,y0 we see 1+x1, 1+y1 so the first factor 1+x+1+y2. Thus

|xy|=|1+x+1+y||1+x1+y|2|1+x1+y|

Dividng by 2 directly shows f is a contraction map with constatn k=12:

12|xy||1+x1+y|=|f(x)f(y)|

Thus, the contraction mapping theorem applies, and iterating f from any starting point produces a convergent sequence, whose limit is the unique fixed point of f. Solving for this fixed point we see f(x)=xx=1+xx2=x+1 Which together with the contstraint x[1,) (which is the domain we proved f is a contraction on) yields x=1+52, the golden ratio.

Note this proves something stronger than our original claim: we know not just the sequence starting with x0=1 converges to the golden ratio, but *any starting point 1, for example,

17,1+17,1+1+17,

Exercise 11.1 (Contraction Maps and 2) The babylonian procedure for approximating 2 defined the recursive sequence wn+1=12(wn+2wn) which is generated by iterating the function f(x)=12(x+2x)

  • Show that f maps [1,) into [1,).
  • Show that on this domain, f is a contraction map.
  • Show that if f(x)=x then x2=2.

Now apply the contraction mapping theorem to re-do a large collection of previous work; proving that (1) 2 exists in R and (2) that the babylonian sequence starting from any possible initial rectangle of area 2 converges to 2. (Before we’d only shown this for the 2×1 rectangle, so w0=1.)

We can combine the contracting mapping theorem with other techniques to continue re-proving known results in easier ways. Here we take another look at our argument for the basic limit a1/n1.

Exercise 11.2 (Proving a1/n1 by Contraction Mapping) Fill in the following outline to prove a1/n1 for all a>0:

The sequence a1/n is not generated by iterating a function, but it has many subsequences that are. For example the subsequence a,a1/2,a1/4,a1/8, Is generated by iterating f(x)=x.

  • Prove that this map is a contraction map on the domain [1,), which guarantees this subsequence converges for every a1. Find the limiting value.

  • Now, for a>1 prove the full sequence a1/n is monotone decreasing and bounded below by 1. This ensures it converges (by monotone convergence).

  • Putting these two facts together, we see the entire sequence converges to 1, as if we have a convergent sequences, all subsequences have the same limit!

  • Finally, use the limit laws to argue the same holds even when a<1.

For some applications, its useful to have around a slight generalization of the contraction mapping theorem: what can we say about the case where f is not a contraction map, but some number of iterations fN is? The contraction mapping theorem applies to fN, showing this map has a fixed point. But that doesn’t directly imply f does: after all, being fixed by fN just means that a point returns to itself after N applications: it could be a periodic point of f. However, a little deeper thought shows this is not the case:

Theorem 11.2 (Root of a Contraction) Let f:XX be a map such that the N-fold composition fN of f with itself is a contraction map. (That is, “f is the Nth root of a contraction”). Then the conclusion of the Contraction Mapping Theorem applies to f: namely f has a unique fixed point, and iterating f on any initial point x0X produces a sequence which converges to this fixed point.

Proof. Since fN is a contraction map it has a unique fixed point aX. Thus one way of showing that something is equal to a is to show that its fixed by fN. But a clever trick lets us see that fN fixes f(a): since we are just composing f with itself over and over,

fN(f(a))=fN+1(a)=f(fN(a))=f(a)

where the last inequality follows as fN(a)=a by definition. Thus fN fixes f(a) so this must be the unique fixed point a itself! f(a)=a as desired. Additionally, this is the only fixed point of f as any points fixed by f are fixed by all repeated compositions of f, so would be fixed points of fN.

It remains only to see that starting from an arbitrary x0X, repeated iteration produces a convergent sequence with limit a. The trick is to break the sequence fn(a) down into N subsequences, one for each r{0,N1}:

x0fN(x0)f2N(x0),fnN(x0)f(x0)f1+N(x0)f1+2N(x0),f1+nN(x0)f2(x0)f2+N(x0)f2+2N(x0),f2+nN(x0)fr(x0)fr+N(x0)fr+2N(x0),fr+nN(x0)fN1(x0)f(N1)+N(x0)f(N1)+2N(x0),f(N1)+nN(x0)

Each of these sequences is the iteration of fN on some initial point fr(x0), and so by the contraction mapping theorem converges to the unqiue fixed point a of fN. Thus, we’ve written our sequence as the union of N sequences, each of which has the same limit! So the entire sequence converges to this limit, fn(x0)a as desired.