A topic in the Open Knowledge Graph — a free, open map of 15,290 topics and the order to learn them in.

Heine-Borel Theorem

Graduate Depth 76 in the knowledge graph ☐ I know this ☆ Set as goal
16topics build on this
339prerequisites beneath it
See this on the map →
Compact SetsOpen Sets on the Real Line+1 more→→Extreme Value Theorem (Proof via Compactness)Uniform Continuity on Compact Sets
heine-borel compactness closed-bounded

Core Idea

In ℝ, a set is compact if and only if it is closed and bounded. This theorem ties the abstract definition of compactness (open cover property) to the concrete notion of being contained in some bounded interval. It is specific to Euclidean space and does not hold in all metric spaces.

Explainer

From your study of compact sets, you know the abstract definition: a set K is compact if every open cover of K has a finite subcover. This definition is powerful but hard to verify directly — you'd need to check infinitely many possible open covers. The Heine-Borel theorem gives you a completely checkable equivalent in ℝⁿ: a set is compact if and only if it is closed and bounded. Checking whether [0, 1] is compact just became checking two easy conditions.

To see why both conditions are necessary, consider what happens when you drop one. The open interval (0, 1) is bounded but not closed — the sequence 1/n converges to 0, which is outside the set, so the set fails to contain all its limit points. You can build an open cover of (0, 1) that has no finite subcover: take Uₙ = (1/n, 1) for n = 1, 2, 3, …. Every point in (0, 1) is eventually covered, but any finite subcollection only covers points above some positive lower bound, missing points near 0. Now consider ℤ (the integers): closed but not bounded. Take the cover of singletons {n−1, n+1} for each n ∈ ℤ — each integer is covered, but removing any element of the cover leaves one integer uncovered, so no finite subcover exists. Boundedness keeps the set from stretching to infinity; closedness keeps it from leaking through its boundary.

The proof of the theorem in ℝ uses two tools you've seen: the Bolzano-Weierstrass theorem (every bounded sequence has a convergent subsequence) and the fact that a closed set contains all its limit points. The key idea is that an open cover that resists finite reduction must be "wasting" its sets on limit points that are somehow escaping — and if the set is closed and bounded, there's nowhere to escape to. In metric spaces beyond ℝⁿ — infinite-dimensional function spaces, for instance — closed and bounded no longer implies compact. This is why the theorem is prized: it collapses an infinite verification into two geometric checks, but only because ℝⁿ has just the right structure.

The practical import of Heine-Borel is that you can now classify compact sets at a glance: closed intervals [a, b], closed rectangles, closed balls in ℝⁿ — all compact. Open intervals, ℝ itself, the rationals in [0,1] — all fail at least one condition, hence not compact. Every theorem that requires compactness (extreme value theorem, uniform continuity, Riemann integrability) can now be invoked simply by verifying closedness and boundedness.

Practice Questions 5 questions

Prerequisite Chain

Understanding Zero → The Number Zero → Counting to Five → Counting to 10 → Counting to 20 → Counting a Set of Objects Up to 20 → Cardinality: The Last Number Counted → Matching Numerals to Quantities → Subitizing Small Quantities → Addition Within 10 → Number Bonds to 10 → Addition Within 20 → Doubles and Near Doubles → Doubles Facts Within 10 → Near Doubles Facts Within 20 → Mental Math Strategies for Addition → Mental Math: Adding and Subtracting Tens → Addition Within 100 → Repeated Addition as Multiplication → Multiplication as Equal Groups → Multiplication: Arrays → Basic Multiplication Facts (0s, 1s, 2s, 5s, 10s) → Multiplication Facts Within 100 → Division as Equal Sharing → Division as Grouping (Measurement Division) → Division: Grouping (Repeated Subtraction) Model → Division: Fair Sharing Model → Division as Equal Sharing → Division as Grouping → Basic Division Facts → Division Facts Within 100 → Multiplication and Division Fact Families → Relationship Between Multiplication and Division → Division Facts as Inverse of Multiplication → Remainders and Quotients in Division → Division Word Problems → Multi-Step Word Problems → Solving Multi-Step Word Problems → Multiplication Word Problems → Division Word Problems → Introduction to Long Division → Factors and Multiples → Prime and Composite Numbers → Equivalent Fractions → Relating Fractions and Decimals → Decimal Place Value → Integers and the Number Line → Comparing and Ordering Integers → Absolute Value → Adding Integers → Subtracting Integers → Multiplying Integers → Introduction to Exponents → Order of Operations → Integer Order of Operations → Variable Expressions → The Distributive Property → Variables and Expressions Review → Introduction to Polynomials → Adding and Subtracting Polynomials → Multiplying Polynomials → Multiplying Binomials (FOIL) → Factoring Trinomials → Factoring Completely → Introduction to Rational Expressions → Simplifying Radical Expressions → Operations with Radicals → Complex Numbers Introduction → Operations with Complex Numbers → Solving Quadratic Equations by Completing the Square → Quadratic Formula Review and Applications → Graphing Quadratic Functions: Vertex and Intercepts → Quadratic Inequalities → Polynomial Functions: Degree and Leading Coefficient → Weierstrass Approximation Theorem → Bolzano-Weierstrass Theorem → Heine-Borel Theorem

Longest path: 77 steps · 339 total prerequisite topics

Prerequisites (3)

Leads To (2)