I'm reading Hatcher and I'm doing exercise 9 on page 19. Can you tell me if my answer is correct?

Exercise: Show that a retract of a contractible space is contractible.


Let $X$ be a contractible space, i.e. $\exists f :X \rightarrow \{ * \}$,$g: { * } \rightarrow X$ continuous such that $fg \cong id_{\{ *\}}$ and $gf \cong id_X$ and let $r:X \rightarrow X$ be a retraction of $X$ i.e. $r$ continuous and $r(X) = A$ and $r\mid_A = id_A$.

(Edited using Anton's answer)

Define $f^\prime := f\mid_A$ and $g^\prime := r \circ g$.

Now we need to show $f^\prime \circ g^\prime \cong id_{ \{ * \} }$ and $g^\prime \circ f^\prime \cong id_A$.

$f^\prime \circ g^\prime \cong id_{ \{ * \} }$ follows from $f^\prime \circ g^\prime = id_{ \{ * \} }$ (because there is only one function ${ * } \rightarrow { * }$).

From $gf \cong id_X$ we have a homotopy $H: I \times X \rightarrow X$ such that $H(0,x) = g \circ f (x)$ and $H(1,x) = id_X$. From this we build a homotopy $H^\prime : I \times A \rightarrow A$ by defining $H^\prime := r \circ H \mid_{I \times A}$. Then $H^\prime (0,x) = g^\prime \circ f\mid_A (x)$ and $H^\prime (1,x) = id_A$.

I'm particularly dissatisfied with the amount of detail in my reasoning but I can't seem to produce what I'm looking for. Many thanks for your help!


You're glossing over the most important things. You are given the information that $X$ is contractible. This means that there exists a specific homotopy $H:I\times X\to X$ which contracts the identity map. Your goal is to construct a specific homotopy $H':I\times A\to A$ which contracts the identity map. Your proof never explicitly makes use of $H$ and never explicitly (maybe not even implicitly) defines $H'$. This makes it feel like a bunch of symbol-pushing. (This isn't meant to be insulting; I'm just explaining why the proof feels unsatisfying.)

Two preliminary points:

  • $\newcommand{\pt}{{\{\ast\}}}f'=f\circ r$ isn't a map between the right things; it should be a map $A\to\pt$, but it's a map $X\to \pt$. This isn't too important since there's only one map from anything to a point, but the algebraic manipulation will be clearer if you set $f':=f|_A$.

  • You don't need to check $f'\circ g'\cong id_\pt$ since there's only one map $\pt\to\pt$.

So you only need to find a homotopy from $id_A$ to $g'\circ f'$. That is, you need to make a movie (homotopy) which continuously crushes $A$ to a point. But you already have a movie $H:I\times X\to X$ which crushes $X$ to a point (i.e. $H(0,-)=id_X$ and $H(1,-)=g\circ f$), and you have a way to retract anything in $X$ to something in $A$, so you can just retract your movie, setting $H' = r\circ H|_{I\times A}$. Then $H'(0,-) = r\circ H(0,-)|_A = r\circ id_A = id_A$ and $H'(1,-)=r\circ H(1,-)|_A = r\circ (g\circ f)|_A = r\circ g\circ f|_A = g'\circ f'$.

  • $\begingroup$ @Anton: in your third sentence when you write "...specific homotopy H...", where does $H$ come from? In Hatcher on p. 3 he defines two spaces to be homotopy equivalent if there exist two functions $f$ and $g$ such that $gf = id$ and $fg = id$. On the next page he defines a space to be contractible if it has the same homotopy type as a point. Many thanks for your help, your answer has already been very helpful to me. $\endgroup$ – Rudy the Reindeer Mar 9 '11 at 20:53
  • $\begingroup$ You don't mean $gf = id$. You mean $gf$ homotopic to the identity? $\endgroup$ – Sam Nead Mar 9 '11 at 20:58
  • $\begingroup$ @Sam: Yes, that should say $\cong$, thanks for pointing it out! $\endgroup$ – Rudy the Reindeer Mar 9 '11 at 21:08
  • 1
    $\begingroup$ @Matt: It comes from the definition of the symbol "$\cong$" (see the top of p. 3). The statement "$id_X\cong g\circ f$" is equivalent to the statement "There exists a continuous $H:I\times X\to X$ such that $H(0,x)=x$ and $H(1,x)=g(f(x))$ for every $x\in X$." Since such an $H$ is assumed to exist, you can go ahead and use it. $\endgroup$ – Anton Geraschenko Mar 9 '11 at 21:27
  • 1
    $\begingroup$ @Matt: Exactly! The statement "$f\sim g$" is where you get the $x$. In the same way, the statement "$g\circ f\cong id_X$" is where you get $H$. $\endgroup$ – Anton Geraschenko Mar 9 '11 at 22:38

Your real questions have allready been answered. Here I give an alternative proof, demanding some familiarity with categories. It illustrates how convenient 'abstract nonsense' can be. I go out from retraction $r:X\rightarrow A$ and inclusion $i:A\rightarrow X$ with $ri=1$.

The contractible objects in category $\mathbf{Top}$ are exactly the terminal objects in category $\mathbf{hTop}$. If $X$ is a terminal object in $\mathbf{hTop}$, then for every object $Y$ the homset $\mathbf{hTop}\left(Y,X\right)$ contains exactly one arrow. Let us denote this arrow by $\left[c\right]$. Then homset $\mathbf{hTop}\left(Y,A\right)$ contains arrow $\left[r\right]\left[c\right]$. Now let $\left[f\right]\in\mathbf{hTop}\left(Y,A\right)$. Then $\left[i\right]\left[f\right]\in\mathbf{hTop}\left(Y,X\right)$ so $\left[i\right]\left[f\right]=\left[c\right]$. Then we find $\left[f\right]=\left[r\right]\left[i\right]\left[f\right]=\left[r\right]\left[c\right]$ demonstrating that $\left[r\right]\left[c\right]$ is the only element of $\mathbf{hTop}\left(Y,A\right)$. Proved is now that $A$ is terminal in $\mathbf{hTop}$, hence contractible in $\mathbf{Top}$.

It can be done even shorter:

$\left[\right]:\mathbf{Top}\rightarrow\mathbf{hTop}$ is a functor and functors respect retractions (=arrows that have a right-inverse). So if $r:X\rightarrow A$ is a retraction in $\mathbf{Top}$ then $\left[r\right]:X\rightarrow A$ is a retraction in $\mathbf{hTop}$.

If $\left[r\right]:X\rightarrow A$ is a retraction and $X$ is terminal then $\left[r\right]$ is an isomorphism, hence $A$ is terminal. (This is true in every category, but to maintain the line of the proof I keep on using the notation $\left[r\right]$.)

Proof of that: some $\left[s\right]:A\rightarrow X$ exists with $\left[r\right]\left[s\right]=1$; then $\left[s\right]\left[r\right]:X\rightarrow X$ and the identity is the only endomorphism here, so $\left[s\right]\left[r\right]=1$.


Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.