Why isn't this homotopy pullback a point?

A homotopy pullback is not a pullback in the homotopy category. It is not true that the homotopy pullback $X \times_Z^h Y$ is the universal space fitting in the diagram $$\require{AMScd} \begin{CD} X \times^h_Z Y @>>> X \\ @VVV @VVV \\ Y @>>> Z \end{CD}$$ where the arrows are homotopy classes of maps and such that for every space $W$ and homotopy classes $W \to X$, $W \to Y$ such that the two maps $W \to Z$ are homotopic, then there is a unique homotopy class of maps $W \to X \times_Z^h Y$ such that the obvious things commute up to homotopy. This is very important and a common mistake.


In topological spaces, there is an easy description of the homotopy pullback. You have to replace one of the two maps $X \to Z$ or $Y \to Z$ by a fibration, say $X \to E \to Z$ where $X \to E$ is a weak equivalence and $E \to Z$ is a fibration, with composite equal to $X \to Z$. Then you the homotopy pullback $X \times_Z^h Y$ is the (honest) pullback $E \times_Z Y$.

In your example, as you know you get as a homotopy pullback $\Omega X$, and as you have shown, it is not a pullback in the homotopy category of the diagram $* \to X \gets *$, because that is just $*$. So you have to be careful.


For a more conceptual approach, you need to know about model categories. You have the category of topological spaces $\mathsf{Top}$ and some index category $I$ (for pullbacks, this is the category that looks like $\bullet \to \bullet \gets \bullet$). You have the functor category $\mathsf{Top}^I$ of diagrams of shape $I$.

There is always the "constant diagram" functor $\Delta : \mathsf{Top} \to \mathsf{Top}^I$ (for pullbacks, this maps the space $X$ to the diagram $X \to X \gets X$). If you think about it, the "limit" functor $\lim : \mathsf{Top}^I \to \mathsf{Top}$ is in fact the right adjoint of $\Delta$.

Then the homotopy limit functor is the right derived functor of $\lim$, i.e. it is the functor $\mathbb{R}\operatorname{lim} : \operatorname{Ho}(\mathsf{Top}^I) \to \operatorname{Ho}(\mathsf{Top})$. This is different from considering limits (pullbacks) in the homotopy category, which would be the functor $\lim : \operatorname{Ho}(\mathsf{Top})^I \to \operatorname{Ho}(\mathsf{Top})$. In fact, this second functor rarely exists, even though $\mathsf{Top}$ has all limits.


Here is an alternative perspective to the one laid out by Najib Idrissi.

In any category $C$ with weak equivalences, you can define the homotopy limit over a functor $F:J\to C$ as the value of right derived functor $\mathbb{R}{\rm lim}$ of the limit functor, evaluated on $F$

In good cases, you can calculate this right derived functor explicitly in terms of "weighted" limits, or ends (this is discussed a bit, for example, at the nlab page https://ncatlab.org/nlab/show/homotopy+limit under the section "local definition"). These weighted limits make good sense of what it means to be a homotopy commutative cone over a diagram. Such weighted limits are sometimes called $\infty$-limits.

In the language of $\infty$-categories, there is a precise meaning of what it means to be a homotopy commutative (more precisely homotopy coherent) cone over a diagram and one can make sense of what it means to be a universal such cone.

Going back to your question, homotopy limits in the category of $CW$-complexes is one of these good cases. An $\infty$-cone over a diagram of the form $\bullet \to \bullet \leftarrow \bullet$ can be identified with a homotopy commutative diagram $$\require{AMScd} \begin{CD} X @>>> \ast \\ @VVV H @VyVV \\ \ast @>y>> Y \end{CD}$$ where we have an explicit choice of homotopy $H:X\times I\to Y$ with $H(x,0)=y$ and $H(x,1)=y$ for all $x$. Now let's say $X$ is the universal such cone over the diagram. Consider the homotopy commutative diagram $$\require{AMScd} \begin{CD} \ast @>>> \ast \\ @VVV \gamma @VyVV \\ \ast @>y>> Y \end{CD}$$ The choice of homotopy gives rise to a map $\gamma:I\to Y$ such that $H(\ast,0)=y=H(\ast,1)$; i.e. a loop in $Y$. By the homotopy coherent universal property, there is an induced map $\ast\to X$, which is not unique, but is unique up to a contractible space of higher homotopies filling the diagram. So for each loop in $Y$, we have a corresponding point $x:\ast\to X$, which is not uniquely determined by $\gamma$, but is up to some contractible space.

You can continue this process and consider the homotopy commutative cones $$\require{AMScd} \begin{CD} S^n @>>> \ast \\ @VVV \gamma_n @VyVV \\ \ast @>y>> Y \end{CD}$$ where $\gamma_n:S^n\times [0,1]\to Y$ satisfies $\gamma_n(x,0)=y=\gamma_n(x,1)$.

Let's take a step back and see what we have just described. For each $n$, we have a well defined function $f:\hom(S^n,X)\to \hom(S^n,\Omega_yY)$, coming from the canonical homotopy $H$ which fills the universal diagram. We don't have a well defined map backwards but after quotienting out by the contractible space of possible fillers in the diagram, we do get a well defined map on homotopy classes, this gives a map $\pi_n(\Omega_yY)\to \pi_n(X)$, which is easily checked to be an isomorphism (with inverse $f_*$).