The idea of a cofibration will be fundamental as we talk further about homotopy theory, as will its dual idea of a fibration. The point of the cofibration condition is the following. Oftentimes, we have a subspace {A \subset X} and a map {A \stackrel{f}{\rightarrow} Y}. We’d like to know when we can extend this map over all of {X}. One useful criterion can be given by algebraic functors. For instance, singular homology can be used to show that the map {1:S^{n} \rightarrow S^n} does not extend over {D^{n+1}}.

Many of the things we care about in algebraic topology are homotopy invariant, though. As a result, it would be nice to know when the question of how {A \rightarrow Y} extends depends only on the homotopy class of {A}. This is precisely the definition of a cofibration. Dualizing gives the definition of a fibration, which I will talk about some other time.

One can, not surprisingly, approach the business of fibrations and cofibrations in an axiomatic manner. This is the theory of model categories, due to Quillen. I don’t know anything about that though.


Definition 1 A map {i: A \rightarrow X} is called a cofibration if whenever we have a space {Y} and a map {f: X \rightarrow Y} as well as a homotopy {F: A \times I \rightarrow Y} such that\displaystyle  F(a, 0) =f(i(a)),

then we can “extend” the homotopy to {G: X \times I \rightarrow Y} such that\displaystyle  G|_{X \times 0} = f, \quad G \circ (i \times 1_A) = F.

In general, one should think of {A} as a subspace of {X} to make life easier. Then the statement becomes simpler. Basically, given a map {f: X \rightarrow Y} and a homotopy of {f|_A}, we can extend this homotopy to all of {X} (or rather {X \times I}). This actually doesn’t lose any generality provided we stick to Hausdorff spaces.

So now on, assume all spaces are Hausdorff. We work with unpointed spaces; basepoints are not currently necessary. In algebraic topology, one often restricts further to the category of “compactly generated” spaces, as developed in Steenrod’s paper A convenient category of topological spaces (LINk).

Let’s think about what the cofibration condition means in terms of a “universal example.” Let {i: A \rightarrow X} be a cofibration; I claim that {A} is the inclusion of a closed subspace. Consider the union {Z = X \cup (A \times I)} where {(a,0) \in A \times I} is identified with {i(x) \in X}. This is the so-called mapping cylinder of {i:A \rightarrow X}.

What I said about the mapping cylinder being universal is the following. To give a map {f: X \rightarrow Y} and a homotopy {F: A \times I \rightarrow Y} compatible as in the definition of a cofibration is the same thing as homming out of the mapping cylinder. The universal such configuration is the map obvious inclusion {X \rightarrow Z} and the map {A \times I \rightarrow Z} (which is not generally an inclusion, though it will be in the cofibration case). Clearly, there is a map

\displaystyle  Z \rightarrow X \times I

because {A \times I} and {X = X \times \left\{0\right\}} both map into {X \times I}. The homotopy extension property states precisely that there is a map

\displaystyle  X \times I \rightarrow Z

which is a half-inverse of {Z \rightarrow X \times I}. This implies that {Z} is a closed subspace, though.


Proposition 2 Suppose {A \stackrel{i}{\rightarrow} B} is a map in the category of Hausdorff topological spaces that admits a retraction {r: B \rightarrow A}. Then {A} is a closed subspace of {B}.

Proof: Indeed, we can consider the (closed!) subspace {C \subset B} consisting of {x} such that {x = ir(x)}. Clearly {A} maps into {C} because {iri(a) = i(a)} for any {a \in A}. The inverse map {C \rightarrow A} is just {r}! \Box

Without the Hausdorff condition, we would not know that {C} was closed.

So “split injections” are closed immersions in the category of topological spaces.

Anyway, {Z} is a closed subspace of {X \times I}. In particular, {A \times \left\{1\right\} \subset Z} is thus a subspace of {X \times \left\{1\right\}} under {(i \times 1)|_{A \times \left\{1\right\}}}. This means that {i: A \rightarrow X} itself must be a closed immersion. We have proved the claim.

Conversely, it is easy to see that if

\displaystyle  X \cup (A \times I) \rightarrow X \times I

admits a retraction {r}, then {i: A \rightarrow X} has the homotopy extension property. The reason is that if we have {X \rightarrow Y} and a homotopy {A \times I \rightarrow Y}, we get a map out of the mapping cylinder and just use {r} to get a map out of {X \times I}.

The NDR condition

