closed-projection characterization of compactness



topology (point-set topology, point-free topology)

see also differential topology, algebraic topology, functional analysis and topological homotopy theory


Basic concepts

Universal constructions

Extra stuff, structure, properties


Basic statements


Analysis Theorems

topological homotopy theory


Statement and proof

There are a number of categorically-flavored ways of characterizing compact spaces; for example, as relational beta-modules XX where the beta-module structure ξ:β(X)X\xi: \beta(X) \nrightarrow X is an entire relation (satisfies 1 β(X)ξ ξ1_{\beta(X)} \leq \xi^\circ \xi). One of the more useful characterizations, as emphasized by Walter Tholen, is given by the following elementary statement (also one of the definitions listed in compact space):


A topological space XX is compact if and only if for every space YY, the projection map π:Y×XY\pi \colon Y \times X \to Y out of the product topological space is a closed map.

In this article we will collect a number of proofs and points of view on this result, and show how it makes possible a very direct hands-on proof of the Tychonoff theorem, without the need for infrastructure such as ultrafilters or nets. This type of proof may be adapted for use in undergraduate classrooms.

The “only if” half is covered in essentially every textbook and should be routine for any working mathematician, although it seems proofs often use needlessly many indices and look as though they tacitly invoke the axiom of choice. Our proof should help circumvent that impression.


If X,YX, Y are topological spaces with XX compact, then the projection map π:Y×XY\pi \colon Y \times X \to Y out of the product topological space is a closed map.


Let CY×XC \subseteq Y \times X be a closed subset; we must show the direct image π(C)\pi(C) is closed in YY. Suppose yπ(C)y \notin \pi(C); equivalently, suppose that the pre-image π 1(y)={y}×X\pi^{-1}(y) = \{y\} \times X does not intersect CC. By the nature of closed subsets (this lemma) it is sufficient that we find an open neighborhood VV of yy that does not intersect π(C)\pi(C), or equivalently such that (V×X)C=(V \times X) \cap C = \emptyset. Consider the collection of all open UXU \subseteq X such that (W×U)C=(W \times U) \cap C = \emptyset for some open neighborhood WW of yy. This collection covers XX, since (y,x)C(y, x) \notin C for every xXx \in X and by closure of CC we can therefore find a neighborhood W×UW \times U of (y,x)(y, x) that doesn’t intersect CC. By compactness of XX, this open cover has a finite subcover, say U 1,,U nU_1, \ldots, U_n. For each of these U iU_i there is a corresponding W iW_i such that (W i×U i)C=(W_i \times U_i) \cap C = \emptyset (in fact there is a unique largest such W iW_i: just take the union of all such). Now put V i=1 nW iV \coloneqq \bigcap_{i=1}^n W_i. We have for each ii between 11 and nn that V×U iW i×U i¬CV \times U_i \subseteq W_i \times U_i \subseteq \neg C (the complement of CC in X×YX \times Y), hence

V×X=V× i=1 nU i= i=1 nV×U i¬CV \times X \;=\; V \times \bigcup_{i=1}^n U_i \;=\; \bigcup_{i=1}^n V \times U_i \subseteq \neg C

so that (V×X)C=(V \times X) \cap C = \emptyset.

The “if” half is not quite so routine. We will first give a very direct proof that doesn’t involve any fancy machinery (such as ultrafilters), although the fancy machinery does help give a better conceptual understanding of what is really going on, as we explain below.


If XX is a topological space with the property that the projection π:Y×XY\pi \colon Y \times X \to Y out of the product topological space is a closed map for every space YY, then XX is compact.


Given a space XX satisfying this property, let (C i) iI(C_i)_{i \in I} be any collection of closed subsets of XX having the finite intersection property, that any intersection of finitely many C iC_i is inhabited. Compactness of XX will follow if we can show iIC i\bigcap_{i \in I} C_i is inhabited (by this prop.).

Given that collection, construct a space YY whose underlying set |Y|{|Y|} is formed by adjoining a point \infty to the underlying set of XX (so |Y|=|X|{}{|Y|} = {|X|} \sqcup \{\infty\}), and topologized by taking subbasis elements to consist of any subset of XX (not necessarily open) and any subset of the form C i{}C_i \cup \{\infty\}. (Thus we are embedding the “discretification” of XX in a larger space YY.) Let KY×XK \subseteq Y \times X be the topological closure of the set Δ={(x,x):x|X|}\Delta = \{(x, x): x \in {|X|}\}. By hypothesis, π(K)\pi(K) is closed in YY, and contains XX. But then it must also contain \infty because the finite intersection property of the collection (C i)(C_i) guarantees that \infty is not an open point of YY. It follows that KK contains a point of the form (,x)(\infty, x).

