The Bolzano-Weierstrass theorem

Statement and proof by bisection

Statement

Bolzano-Weierstrass theorem. Every bounded real sequence has a convergent subsequence.

The result bears the names of Bolzano, who used it as early as 1817 in his proof of the intermediate value theorem, and of Weierstrass, who isolated the general statement around 1860. It expresses a deep property of R\mathbb{R}: the compactness of closed bounded intervals.

Note carefully what the theorem does not say. It does not claim that the sequence converges, only that one of its subsequences converges. The sequence un=(−1)nu_n = (-1)^n is bounded and divergent, but (u2n)\left(u_{2n}\right) converges to 11.

The construction by bisection

Let (un)(u_n) be a bounded sequence: there exist aa and bb such that un∈[a,b]u_n \in [a, b] for all nn. Set I0=[a,b]I_0 = [a, b].

Constructing the intervals. Suppose In=[an,bn]I_n = [a_n, b_n] has been constructed, with the property

Pn:{ k∈N  :  uk∈In } is infinite\mathcal{P}_n : \quad \left\{\, k \in \mathbb{N} \;:\; u_k \in I_n \,\right\} \ \text{is infinite}

Cut InI_n at its midpoint mn=an+bn2m_n = \dfrac{a_n + b_n}{2}. The two halves [an,mn]\left[a_n, m_n\right] and [mn,bn]\left[m_n, b_n\right] share the infinite set of indices kk such that uk∈Inu_k \in I_n. If each contained only finitely many, their union would be finite, which is absurd. At least one of the two halves therefore contains infinitely many indices: we choose it as In+1I_{n+1}, and Pn+1\mathcal{P}_{n+1} holds.

Property P0\mathcal{P}_0 is true, since all indices qualify. The construction therefore continues indefinitely, and by bisection

bn−an=b−a2n→n→+∞0b_n - a_n = \frac{b - a}{2^n} \xrightarrow[n \to +\infty]{} 0

Constructing the extraction map. We define φ\varphi recursively:

φ(0)=min⁡{ k∈N  :  uk∈I0 }=0\varphi(0) = \min \left\{\, k \in \mathbb{N} \;:\; u_k \in I_0 \,\right\} = 0

φ(n+1)=min⁡{ k∈N  :  k>φ(n)  and  uk∈In+1 }\varphi(n+1) = \min \left\{\, k \in \mathbb{N} \;:\; k > \varphi(n) \ \text{ and } \ u_k \in I_{n+1} \,\right\}

This set is nonempty, precisely because Pn+1\mathcal{P}_{n+1} provides infinitely many suitable indices: so some remain beyond φ(n)\varphi(n). Since every nonempty subset of N\mathbb{N} has a least element, φ(n+1)\varphi(n+1) exists, and φ(n+1)>φ(n)\varphi(n+1) > \varphi(n) by construction. The map φ\varphi is indeed strictly increasing.

Conclusion. By construction, uφ(n)∈Inu_{\varphi(n)} \in I_n, that is,

an≤uφ(n)≤bna_n \leq u_{\varphi(n)} \leq b_n

The intervals InI_n are nested and their length tends to 00: by the nested intervals theorem, ana_n and bnb_n converge to the same real number cc. The squeeze theorem then gives

uφ(n)→n→+∞cu_{\varphi(n)} \xrightarrow[n \to +\infty]{} c

The subsequence (uφ(n))\left(u_{\varphi(n)}\right) converges: the theorem is proved.

Cluster points

The limit cc obtained is called a cluster point (or subsequential limit) of (un)(u_n): a real number that is the limit of at least one subsequence. The theorem can be restated as:

Every bounded real sequence has at least one cluster point.

A bounded sequence can have several — two for (−1)n(-1)^n, infinitely many for a sequence that densely sweeps [0,1][0, 1]. The link with convergence is as follows: a bounded sequence that has a unique cluster point converges to it.

Classic pitfall

Writing "we keep the half that contains infinitely many terms" instead of infinitely many indices. The distinction is real: the constant sequence un=0u_n = 0 takes only one value, so "infinitely many terms" would make no sense, whereas the set of indices kk such that uk∈Inu_k \in I_n is indeed infinite. The argument is always about indices.

Second pitfall, more serious in an exam: forgetting the condition k>φ(n)k > \varphi(n) in the definition of φ(n+1)\varphi(n+1). Without it, you get a sequence of terms, but not a subsequence, and the whole proof collapses.