It turns out, however, that the condition of being a cofibration is more than being a closed immersion. Basically, if {A \subset X} is closed, then {A \rightarrow X} is a cofibration precisely when {A} has a neighborhood which deformation retracts onto {A}. This neighborhood, however, has to be expressible in a nice way.

Let us state this formally:

Definition 3 A subspace {A \subset X} of a Hausdorff space {X} is called a neighborhood deformation retract (NDR) if there is a continuous {u: X \rightarrow I} with {u^{-1}(0) = A} and a map {H: X \times I \rightarrow X} such that, first, {H|_{A \times I}} is just the projection {A \times I \rightarrow A} and {H|_{X \times \left\{0\right\}} = 1_X}; and, second, if {U = \left\{x: u(x) < 1\right\}}, then\displaystyle  H(U \times 1) \subset A.

So basically the point is that {u} determines the neighborhood {U} that deformation retracts onto {A}. If {u(x)<1} for all {x \in X}, then the condition is simply that {X} deformation retracts onto {A} and that {A} be the zero set of a continuous real function.

Definition 4 An NDR pair {(X, A)} with function {u: X \rightarrow I} is called a DR pair (deformation retract) if {u<1} everywhere.

The product of two NDR pairs is an NDR pair. We shall not prove this, as we need only a restricted version of this:

Proposition 5 Suppose {(X, A)} is a NDR pair and {B \subset Y} is a DR pair, then {(X \times Y, X \times B \cup A \times Y)} is a DR pair. In particular, {X \times B \cup A \times Y } is a deformation retract of {X \times Y}.

Proof: We have the function {u: X \rightarrow I} which is zero precisely on {A}. Moreover, we have the function {v: Y \rightarrow I} which is zero precisely on {B} and which is less than one everywhere. Moreover, we have the homotopies

\displaystyle  F: X \times I \rightarrow X, \quad G: Y \times I \rightarrow Y.

These are the deformation retractions. Now we need to define {H: X \times Y \times I \rightarrow X \times Y } such that {X \times Y \times \left\{0\right\}} is mapped as the identity and {X \times Y \times \left\{1\right\}} is mapped into {X \times B \cup A \times Y}.

So fix {(x,y, t)}. The idea is that we push the first coordinate towards {A} and push the second coordinate towards {B}. But the naive approach of {H(x,y,t) = ( F(x,t), G(y,t))} does not necessarily work. The problem is that this need not be stationary on {X \times B \cup A \times Y}. We have to modify this such that if one of the coordinates is very close to either {A} or {B} (but not the other), we don’t move the other much. Otherwise, something where the first coordinate in {A} but the second is far from {B} may get moved around a whole lot by the homotopy. And we want the homotopy to be stationary on {A \times Y \cup X \times B}.

In other words, we define

\displaystyle  H(x,y,t) = \left( F(x,t), G( y, t \frac{u(x)}{v(y)}) ,) \right)

if {u(x) < v(y)} (i.e. if {x} is close to {A} but {y} is not necessarily close to {B}) but

\displaystyle  H(x,y,t) = \left( F(x, t \frac{v(y)}{u(x)}) , G(y, t) \right).

if {v(y) < u(x)}. If {u(x) = v(y)}, we send this to

\displaystyle  (x,y,t) \rightarrow ( F(x,t), G(x,t)).

I claim that this is a deformation retraction of {X \times Y} onto {X \times B \cup A \times Y}. Indeed, it is evident that {H(X \times Y \times \left\{1\right\})} has image in that subspace by the following argument. If {v(y) \geq u(x)}, then the second coordinate of {H(x,y,1)} is {G(y,1) \in B}, while if {u(x) < v(y)}, then {u(x)<1} so that the first coordinate of {H(x,y,1)}, namely {F(x,1),} is in {A}. Note that the function whose zero set is that subspace is just {(x, y) \rightarrow \min u(x), v(y)}. \Box

Finally, we can use this idea of an NDR pair to talk about cofibrations.

Proposition 6 Let {A} be a closed subspace of a Hausdorff space {X}. Then the inclusion {A \stackrel{i}{\rightarrow } X} is a cofibration if and only if {(X, A)} is a NDR pair.

Proof: Indeed, first suppose {(X, A)} an NDR pair. Now {(I, \left\{0\right\})} is a DR pair by the obvious deformation retraction of {I} onto the origin. Then we have shown that, by the previous proposition,

