Weierstrass's Theorem

THEOREM

There exists a function f:[0,1]->[0,1] that is continuous and nowhere differentiable.

Proof

C[0,1] denotes the set of all continuous functions f:[0,1]->R. With the sup metric, it is a complete metric space.

Let X be a subset of C[0,1] such that it contains only those functions for which f(0)=0 and f(1)=1 and f([0,1]) c [0,1].

X is a closed subset of C[0,1] hence it is complete. (X,sup) is a complete metric space.

For every f:-X define f^ : [0,1] -> R by f^(x) = 3/4 * f(3x) for 0 <= x <= 1/3, f^(x) = 1/4 + 1/2 * f(2 - 3x) for 1/3 <= x <= 2/3, f^(x) = 1/4 + 3/4 * f(3x - 2) for 2/3 <= x <= 1.

Verify that f^ belongs to X.

Verify that the mapping X-:f |-> f^:-X is a contraction with Lipschitz constant 3/4.

By the Contraction Principle, there exists h:-X such that h^ = h.

This h is continuous. Now we want to show that it is nowhere differentiable.

Verify the following for n:-N and k:-{1,2,3,...,3^n}.

1 <= k <= 3^n  ==>   0 <= (k-1) / 3^(n+1) < k / 3^(n+1) <= 1/3.

3^n < k <= 2 * 3^n  ==>   1/3 <= (k-1) / 3^(n+1) < k / 3^(n+1) <= 2/3.

2 * 3^n < k <= 3 * 3^n  ==>   2/3 <= (k-1) / 3^(n+1) <  k / 3^(n+1) <= 1.

Using the above, prove by induction that /\n:-N /\k:-{1,2,3,4,...,3^n} |h( (k-1) / 3^n ) - h( k / 3^n )| >= 2^(-n).

Take any A, 0<=A<=1. We will show that h is not differentiable at A.

Let's construct a sequence t[n] approaching A. Take any n:-N. We can choose k:-{1,2,3,4,...,3^n} such that (k-1) * 3^(-n) <= a <= k * 3^(-n).

By the triangle inequality, we have

>= |h( (k-1) / 3^n ) - h( k / 3^n )| >= 2^(-n)
 * h( (k-1) / 3^n ) - h(A)| + |h(A) - h( k / 3^n )|

Let t[n] be equal to (k-1)/3^n or to k/3^n so that the following condition is fulfilled:


 * h(t[n]) - h(A)| = max{ |h( (k-1) / 3^n ) - h(A)|, |h(A) - h( k / 3^n )| }.

Now we have t[n] != A and 2*|h(t[n]) - h(A)| >= 2^(-n). Also |t[n]-A| <= 3^(-n).

We constructed {t[n]} contained in [0,1] converging to A, never equal to A.

Notice that for every n:-N we have


 * h(t[n]) - h(A)| /  |t[n] - A|  >=  1/2 * (3/2)^n.

Hence lim |h(t[n]) - h(A)| /  |t[n] - A| = oo as n approaches oo.

This means that h is not differentiable at A.

The proof is complete.