Alexandrov One-Point Compactification

lean4-prooftopologyvisualization
X locally compact HausdorffX+=X{} compactX\text{ locally compact Hausdorff} \Rightarrow X^+ = X\cup\{\infty\}\text{ compact}

Statement

Let XX be a locally compact Hausdorff space. Form X+=X{}X^+ = X \cup \{\infty\} (the one-point compactification or Alexandrov compactification) with the topology:

  • Every open set of XX is open in X+X^+.
  • A set UU \ni \infty is open in X+X^+ if and only if XUX \setminus U is compact and closed in XX.

Then X+X^+ is compact. Moreover, if XX is locally compact and T2T_2, then X+X^+ is T2T_2 as well.

In Mathlib, this is OnePoint X with the instance CompactSpace (OnePoint X).

Visualization

R{}S1\mathbb{R} \cup \{\infty\} \cong S^1 via stereographic projection:

Stereographic projection: ℝ → S¹ \ {N}  (N = north pole)

  S¹ (unit circle in ℝ²):

              N = ∞ (north pole)
              ●
             /|\
            / | \
           /  |  \
     ─────●───┼───●──────  ← ℝ (number line, south equator)
          -1  0   1
              │
     Line through N and x ∈ ℝ hits S¹ at unique point φ(x)

  As x → ±∞ along ℝ,  φ(x) → N = ∞

  φ: ℝ → S¹\{N},  φ(x) = ( 2x/(x²+1),  (x²-1)/(x²+1) )

  OnePoint ℝ ≅ S¹  (compact — the circle wraps around)

Neighborhoods of \infty:

Compact subsets of ℝ:   K = [−R, R] for large R
Open neighborhood of ∞: U_R = ℝ\[−R,R] ∪ {∞} = (−∞,−R) ∪ (R,∞) ∪ {∞}

  ──────)─────────────────────────(────────●
      -R                          R        ∞
       ↑                          ↑
  ←────────────── U_R ────────────────────→ (open in ℝ⁺)

Proof Sketch

  1. Topology is well-defined: The two types of open sets (open in XX, and complements of compact closed sets plus \infty) are closed under finite intersections and arbitrary unions.
  2. Compactness: Given an open cover U\mathcal{U} of X+X^+, some U0UU_0 \in \mathcal{U} contains \infty. By definition K=X+U0K = X^+ \setminus U_0 is compact in XX. The remaining members of U\mathcal{U} cover KK, yielding a finite subcover {U1,,Un}\{U_1, \ldots, U_n\}. Then {U0,U1,,Un}\{U_0, U_1, \ldots, U_n\} is a finite subcover of X+X^+.
  3. Hausdorff: For x,yXx, y \in X use local compactness; for xXx \in X and \infty, take a compact neighborhood KxK \ni x and open UKc{}U \supseteq K^c \cup \{\infty\}.

Connections

  • Heine–Borel TheoremHeine–Borel TheoremKRn  compact    K  closed and boundedK \subseteq \mathbb{R}^n \;\text{compact} \iff K \;\text{closed and bounded}In ℝⁿ, a subset is compact if and only if it is closed and boundedRead more → — Heine–Borel characterizes compact subsets of Rn\mathbb{R}^n; the one-point compactification makes these the "finite" part of X+X^+, with neighborhoods of \infty being complements of compact sets.
  • Tychonoff's TheoremTychonoff's TheoremiIXi compact    i,  Xi compact\prod_{i \in I} X_i \text{ compact} \iff \forall i,\; X_i \text{ compact}An arbitrary product of compact spaces is compact in the product topologyRead more → — Tychonoff gives compactness of arbitrary products; one-point compactification gives compactness by adding a single point. Both are tools for producing compact spaces.
  • Continuous Bijection on Compact-Hausdorff is HomeoContinuous Bijection on Compact-Hausdorff is Homeof:XY continuous bijection,  X compact,  Y Hausdorfff homeomorphismf: X\xrightarrow{\sim} Y\text{ continuous bijection},\;X\text{ compact},\;Y\text{ Hausdorff}\Rightarrow f\text{ homeomorphism}A continuous bijection from a compact space to a Hausdorff space is automatically a homeomorphismRead more → — the homeomorphism R+S1\mathbb{R}^+ \cong S^1 is an instance: the stereographic projection is a continuous bijection from a compact space to a Hausdorff space.
  • Urysohn's LemmaUrysohn's Lemmaf:X[0,1],fs=0,  ft=1\exists\, f : X \to [0,1],\quad f|_s = 0,\; f|_t = 1In a normal space, disjoint closed sets can be separated by a continuous functionRead more →X+X^+ is normal when XX is locally compact T2T_2 (Mathlib: OnePoint.instNormalSpace); Urysohn's lemma then applies to X+X^+.

Lean4 Proof

import Mathlib.Topology.Compactification.OnePoint.Basic

/-- **Alexandrov one-point compactification** is compact.
    `OnePoint X` is Mathlib's name for X ∪ {∞};
    `CompactSpace (OnePoint X)` is a direct instance. -/
theorem onePoint_compact (X : Type*) [TopologicalSpace X] :
    CompactSpace (OnePoint X) :=
  inferInstance