This means that every neighborhood (C i{})×U(C_i \cup \{\infty\}) \times U of (,x)(\infty, x) intersects the diagonal Δ\Delta in an inhabited set. In other words, C iUC_i \cap U is inhabited. But this means that xC ix \in C_i for every ii, for if xC ix \notin C_i for some ii, then by closure of C iC_i we could find an open neighborhood UU of xx such that C iU=C_i \cap U = \emptyset. Hence x iIC ix \in \bigcap_{i \in I} C_i, making this intersection inhabited, as required.


I (Todd Trimble) learned of this particular arrangement of proof during an email exchange with Tom Leinster, who told me he learned it from Ioan James. I don’t know who first invented it though. Pedagogically it is attractive because it avoids any need to discuss nets or ultrafilters or filters; it’s just straight-up topology of the kind taught at typical American undergraduate institutions.

Variant proofs

There are actually quite a few proofs of Proposition that appear in the literature. The proof given above might have been the result of a gradual whittling down from more abstract, high-powered-looking proofs.

  1. One “canonical” proof that a seasoned mathematician might dream up goes as follows. Consider Y=β(|X|)Y = \beta({|X|}), the space of ultrafilters on the underlying set |X|{|X|} of XX, or the Stone-Cech compactification of XX (retopologized as a discrete space). Let KY×XK \subseteq Y \times X be the convergence relation (i.e., (U,x)K(U, x) \in K iff the ultrafilter UU on the set XX converges to the point xx in the space XX). One readily checks that KK is closed. Thus π(K)Y\pi(K) \subseteq Y is closed by hypothesis. Also observe that the “diagonal” Δ={(prin(x),x):xX}\Delta = \{(prin(x), x): x \in X\}, where prin(x)prin(x) is the principal ultrafilter generated by xx, sits inside KK since prin(x)prin(x) converges to xx. So π(K)\pi(K) also contains all principal ultrafilters which form a dense subset of YY. Being closed and dense, π(K)\pi(K) is all of YY. But this just means that for every ultrafilter UU there is some (U,x)K(U, x) \in K, i.e., every ultrafilter converges to some point. This classically implies compactness of XX.

  2. On reflection, we didn’t really have to consider the entire space β(|X|)\beta({|X|}); we can just work with one ultrafilter at a time. So if we want to prove that every ultrafilter UU converges, we can just look at the subset |X|{U}β(|X|){|X|} \cup \{U\} \hookrightarrow \beta({|X|}) with the subspace topology coming from β(|X|)\beta({|X|}) and run through the same diagonal proof. This gives us the proof found in Bourbaki’s General Topology: given an ultrafilter UU on the underlying set of XX, form a new space YY whose underlying set is |X|{}{|X|} \sqcup \{\infty\} and topologized by saying all subsets of XX are open, and A{}A \sqcup \{\infty\} is an open neighborhood of \infty if AUA \in U. This is just a direct description of the subspace topology coming from β(|X|)\beta({|X|}), and the rest of the proof runs parallel to the proof given in 1.

  3. On further reflection, the ultrafilter convergence characterization of compact spaces does rely on the ultrafilter theorem (that every proper filter can be extended to an ultrafilter), which involves the axiom of choice or some choice-y principle outside ZF. If one doesn’t like this, one can always use just filters instead, and use the characterization of compact spaces that says that every proper filter on |X|{|X|} admits a cluster point. This characterization doesn’t require any form of Choice. So, one would start with Y=|X|{}Y = {|X|} \sqcup \{\infty\} but use a given proper filter FF to describe the neighborhoods of \infty; otherwise the description of YY looks just the same as before.

  4. On still further reflection, one doesn’t have to mention filters or cluster points at all. Instead one can work directly with a collection of sets C iC_i satisfying the finite intersection property, and secretly think of that as generating a filter (a proper one by the FIP) and then follow 3. to define the topology of the space YY. As it happens, a cluster point of that filter is just a point lying in the intersection of all the C iC_i. This brings us to the proof we gave of Proposition .

  5. Still other clever constructions of YY are available. One has been described by Martín Escardó (Escardó 09), who credits Leopold Nachbin. One nice feature is that Escardó favors a point of view where instead of defining a continuous map f:XZf: X \to Z to be closed if the direct image mapping or existential quantification f:P(X)P(Z)\exists_f: P(X) \to P(Z) preserves closed subsets, he uses instead the universal quantification f:P(X)P(Z)\forall_f: P(X) \to P(Z) and asks that this preserve open sets. This strategy circumvents the apparent use of excluded middle in proving Proposition : he proves it directly and constructively. In any case, he considers a directed open cover Σ\Sigma of the given space XX, then takes Y=𝒪(X)Y = \mathcal{O}(X), the set of open sets of XX, and topologizes YY by taking its inhabited open sets to be upward-closed subsets W𝒪(X)W \subseteq \mathcal{O}(X) such that WΣW \cap \Sigma is inhabited. Using the open-set formulation of closed maps, he then argues that XX belongs to Σ\Sigma, which proves compactness. (This argument was also reprised here.)


