The Bolzano-Weierstrass Theorem

Take any sequence of real numbers trapped between −10-10 and 1010. It need not converge. It might oscillate forever, wander erratically, or repeat patterns without settling down. Yet buried inside it, some pattern of terms must sneak up on a limit. This is the remarkable content of the Bolzano–Weierstrass theorem. Boundedness alone guarantees a convergent subsequence. No assumption of monotonicity or algebraic structure is needed. The result sits at the hinge between the algebraic and topological pictures of the real line. It converts a purely quantitative hypothesis into a qualitative conclusion. Boundedness is a statement about size. The conclusion concerns limiting behavior instead. This conversion is what makes real analysis work. It is the engine behind the Extreme Value Theorem. It also drives proofs that Cauchy sequences converge. It underlies the existence of limit points in compact sets. Without it, we could not guarantee a continuous function on a closed interval attains a maximum. Nor could we guarantee infinite decimal expansions correspond to genuine real numbers as expected. The big picture is that the real numbers are complete. There are no "holes" for sequences to fall through. This holds whenever they are confined to a bounded region. Bolzano and Weierstrass worked independently in the 19th century. They recognized that this completeness could be captured by one combinatorial idea: repeated bisection. This is exactly how we will prove it here. This article gives the precise statement. It offers a complete proof via the bisection (nested interval) method. This proof builds on the Monotone Convergence Theorem. It carefully discusses why boundedness cannot be dropped. Worked examples show how to extract convergent subsequences. These come from concrete oscillating sequences.

Key takeaways
  • Every bounded sequence of real numbers has a subsequence that converges.
  • The proof uses repeated bisection to build a nested sequence of shrinking intervals, each containing infinitely many terms.
  • The Nested Interval Property (a form of completeness of R\mathbb{R}) pins down a single point common to all the intervals; the subsequence converges to it.
  • Boundedness is essential: the unbounded sequence an=na_n = n has no convergent subsequence at all.
  • The theorem is equivalent, in a precise sense, to the completeness of R\mathbb{R} — it fails outright over Q\mathbb{Q}.
  • It underlies compactness of closed bounded sets, the Extreme Value Theorem, and the equivalence of Cauchy sequences with convergent sequences.
  • Key idea: boundedness plus infinitely many terms forces infinite repetition near some point, and completeness of R\mathbb{R} turns that repetition into an actual limit.

Where this lives today

The Bolzano–Weierstrass theorem is a load-bearing wall of real analysis, not an isolated curiosity. It is the standard tool for proving that every Cauchy sequence of reals converges (extract a convergent subsequence via Bolzano–Weierstrass, then show the whole Cauchy sequence must converge to the same limit) — see Cauchy Sequences and Completeness. It underlies the Extreme Value Theorem (a continuous function on [a,b][a,b] attains a maximum): one takes a maximizing sequence, extracts a convergent subsequence via Bolzano–Weierstrass, and uses continuity to show the limit is where the maximum occurs. In topology, the theorem is the prototype for sequential compactness, and the fact that closed bounded subsets of Rn\mathbb{R}^n are compact (the Heine–Borel theorem) is essentially a repackaging of Bolzano–Weierstrass. This compactness feeds directly into optimization theory, where guaranteeing that minimizers or maximizers exist over bounded feasible regions relies on exactly this sequential extraction argument — used constantly in economics, physics variational principles, and machine learning convergence proofs. In dynamical systems, bounded orbits are analyzed via their accumulation points (omega-limit sets), a direct descendant of Bolzano–Weierstrass reasoning: a bounded trajectory must have subsequential limits, and the structure of the set of all such limits governs long-term behavior. In numerical analysis, the theorem justifies that iterative algorithms confined to a bounded region have subsequences converging to candidate fixed points, a standard step in convergence proofs for optimization algorithms such as gradient descent variants and fixed-point iteration schemes. It also connects forward to the notions of Limit Superior and Limit Inferior, which can be defined precisely as the largest and smallest subsequential limits guaranteed to exist by this very theorem.

Ask the tutor: Can you show me step-by-step how to extract an explicit convergent subsequence from an=cos⁡(n)a_n = \cos(n)?

