# Proving half of the Heine-Borel theorem

Eclair_de_XII
TL;DR Summary
Any closed and bounded subset of the set of real numbers must be compact.

*Need someone to check my work and reasoning.
Let ##X## be a closed and bounded subset of the real numbers. Let ##\{x_i\}_{i\in I}##, for some index ##I##, represent the set of limit points of ##X##. Since ##X## is closed, it must follow that ##\{x_i\}_{i\in I}\subset X##. Hence, the set of limit points must be bounded.

Let ##\{U_j\}_{j\in J}## denote an open cover for ##X'##, where ##J## is some index. This open cover must own an open set ##U_0## s.t. ##\inf X'\in U_0##. Suppose there is ##x_i\in X'## s.t. ##x_i\notin U_0##. Then there must exist ##U_i\in\{U_j\}_{j\in J}## s.t. ##x_i\in U_i##. Let ##u_i:=\sup(U_i)##. Continuing in this fashion, we obtain a collection of open sets ##\{U_k\}_{k\in K}## that cover ##X'##, where ##K## is a subset of the natural numbers.

Assume ##\{U_k\}_{k\in K}## owns the minimal amount of elements and suppose this open cover has infinite cardinality. Then ##\{u_k\}_{k\in K}## is an increasing sequence of points that converges to its supremum, to be denoted ##u_0##.

Necessarily, there is an open set ##U'\in\{U_k\}_{k\in K}## s.t. ##u_0\in U'##. Let ##\epsilon>0## be small enough s.t. ##B(u_0,\epsilon)\subset U'##. Then there is a natural number ##N## s.t. whenever ##n\in\mathbb{N}## and ##n\geq N##, ##u_n\in B(u_0,\epsilon)\subset U'##. The open set ##U'## contains the set ##\{u_n:n\geq N\}##, and each of the ##N-1## sets of the form ##U_i## own ##u_i##. Hence, these ##N-1## covers ##U_i## and ##U'## are sufficient in order to cover ##X'##, contrary to the assumption that ##\{U_k\}_{k\in K}## is the smallest cover with this property.

Staff Emeritus
Gold Member
A couple notes.

1.) You don't need to know that X is closed to know the set of limit points is bounded. Your argument is right, but just knowing X is bounded is sufficient as well (if it's not clear why, this is a good exercise).

2.) Your hammering away at the collection of U"s doesn't work. I think your mental model should be that things that look like paragraph 2 are always wrong. Consider ##X=[0,1]## vs ##X=[0,1]\cup[2,3]##

I could hand you an open cover, and you could go through your whole procedure on the latter one, and only end up with a cover of [0,1]. You would then need to do it again to get a cover of the [2,3] part.

I also think you don't need it. Paragraph 3 is the right place to start. If you have an open cover with no finite sub over, then you can construct a countable sequence of points from it, even if the original cover was uncountably large. That sequence doesn't necessarily converge to the supremum, but what can you say about convergence?

PeroK
Eclair_de_XII
I could hand you an open cover, and you could go through your whole procedure on the latter one, and only end up with a cover of [0,1]. You would then need to do it again to get a cover of the [2,3] part.
I disagree.

Let ##U=\{(n-1.5,n+1.5)\}_{n\in\mathbb{Z}}##. Let ##x\in\mathbb{R^+}\cup\{0\}##. If ##x=0##, then take ##n=0##. Otherwise, there is an integer ##N## s.t. ##x\in(N-1,N]\subset(N-1.5,N+1.5)\subset U##. Hence, ##U## must be an open cover for the positive real numbers, and certainly ##X:=[0,1]\cup[2,3]\subset\mathbb{R^+}\cup\{0\}##.

There is an open interval in ##U## that owns the infimum of ##X'##, namely ##(-1.5,1.5)##. There is a point in ##X'## that does not belong to ##(-1.5,1.5)##, namely, ##2##, and so there is an open interval in ##U## that owns ##2##, namely, ##(1.5,3.5)##. There are no more points in ##X'## that belong to the complement of ##(-1.5,1.5)\cup(1.5,3.5)##. Hence, this union comprises a finite subcover for ##X'##.

If you have an open cover with no finite sub over, then you can construct a countable sequence of points from it, even if the original cover was uncountably large. That sequence doesn't necessarily converge to the supremum, but what can you say about convergence?
Necessarily, if we are constructing an open cover with the minimal number of elements, each open cover must own at least one point of ##X'##. If there are infinitely many open covers, it stands to reason that there are infinitely many limit points. By the Bolzano-Weierstrauss Theorem, there must exist a limit point ##x_0\in X''## with the property that any open set that owns ##x_0## owns infinitely many points of ##X'##. And since ##X'## is closed, it must follow that ##x_0\in X'##, and so, this guarantees the existence of an open set within the cover that owns ##x_0##. This open cover, to be denoted ##U_0##, owns the points that are contained in an infinite subset of the open cover, which means that you could nix that infinite subset from the open cover and replace it with ##U_0## to form a smaller subcover. This contradicts the fact that this open cover had the least number of elements.

Last edited:
Staff Emeritus
Gold Member
I disagree.

Let ##U=\{(n-1.5,n+1.5)\}_{n\in\mathbb{Z}}##. Let ##x\in\mathbb{R^+}\cup\{0\}##. If ##x=0##, then take ##n=0##. Otherwise, there is an integer ##N## s.t. ##x\in(N-1,N]\subset(N-1.5,N+1.5)\subset U##. Hence, ##U## must be an open cover for the positive real numbers, and certainly ##X:=[0,1]\cup[2,3]\subset\mathbb{R^+}\cup\{0\}##.

This just proves it works for your not very inspired choice. Here's one that's a bit tougher. Remember, your argument is not supposed to care which element of the open cover you pick.

##U## contains all sets of the form ##(-1,1-1/n)##. It also contains ##(0.5,1.5)##. It also contains all sets of the form ##(1.5,3-1/n)##, and lastly contains ##(2.5,3.5)##.

Then you start by taking points from all these sets ##(-1,1-1/n)##, and finding a slightly larger point in the set, and adding the next ##(-1,1-1/(n+1))##.

After a countable number of steps, you've still only (barely not even) covered [0,1]. Then you get the contradiction step which effectively finds the set ##(0.5,1.5)## and you've shown that [0,1] is covered. You haven't proven that after countable steps you can cover the whole set, because I can give you a cover such that if you pick out the "first" countable collection of open sets, you've still only covered part of the whole space.

Obviously in theory this argument can be fixed, but I think it's a mess to do so. Even just on the interval [0,1] I could have picked a cover that only reached out to 1/2 on the first round, then 3/4 on the second round, then 7/8 on the third round etc. So I can force you to do infinitely many rounds of this. How confident are you that this can only be forced countably infinitely many times? It might be true, or maybe it just turns out that this is not a method that is guaranteed to construct a finite cover eventually

Last edited:
PeroK and Eclair_de_XII