Tychonoff theorem

It has been observed by Clementino and Tholen that the closed-projection formulation of compactness (theorem ) allows a fairly efficient proof of the Tychonoff theorem, saying that the product topological space of any set of compact topological space is itself compact. First a very routine lemma.


Let (X i) i:I(X_i)_{i: I} be a family of topological spaces. Then for a point xx and subset AA of the product topological space i:IX i\prod_{i: I} X_i, we have xCl(A)x \in Cl(A) (the topological closure of xx) if, for every finite FIF \subseteq I, we have π F(x)Cl(π F(A))\pi_F(x) \in Cl(\pi_F(A)) under the projection map π F: i:IX i i:FX i\pi_F \colon \prod_{i: I} X_i \to \prod_{i: F} X_i.


Suppose xCl(A)x \notin Cl(A), so that there is an open neighborhood UU of xx such that UA=U \cap A = \emptyset (by this lemma). Sets of the pre-image of the form π i 1(U i)\pi_i^{-1}(U_i) for open U iX iU_i \subseteq X_i form a subbasis of the product topology, so there is a basis element π F 1(V)\pi_F^{-1}(V) (for some V=U i 1××U i nV = U_{i_1} \times \ldots \times U_{i_n} and F={i 1,,i n}F = \{i_1, \ldots, i_n\}) that is a neighborhood of xx and contained in UU, so we have Aπ F 1(V)=A \cap \pi_F^{-1}(V) = \emptyset or A¬π F 1(V)=π F 1(¬V)A \subseteq \neg \pi_F^{-1}(V) = \pi_F^{-1}(\neg V) (pre-image of the complement) or what is the same, π F(A)¬V\pi_F(A) \subseteq \neg V or π F(A)V=\pi_F(A) \cap V = \emptyset. Since VV is a neighborhood of π F(x)\pi_F(x) not intersecting π F(A)\pi_F(A), we conclude π F(x)Cl(π F(A))\pi_F(x) \notin Cl(\pi_F(A)). In summary we have shown that (xCl(A))FIfinite(π F(x)Cl(π F(A)))(x \notin Cl(A)) \Rightarrow \underset{ {F \subset I} \atop { \text{finite} }}{\exists} \left( \pi_F(x) \notin Cl(\pi_F(A))\right). By contraposition, this proves the claim.


(Tychonoff theorem)

The cartesian product of a small family of compact topological spaces with the product topology is itself compact.


Let (X α) α<κ(X_\alpha)_{\alpha \lt \kappa} be a family of compact spaces indexed by an ordinal κ\kappa. According to Theorem , it is enough to show that the projection

Y× α<κX αYY \times \prod_{\alpha \lt \kappa} X_\alpha \to Y

is a closed map for any space YY. We do this by induction on κ\kappa. The case κ=0\kappa = 0 is trivial.

It will be convenient to introduce some notation. For γκ\gamma \leq \kappa, let X γX^\gamma denote the product Y× α<γX αY \times \prod_{\alpha \lt \gamma} X_\alpha (so X 0=YX^0 = Y in this notation), and for βγ\beta \leq \gamma let π β γ:X γX β\pi_\beta^\gamma \;\colon\; X^\gamma \to X^\beta be the obvious projection map. Let KX κK \subseteq X^\kappa be closed, and put K βCl(π β κ(K))K_\beta \coloneqq Cl(\pi_{\beta}^\kappa(K)). In particular K κ=KK_\kappa = K since KK is closed, and we are done if we show π 0 κ(K)=K 0\pi_0^\kappa(K) = K_0.

Assume as inductive hypothesis that starting with any x 0K 0x_0 \in K_0 there is x βK βx_\beta \in K_\beta for all β<κ\beta \lt \kappa such that whenever β<γ<κ\beta \lt \gamma \lt \kappa, the compatibility condition π β γ(x γ)=x β\pi_\beta^\gamma(x_\gamma) = x_\beta holds. In particular, π 0 β(x β)=x 0\pi_0^\beta(x_\beta) = x_0 for all β<κ\beta \lt \kappa, and we are now trying to extend this up to κ\kappa.