\displaystyle  X \times \left\{0\right\} \cup A \times I \subset X \times I

is a deformation retract. In particular, it is a retract. But this union is really just the mapping cylinder discussed earlier. So if the mapping cylinder is a retract of {X \times I}, then {(X, A)} has the homotopy extension property and is a cofibration by the previous categorical discussion.

Conversely, suppose {A \stackrel{i}{\rightarrow} X} a cofibration. We prove that {(X, A)} is an NDR pair. We know a priori that

\displaystyle  X \times\left\{0\right\} \cup A \times I \rightarrowtail X \times I

admits a retraction.

First, we shall define the deformation retraction of a neighborhood of {A} onto {A}. The idea is to start at {x}, then go up {(x,t)}, then apply the retraction onto {X \times \left\{0\right\} \cup A \times I}, then project down to the first coordinate. More precisely, we define {H : X \times I \rightarrow X} via

\displaystyle  H(x,t) = \pi_1 r(x,t),

where {\pi: X \times I \rightarrow X} is the projection.

Now points near the top {A \times \left\{1\right\}}, intuitively, should be pulled by {r} into {A} and not far away to the bottom {X \times \left\{0\right\}}. So {H(x,1)} should be in {A} if {x} is near {A}. We can make this formal by the following argument. Consider the open set {U' = r^{-1}( A \times (0,1]) \subset X \times I}; this contains {A \times (0,1]}. If {i_1: X \rightarrow X \times I} sends {x \rightarrow (x,1)}, then {U = i_1^{-1}(U')} is an open set containing {A}. If {x \in U}, then {H(x,1) = \pi_1 r(x,t) \in A}. So {U} deformation retracts onto {A} via {H}.

We now need only check that there is a suitable {u: X \rightarrow I}. This is actually slightly tricky. What we do is

\displaystyle  u(x) = \sup_t |t - \pi_2 r(x,t)|,

where {\pi_2: X \times I \rightarrow I} is projection. If {x \in A}, clearly this is zero; conversely, if {x \in X} is such that {r(x,t)} has second coordinate {t} for all {t}, {r(x,t) \in A \times I} for {t>0}. It follows that {r(x,0) \in A} as well by continuity. So {x \in A}.

Since the {\sup} is over {t \in I}, it is evident that {u(x)<1} if and only if {r(x,1) \notin X \times \left\{0\right\}}, i.e. if {(x,1)} does not when retracted fall all the way back down to the bottom slice {X \times \left\{0\right\}}. So {\left\{x: u(x)<1\right\}} is precisely the set {U} defined above.

The continuity of {u} is the hard part. For this, I would like to appeal to a general lemma. Once that is proved, we will have shown that {(X, A)} is an NDR pair. So the lemma is the completion of the proof of this result.

The problem with {u} is that it is a sup of a bunch of things. Taking the sup of infinitely many continuous functions generally doesn’t give you a continuous function. It does, however, under certain compactness conditions: if you have a “compact” family of functions.

Lemma 7 Suppose {Z} is compact and {f: Z \times X \rightarrow \mathbb{R}} is a continuous function. For each {z \in Z}, consider the continuous function {f_z: Z \rightarrow \mathbb{R}}, {f_z(x) = f(z,x)}. Then {g: x \rightarrow \sup_z f_z(x)} defines a continuous function on {X}.

Proof: Indeed, for {a \in \mathbb{R}}, the set {g^{-1}((-\infty, a])} is closed. This is because it is the intersection of closed sets

\displaystyle  \bigcap_{z \in Z} f_z^{-1}((-\infty, a]).

This is more generally the fact that the sup of a bunch of continuous functions is at least lower semicontinuous. The hard part will be to show that

\displaystyle  g^{-1}([a, \infty))

is closed. For this, note that {f^{-1}([a, \infty)) \subset Z \times X} is closed as {f} is continuous. Moreover, the sup {g = \sup f_z} is at least {a} if and only if one of the {f_z}‘s is at least {a}. What this means is that

\displaystyle  g^{-1}((-\infty, a]) = \pi (f^{-1}(-\infty, a])

if {\pi: Z \times X \rightarrow X} is the projection. However, the compactness of {Z} implies that {\pi} is a closed map. That observation implies that {g^{-1}((-\infty, a])} is closed as well. \Box

We have now proved the equivalence of cofibrations and NDR pairs.


I learned this mainly from Peter May’s A Concise Course in Algebraic Topology, available on his web page.