# Bolzano–Weierstrass theorem

In mathematics, specifically in real analysis, the Bolzano–Weierstrass theorem, named after Bernard Bolzano and Karl Weierstrass, is a fundamental result about convergence in a finite-dimensional Euclidean space Rn. The theorem states that each bounded sequence in Rn has a convergent subsequence.[1] An equivalent formulation is that a subset of Rn is sequentially compact if and only if it is closed and bounded.[2] The theorem is sometimes called the sequential compactness theorem.[3]

## History and significance

The Bolzano–Weierstrass theorem is named after mathematicians Bernard Bolzano and Karl Weierstrass. It was actually first proved by Bolzano in 1817 as a lemma in the proof of the intermediate value theorem. Some fifty years later the result was identified as significant in its own right, and proved again by Weierstrass. It has since become an essential theorem of analysis.

## Proof

First we prove the theorem for ${\displaystyle \mathbb {R} ^{1}}$ (set of all real numbers), in which case the ordering on ${\displaystyle \mathbb {R} ^{1}}$ can be put to good use. Indeed, we have the following result:

Lemma: Every infinite sequence ${\displaystyle (x_{n})}$ in ${\displaystyle \mathbb {R} ^{1}}$ has a monotone subsequence.

Proof: Let us call a positive integer-valued index ${\displaystyle n}$ of a sequence a "peak" of the sequence when ${\displaystyle x_{m} for every ${\displaystyle m>n}$. Suppose first that the sequence has infinitely many peaks, which means there is a subsequence with the following indices ${\displaystyle n_{1} and the following terms ${\displaystyle x_{n_{1}}>x_{n_{2}}>x_{n_{3}}>\dots >x_{n_{j}}>\dots }$. So, the infinite sequence ${\displaystyle (x_{n})}$ in ${\displaystyle \mathbb {R} ^{1}}$ has a monotone subsequence, which is ${\displaystyle (x_{n_{j}})}$. But suppose now that there are only finitely many peaks, let ${\displaystyle N}$ be the final peak and let the first index of a new subsequence ${\displaystyle (x_{n_{j}})}$ be set to ${\displaystyle n_{1}=N+1}$. Then ${\displaystyle n_{1}}$ is not a peak, since ${\displaystyle n_{1}}$ comes after the final peak, which implies the existence of ${\displaystyle n_{2}}$ with ${\displaystyle n_{1} and ${\displaystyle x_{n_{1}}\leq x_{n_{2}}}$. Again, ${\displaystyle n_{2}}$ comes after the final peak, hence there is an ${\displaystyle n_{3}}$ where ${\displaystyle n_{2} with ${\displaystyle x_{n_{2}}\leq x_{n_{3}}}$. Repeating this process leads to an infinite non-decreasing subsequence  ${\displaystyle x_{n_{1}}\leq x_{n_{2}}\leq x_{n_{3}}\leq \ldots }$, thereby proving that every infinite sequence ${\displaystyle (x_{n})}$ in ${\displaystyle \mathbb {R} ^{1}}$ has a monotone subsequence. [4]

Now suppose one has a bounded sequence in ${\displaystyle \mathbb {R} ^{1}}$; by the lemma proven above there exists a monotone subsequence, likewise also bounded. It follows from the monotone convergence theorem that this subsequence converges.

Finally, the general case (${\displaystyle \mathbb {R} ^{n}}$), can be reduced to the case of ${\displaystyle \mathbb {R} ^{1}}$ as follows: given a bounded sequence in ${\displaystyle \mathbb {R} ^{n}}$, the sequence of first coordinates is a bounded real sequence, hence it has a convergent subsequence. One can then extract a sub-subsequence on which the second coordinates converge, and so on, until in the end we have passed from the original sequence to a subsequence ${\displaystyle n}$ times—which is still a subsequence of the original sequence—on which each coordinate sequence converges, hence the subsequence itself is convergent.

## Alternative proof

There is also an alternative proof of the Bolzano–Weierstrass theorem using nested intervals. We start with a bounded sequence ${\displaystyle (x_{n})}$:

Because we halve the length of an interval at each step, the limit of the interval's length is zero. Thus there is a number ${\displaystyle x}$ that is in each interval ${\displaystyle I_{n}}$. Now we show, that ${\displaystyle x}$ is an accumulation point of ${\displaystyle (x_{n})}$.

Take a neighbourhood ${\displaystyle U}$ of ${\displaystyle x}$. Because the length of the intervals converges to zero, there is an interval ${\displaystyle I_{N}}$ that is a subset of ${\displaystyle U}$. Because ${\displaystyle I_{N}}$ contains by construction infinitely many members of ${\displaystyle (x_{n})}$ and ${\displaystyle I_{N}\subseteq U}$, also ${\displaystyle U}$ contains infinitely many members of ${\displaystyle (x_{n})}$. This proves that ${\displaystyle x}$ is an accumulation point of ${\displaystyle (x_{n})}$. Thus, there is a subsequence of ${\displaystyle (x_{n})}$ that converges to ${\displaystyle x}$.

## Sequential compactness in Euclidean spaces

Suppose A is a subset of Rn with the property that every sequence in A has a subsequence converging to an element of A. Then A must be bounded, since otherwise there exists a sequence xm in A with ||xm|| ≥ m for all m, and then every subsequence is unbounded and therefore not convergent. Moreover, A must be closed, since from a noninterior point x in the complement of A, one can build an A-valued sequence converging to x. Thus the subsets A of Rn for which every sequence in A has a subsequence converging to an element of A – i.e., the subsets that are sequentially compact in the subspace topology – are precisely the closed and bounded subsets.

This form of the theorem makes especially clear the analogy to the Heine–Borel theorem, which asserts that a subset of Rn is compact if and only if it is closed and bounded. In fact, general topology tells us that a metrizable space is compact if and only if it is sequentially compact, so that the Bolzano–Weierstrass and Heine–Borel theorems are essentially the same.

## Application to economics

There are different important equilibrium concepts in economics, the proofs of the existence of which often require variations of the Bolzano–Weierstrass theorem. One example is the existence of a Pareto efficient allocation. An allocation is a matrix of consumption bundles for agents in an economy, and an allocation is Pareto efficient if no change can be made to it that makes no agent worse off and at least one agent better off (here rows of the allocation matrix must be rankable by a preference relation). The Bolzano–Weierstrass theorem allows one to prove that if the set of allocations is compact and non-empty, then the system has a Pareto-efficient allocation.