If κ=β+1\kappa = \beta + 1 is a successor ordinal, then the projection

π β κ:X β×X βX β\pi_\beta^\kappa \;\colon\; X^\beta \times X_\beta \to X^\beta

is a closed map since X βX_\beta is compact. Thus π β κ(K)=Cl(π β κ(K))=K β\pi_\beta^\kappa(K) = Cl(\pi_\beta^\kappa(K)) = K_\beta since KK is closed, so there exists x κKx_\kappa \in K with π β κ(x κ)=x β\pi_\beta^\kappa(x_\kappa) = x_\beta, and then

π 0 κ(x κ)=π 0 βπ β κ(x κ)=π 0 β(x β)=x 0\pi_0^\kappa(x_\kappa) = \pi_0^\beta \pi_\beta^\kappa (x_\kappa) = \pi_0^\beta(x_\beta) = x_0

as desired.

If κ\kappa is a limit ordinal, then we may regard X κX^\kappa as the inverse limit of spaces (X β) β<κ(X^\beta)_{\beta \lt \kappa} with the obvious transition maps π β γ\pi_\beta^\gamma between them. Hence the tuple (x β) β<κ(x_\beta)_{\beta \lt \kappa} defines an element x κx_\kappa of X κX^\kappa, and all that remains is to check that x κKx_\kappa \in K. But since KK is closed, lemma says that it is sufficient to check that for every finite set FF of ordinals below κ\kappa, that π F(x κ)Cl(π F(K))\pi_F(x_\kappa) \in Cl(\pi_F(K)) (as a subspace of αFX α\prod_{\alpha \in F} X_\alpha). But for every such FF there is some β<κ\beta \lt \kappa that dominates all the elements of FF. One then checks

π F(x κ)=π F βπ β κ(x κ)=π F β(x β)π F β(K β)=π F β(Cl(π β κ(K)))Cl(π F βπ β κ(K))=Cl(π F(K))\pi_F(x_\kappa) = \pi_F^\beta \pi_\beta^\kappa(x_\kappa) = \pi_F^\beta(x_\beta) \in \pi_F^\beta(K_\beta) = \pi_F^\beta(Cl(\pi_\beta^\kappa(K))) \subseteq Cl(\pi_F^\beta \pi_\beta^\kappa(K)) = Cl(\pi_F(K))

where the inclusion indicated as \subseteq just results from continuity of π F β\pi_F^\beta. This completes the proof.

Tube lemma

The following useful lemma was effectively proved already within the proof of prop. , but it is worth making it explicit:


(tube lemma)


  1. XX be a topological space,

  2. YY a compact topological space,

  3. xXx \in X a point,

  4. WopenX×YW \underset{\text{open}}{\subset} X \times Y an open subset in the product topology,

such that the YY-fiber over xx is contained in WW:

{x}×YW. \{x\} \times Y \;\subseteq\; W \,.

Then there exists an open neighborhood U xU_x of xx such that the “tube” U x×YU_x \times Y around the fiber {x}×Y\{x \} \times Y is still contained:

U x×YW. U_x \times Y \subseteq W \,.


C(X×Y)\W C \coloneqq (X \times Y) \backslash W

be the complement of WW. Since this is closed, by prop. also its projection p X(C)Xp_X(C) \subset X is closed.


{x}×YW {x}×YC= {x}p X(C)= \begin{aligned} \{x\} \times Y \subset W & \;\Leftrightarrow\; \{x\} \times Y \; \cap \; C = \emptyset \\ & \;\Rightarrow\; \{x\} \cap p_X(C) = \emptyset \end{aligned}

and hence by the closure of p X(C)p_X(C) there is (by this lemma) an open neighbourhood U x{x}U_x \supset \{x\} with

U xp X(C)=. U_x \cap p_X(C) = \emptyset \,.

This means equivalently that U x×YC=U_x \times Y \cap C = \emptyset, hence that U x×YWU_x \times Y \subset W.


More category theoretically, the tube lemma becomes the statement that for XX compact, the map π:P(Y×X)P(Y)\forall_\pi: P(Y \times X) \to P(Y) takes opens to opens, as mentioned above.


Much of the material of the present article was earlier collected in

Last revised on December 24, 2017 at 19:19:12. See the history of this page for a list of all contributions to it.