DefinitionBounded sequence, subsequence, convergence

Let (an)n=1∞(a_n)_{n=1}^\infty be a sequence of real numbers.

Bounded. The sequence is bounded if there exists M>0M > 0 such that ∣an∣≤M|a_n| \le M for all n∈Nn \in \mathbb{N}.

Subsequence. A subsequence of (an)(a_n) is a sequence of the form (ank)k=1∞(a_{n_k})_{k=1}^\infty, where n1<n2<n3<⋯n_1 < n_2 < n_3 < \cdots is a strictly increasing sequence of natural numbers.

Convergence. A sequence (bk)(b_k) converges to L∈RL \in \mathbb{R} if for every ε>0\varepsilon > 0 there exists K∈NK \in \mathbb{N} such that ∣bk−L∣<ε|b_k - L| < \varepsilon for all k≥Kk \ge K. We write bk→Lb_k \to L or lim⁡k→∞bk=L\lim_{k\to\infty} b_k = L. The Bolzano–Weierstrass theorem asserts: if (an)(a_n) is bounded, then there exists a subsequence (ank)(a_{n_k}) and a real number LL such that ank→La_{n_k} \to L.

Intuition

Picture a bounded sequence as an infinite swarm of points, all confined to some interval [−M,M][-M, M]. Since there are infinitely many points but only a finite-length interval to hold them, the points cannot spread out evenly forever — they must crowd. The Bolzano–Weierstrass theorem says this crowding is not just visual intuition; it is mathematically inevitable and produces an actual convergent subsequence. The proof strategy mirrors a search technique: keep bisecting the interval, at each stage keeping the half that still contains infinitely many terms of the sequence (at least one half always must, since the whole is infinite and a finite union of two halves can't both be finite). This produces a nested sequence of shrinking intervals, each containing infinitely many terms, whose lengths shrink to zero. The Nested Interval Property — itself a consequence of the completeness of R\mathbb{R} — guarantees these intervals converge on a single point LL. Because each interval still holds infinitely many terms, we can always find a later term of the sequence inside it, letting us build a genuine subsequence converging to LL.

Figure
Repeated bisection trapping infinitely many terms of a bounded sequence
I₀ = [−4, 4] I₁ = [−4, 0] (infinitely many terms) I₂ = [−2, 0] (infinitely many terms) L shrinking nested intervals ⇒ L = ∩ Iₖ

Central theorem and proof

TheoremBolzano–Weierstrass Theorem

Let (an)n=1∞(a_n)_{n=1}^\infty be a sequence of real numbers such that there exists M>0M > 0 with ∣an∣≤M|a_n| \le M for all nn. Then there exists a subsequence (ank)k=1∞(a_{n_k})_{k=1}^\infty and a real number L∈[−M,M]L \in [-M, M] such that

lim⁡k→∞ank=L.\lim_{k \to \infty} a_{n_k} = L.
Proof

Technique: nested bisection combined with the Nested Interval Property. Since (an)(a_n) is bounded, all terms lie in the closed interval I0=[−M,M]I_0 = [-M, M]. Say an interval "contains infinitely many terms of the sequence" if the set {n∈N:an∈interval}\{n \in \mathbb{N} : a_n \in \text{interval}\} is infinite.

Step 1: Construct a nested sequence of intervals. We build closed intervals I0⊇I1⊇I2⊇⋯I_0 \supseteq I_1 \supseteq I_2 \supseteq \cdots, each containing infinitely many terms of the sequence, with length(Ik)=2M2k\text{length}(I_k) = \frac{2M}{2^k}. Base case: I0=[−M,M]I_0 = [-M, M] contains all terms of the sequence (infinitely many, since the index set N\mathbb{N} is infinite). Inductive step: suppose Ik=[ck,dk]I_k = [c_k, d_k] has been constructed and contains infinitely many terms. Let mk=ck+dk2m_k = \frac{c_k + d_k}{2} be its midpoint, and split IkI_k into

Ikleft=[ck,mk],Ikright=[mk,dk].I_k^{\text{left}} = [c_k, m_k], \qquad I_k^{\text{right}} = [m_k, d_k].

The index set Sk={n:an∈Ik}S_k = \{ n : a_n \in I_k \} is infinite by the inductive hypothesis, and

Sk={n∈Sk:an∈Ikleft}∪{n∈Sk:an∈Ikright}.S_k = \{n \in S_k : a_n \in I_k^{\text{left}}\} \cup \{n \in S_k : a_n \in I_k^{\text{right}}\}.

This is a union of two sets whose union is infinite. If both were finite, their union would be finite (a finite union of finite sets is finite), contradicting that SkS_k is infinite. Hence at least one of the two sets is infinite. Define Ik+1I_{k+1} to be whichever of Ikleft,IkrightI_k^{\text{left}}, I_k^{\text{right}} has infinitely many terms of the sequence in it (if both do, choose the left one, say, to fix a convention). By construction Ik+1⊆IkI_{k+1} \subseteq I_k and

length(Ik+1)=12 length(Ik)=2M2k+1.\text{length}(I_{k+1}) = \tfrac{1}{2}\,\text{length}(I_k) = \frac{2M}{2^{k+1}}.

This completes the inductive construction of a nested sequence I0⊇I1⊇I2⊇⋯I_0 \supseteq I_1 \supseteq I_2 \supseteq \cdots of closed bounded intervals with length(Ik)=2M/2k→0\text{length}(I_k) = 2M/2^k \to 0, each containing infinitely many terms of the sequence.

Step 2: Apply the Nested Interval Property to obtain a limit point LL. Write Ik=[ck,dk]I_k = [c_k, d_k]. The sequence (ck)(c_k) is nondecreasing (since Ik+1⊆IkI_{k+1} \subseteq I_k forces ck≤ck+1c_k \le c_{k+1}) and bounded above by d0=Md_0 = M. By the Monotone Convergence Theorem, (ck)(c_k) converges to some limit LL; explicitly,

L=sup⁡kck,L = \sup_k c_k,

which exists because {ck}\{c_k\} is a nonempty set bounded above, and the supremum exists by the completeness (least upper bound property) of R\mathbb{R}. We check L∈IkL \in I_k for every kk. Fix kk. For every j≥kj \ge k we have cj≥ckc_j \ge c_k (monotonicity) and cj≤dj≤dkc_j \le d_j \le d_k (since Ij⊆IkI_j \subseteq I_k for j≥kj\ge k), so ck≤cj≤dkc_k \le c_j \le d_k for all j≥kj \ge k; taking j→∞j \to \infty (using cj→Lc_j \to L) gives ck≤L≤dkc_k \le L \le d_k, i.e. L∈IkL \in I_k. Since kk was arbitrary,

L∈⋂k=0∞Ik.L \in \bigcap_{k=0}^{\infty} I_k.

(This intersection is in fact a single point, since length(Ik)→0\mathrm{length}(I_k)\to 0: if L,L′L, L' both belonged to every IkI_k then ∣L−L′∣≤length(Ik)→0|L - L'| \le \text{length}(I_k) \to 0, forcing L=L′L = L'. We only need L∈⋂kIkL \in \bigcap_k I_k for what follows.)

Step 3: Construct the subsequence converging to LL. We choose indices n1<n2<n3<⋯n_1 < n_2 < n_3 < \cdots recursively so that ank∈Ika_{n_k} \in I_k for every k≥1k \ge 1. Since I1I_1 contains infinitely many terms of the sequence, the index set S1={n:an∈I1}S_1 = \{n : a_n \in I_1\} is infinite, hence nonempty; choose any n1∈S1n_1 \in S_1. Suppose n1<⋯<nkn_1 < \cdots < n_k have been chosen with anj∈Ija_{n_j} \in I_j for j=1,…,kj = 1, \dots, k. The set Sk+1={n:an∈Ik+1}S_{k+1} = \{n : a_n \in I_{k+1}\} is infinite (by construction of Ik+1I_{k+1}), so in particular it is not contained in the finite set {1,2,…,nk}\{1, 2, \dots, n_k\}; choose nk+1∈Sk+1n_{k+1} \in S_{k+1} with nk+1>nkn_{k+1} > n_k. This is possible precisely because an infinite set of natural numbers cannot be a subset of a finite initial segment {1,…,nk}\{1,\dots,n_k\}. This recursively defines a strictly increasing sequence of indices n1<n2<⋯n_1 < n_2 < \cdots with ank∈Ika_{n_k} \in I_k for every kk.

Step 4: Show ank→La_{n_k} \to L. Fix ε>0\varepsilon > 0. Since L∈IkL \in I_k and ank∈Ika_{n_k} \in I_k, and IkI_k has length 2M/2k2M/2^k, we get

∣ank−L∣≤length(Ik)=2M2k.|a_{n_k} - L| \le \text{length}(I_k) = \frac{2M}{2^k}.

Since 2M/2k→02M/2^k \to 0 as k→∞k \to \infty (this follows because 2k→∞2^k \to \infty, a standard fact provable by induction and the Archimedean property), choose KK so large that 2M/2K<ε2M/2^K < \varepsilon; then for all k≥Kk \ge K,

∣ank−L∣≤2M2k≤2M2K<ε.|a_{n_k} - L| \le \frac{2M}{2^k} \le \frac{2M}{2^K} < \varepsilon.

Hence ank→La_{n_k} \to L. Since L∈I0=[−M,M]L \in I_0 = [-M, M], we also have L∈[−M,M]L \in [-M,M], completing the proof. ■\blacksquare

∎

This proof uses only: the Archimedean property, the least upper bound property of R\mathbb{R} (via the Monotone Convergence Theorem), and elementary combinatorics of finite versus infinite sets. It is non-circular: nowhere does it assume convergent subsequences exist or invoke compactness — it builds the convergent subsequence from scratch.

CorollaryBolzano–Weierstrass for sequences in Rd\mathbb{R}^d

Every bounded sequence in Rd\mathbb{R}^d has a convergent subsequence, where convergence and boundedness are with respect to the Euclidean norm.

Proof

Technique: iterate the 1-dimensional theorem coordinate by coordinate. Let (xn)(\mathbf{x}_n) be a bounded sequence in Rd\mathbb{R}^d, xn=(xn(1),…,xn(d))\mathbf{x}_n = (x_n^{(1)}, \dots, x_n^{(d)}), with ∥xn∥≤M\|\mathbf{x}_n\| \le M for all nn. Since ∣xn(i)∣≤∥xn∥≤M|x_n^{(i)}| \le \|\mathbf{x}_n\| \le M for each coordinate ii, each coordinate sequence (xn(i))n(x_n^{(i)})_n is a bounded real sequence. Apply the theorem to the first coordinate sequence (xn(1))(x_n^{(1)}): obtain a subsequence indexed by nk(1)n_k^{(1)} with xnk(1)(1)→L1x_{n_k^{(1)}}^{(1)} \to L_1. Now the second-coordinate sequence restricted to these indices, (xnk(1)(2))k(x_{n_k^{(1)}}^{(2)})_k, is again bounded; apply the theorem again to extract a further subsequence (indices nk(2)n_k^{(2)}, a subsequence of the nk(1)n_k^{(1)}) along which the second coordinate converges to some L2L_2 — and, since it's a subsequence of a convergent sequence, the first coordinate still converges to L1L_1 along these indices (subsequences of convergent sequences converge to the same limit). Iterating this dd times (finitely many steps) produces a single subsequence along which every coordinate converges, to limits L1,…,LdL_1, \dots, L_d. Convergence in each coordinate is equivalent to convergence in the Euclidean norm to L=(L1,…,Ld)\mathbf{L} = (L_1, \dots, L_d), since

∥xnk−L∥≤∑i=1d∣xnk(i)−Li∣→0.\|\mathbf{x}_{n_k} - \mathbf{L}\| \le \sum_{i=1}^d |x_{n_k}^{(i)} - L_i| \to 0.

■\blacksquare

∎

Worked examples

Example 1. Consider the sequence

an=(−1)n(2−1n),n=1,2,3,…a_n = (-1)^n \left(2 - \frac{1}{n}\right), \qquad n = 1, 2, 3, \dots

So a1=−1a_1 = -1, a2=1.5a_2 = 1.5, a3=−53≈−1.667a_3 = -\tfrac{5}{3} \approx -1.667, a4=1.75a_4 = 1.75, a5=−1.8a_5 = -1.8, a6≈1.83‾a_6 \approx 1.8\overline{3}, and so on. Since ∣2−1n∣<2\left|2 - \frac{1}{n}\right| < 2 for all n≥1n \ge 1, we have ∣an∣<2|a_n| < 2, so the sequence is bounded (take M=2M = 2). The sequence does not converge: the even-indexed terms a2k=2−12ka_{2k} = 2 - \frac{1}{2k} increase toward 22, while the odd-indexed terms a2k−1=−(2−12k−1)a_{2k-1} = -\left(2 - \frac{1}{2k-1}\right) decrease toward −2-2; these are two different accumulation behaviors, so the whole sequence has no single limit (formally: if an→La_n \to L then every subsequence converges to LL, but a2k→2a_{2k}\to2 and a2k−1→−2a_{2k-1}\to -2 are two different subsequential limits, a contradiction). Bolzano–Weierstrass guarantees some convergent subsequence exists, and indeed we can exhibit two:

nk=2k  ⟹  ank=2−12k→2,n_k = 2k \implies a_{n_k} = 2 - \frac{1}{2k} \to 2,
nk=2k−1  ⟹  ank=−2+12k−1→−2.n_k = 2k - 1 \implies a_{n_k} = -2 + \frac{1}{2k-1} \to -2.

Both are valid convergent subsequences, illustrating that the theorem promises existence, not uniqueness, of a convergent subsequence — different subsequences may converge to different limits.

Example 2. Let (rn)(r_n) be an enumeration of the rational numbers in [0,1][0,1] (such an enumeration exists since Q∩[0,1]\mathbb{Q} \cap [0,1] is countable). Concretely, list them as

r1=0, r2=1, r3=12, r4=13, r5=23, r6=14, r7=34, r8=15,…r_1 = 0,\ r_2 = 1,\ r_3 = \tfrac12,\ r_4 = \tfrac13,\ r_5 = \tfrac23,\ r_6 = \tfrac14,\ r_7=\tfrac34,\ r_8=\tfrac15,\dots

(all fractions in lowest terms with increasing denominators). This sequence is bounded (0≤rn≤10 \le r_n \le 1 for all nn), but it has no limit at all — it jumps around [0,1][0,1] visiting every rational, never settling. We are guaranteed a convergent subsequence. Let's construct one converging to L=12≈0.70710678L = \frac{1}{\sqrt 2} \approx 0.70710678, an irrational number not among the rnr_n's values as a limit reached in finitely many steps, but approximable arbitrarily well: for each kk, since the rationals are dense in [0,1][0,1], there are infinitely many nn with ∣rn−12∣<1k|r_n - \tfrac{1}{\sqrt2}| < \tfrac1k (density means every interval around 1/21/\sqrt2, however small, contains infinitely many terms of any enumeration of a dense set — in particular infinitely many terms of (rn)(r_n), since only finitely many rationals in [0,1][0,1] have denominator below any bound, but infinitely many rationals lie in each such small interval). Concretely, pick n1n_1 with ∣rn1−12∣<1|r_{n_1} - \tfrac{1}{\sqrt2}| < 1, then n2>n1n_2 > n_1 with ∣rn2−12∣<12|r_{n_2} - \tfrac1{\sqrt2}| < \tfrac12, and so on, at each stage using that infinitely many indices remain available (exactly the bisection argument's Step 3 logic, applied directly instead of via intervals). This produces rnk→12r_{n_k} \to \tfrac1{\sqrt2}. This example shows concretely why the proof method (bisection trapping infinitely many terms) is really necessary — no algebraic trick isolates a convergent piece of such an erratic sequence; only the pigeonhole/infinitude argument does.

CounterexampleBoundedness cannot be dropped

Consider the sequence an=na_n = n for n=1,2,3,…n = 1, 2, 3, \dots, which is unbounded: for every M>0M > 0, there is a term (n>Mn > M) exceeding MM.

Claim: (an)(a_n) has no convergent subsequence.

Proof of claim. Suppose for contradiction (ank)(a_{n_k}) were a subsequence converging to some L∈RL \in \mathbb{R}. Convergent sequences are bounded: choosing ε=1\varepsilon = 1, there is KK with ∣ank−L∣<1|a_{n_k} - L| < 1 for all k≥Kk \ge K, so ∣ank∣<∣L∣+1|a_{n_k}| < |L| + 1 for k≥Kk \ge K, and the finitely many terms an1,…,anK−1a_{n_1}, \dots, a_{n_{K-1}} are individually bounded, so (ank)k(a_{n_k})_k is a bounded sequence. But ank=nk≥ka_{n_k} = n_k \ge k (since n1<n2<⋯n_1 < n_2 < \cdots are distinct positive integers, so nk≥kn_k \ge k), forcing ank→∞a_{n_k} \to \infty, contradicting boundedness. □\square This shows the hypothesis of boundedness in the Bolzano–Weierstrass theorem is not a technical convenience — it is essential. Every step of the bisection proof breaks down without it: Step 1 cannot even begin, since there is no finite starting interval I0=[−M,M]I_0 = [-M, M] containing all the terms.

Scope, edge cases & common traps

SituationWhat happens
Sequence bounded, does not convergeGuaranteed: at least one convergent subsequence exists (theorem applies)
Sequence unboundedTheorem does not apply; may have no convergent subsequence at all (e.g. an=na_n = n)
Sequence unbounded but with a bounded subsequenceA convergent subsequence can still exist, e.g. an=na_n = n if nn odd, an=1/na_n = 1/n if nn even — theorem doesn't apply to the whole sequence, but a bounded piece may still converge
Sequence already convergentEvery subsequence converges to the same limit; theorem's conclusion is automatic and not very informative
Working over Q\mathbb{Q} instead of R\mathbb{R}Fails: e.g. rational truncations of 2\sqrt2 are bounded but no subsequence converges to a rational number, and Q\mathbb{Q} has no limit for it
Sequence in Rd\mathbb{R}^dHolds, proved by applying the 1-D theorem coordinate-by-coordinate (Corollary above)
Infinite-dimensional spaces (e.g. ℓ2\ell^2)Fails in general — bounded sequences need not have convergent subsequences; this is why finite dimension matters

The mathematician behind it

Origins · 1 minBernard Bolzano and how this was discovered
BB
Bernard Bolzano
1781–1848 · Prague, Bohemia

A priest, philosopher, and mathematician working largely in isolation in Prague under Austrian political censorship (his writings on religion and social reform led to his dismissal from his university post in 1819). Bolzano anticipated much of rigorous real analysis decades before it became mainstream: he gave an early proof-sketch of what we now call the Bolzano–Weierstrass theorem in an 1817 manuscript on the Intermediate Value Theorem, and constructed one of the first examples of a continuous nowhere-differentiable function, though this work remained largely unpublished and unknown to his contemporaries until much later.

History
- 1817 — Bolzano's manuscript Rein analytischer Beweis gives an early, largely unnoticed argument for the existence of accumulation points of bounded infinite sets of reals, en route to proving the Intermediate Value Theorem rigorously.
- 1860s — Karl Weierstrass, lecturing in Berlin, independently develops and popularizes the bisection argument as part of his broader program to arithmetize analysis, giving the theorem its modern rigor and its place in the standard curriculum.
- 1870s — Eduard Heine and Georg Cantor develop related completeness ideas (Cauchy sequences, nested intervals), cementing the theorem's role within the broader theory of the real number system's completeness.
- 1883 — Cantor's work on set theory and the real line clarifies the topological content of the theorem: bounded closed sets of reals are what would later be called sequentially compact.
- 1906 — Maurice Fréchet, formalizing metric spaces, generalizes the sequential compactness idea, showing exactly which spaces retain the Bolzano–Weierstrass property and which (like infinite-dimensional normed spaces) do not.
Does the Bolzano–Weierstrass theorem tell us the whole sequence converges?

No. It only guarantees the existence of some subsequence that converges; the original sequence may not converge at all. A classic example is an=(−1)n(2−1/n)a_n = (-1)^n(2 - 1/n), which is bounded but oscillates between values approaching 22 and −2-2, so it has no limit itself, even though the even-indexed and odd-indexed subsequences each converge (to 22 and −2-2 respectively). The theorem is purely an existence statement about some subsequence, not a convergence statement about the whole sequence. To conclude the whole sequence converges, you additionally need every subsequence to share the same limit, or equivalently that the sequence is Cauchy.

Why does boundedness matter so much — can't we just take a "limit at infinity"?

Boundedness prevents the sequence from escaping to ±∞\pm\infty, which would make convergence to a finite real number impossible for any subsequence. If an=na_n = n, every subsequence ank=nka_{n_k} = n_k also diverges to +∞+\infty, since nk≥k→∞n_k \ge k \to \infty. There is no finite region to which the bisection argument can confine infinitely many terms, so the entire proof strategy collapses at its very first step. Boundedness is precisely the hypothesis that guarantees a finite starting interval containing infinitely many (indeed, all) terms, which is where the whole bisection machine begins.

Is the converse of the theorem true — does having a convergent subsequence imply the whole sequence is bounded?

No, and this converse is false. Consider an=na_n = n if nn is odd, and an=1/na_n = 1/n if nn is even. This sequence is unbounded (the odd terms grow without bound), yet the even-indexed subsequence a2k=1/(2k)→0a_{2k} = 1/(2k) \to 0 converges. So a convergent subsequence can coexist with an unbounded overall sequence. The correct logical relationship is one-directional: bounded   ⟹  \implies (some subsequence converges), but the reverse implication does not hold.

How does this theorem relate to Cauchy sequences?

Bolzano–Weierstrass is the crucial engine in proving that every Cauchy sequence of reals converges (i.e., that R\mathbb{R} is complete in the Cauchy sense). Given a Cauchy sequence, one first shows it is bounded (a short direct argument from the Cauchy condition), then applies Bolzano–Weierstrass to extract a convergent subsequence with limit LL. A final argument — using the Cauchy property to control the gap between any term and terms far out in the convergent subsequence — shows the whole sequence converges to LL, not just the subsequence. This is exactly the bridge to Cauchy Sequences and Completeness.

Does the theorem hold for sequences of complex numbers?

Yes. A bounded sequence of complex numbers (zn)(z_n), meaning ∣zn∣≤M|z_n| \le M for all nn, has a convergent subsequence. The proof follows the R2\mathbb{R}^2 approach: apply Bolzano–Weierstrass to the real parts to extract a subsequence along which Re(zn)\mathrm{Re}(z_n) converges, then apply it again to the imaginary parts along that subsequence to extract a further subsequence along which both real and imaginary parts converge. This is a special case of the Rd\mathbb{R}^d corollary with d=2d = 2, since C\mathbb{C} is isomorphic to R2\mathbb{R}^2 as a metric space.

Why does the theorem fail in infinite-dimensional spaces like ℓ2\ell^2?

In infinite dimensions, boundedness no longer forces "crowding." Consider the standard basis sequence ene_n in ℓ2\ell^2 (the nn-th coordinate is 11, all others 00). Each ene_n has norm 11, so the sequence is bounded, but ∥en−em∥=2\|e_n - e_m\| = \sqrt{2} for all n≠mn \ne m, so no subsequence can be Cauchy, and hence none converges. This shows the Bolzano–Weierstrass property is special to finite-dimensional spaces (or more generally, to compact sets); it is intimately tied to the Heine–Borel characterization of compactness, which also fails in infinite dimensions.

What's the fastest way to remember the proof?

Bisect, keep the infinite half, repeat forever; the shrinking intervals trap a unique limit point by completeness, and you can always find sequence terms deeper and deeper inside because each interval still holds infinitely many terms. In one line: boundedness gives a starting box; infinitude of the index set guarantees you never run out of terms to chase into ever-smaller sub-boxes; completeness (via nested intervals or the Monotone Convergence Theorem) hands you the limit.

Before this

Where this leads