Homotopy & Paths

My goal for this post is to build up towards the definition of the fundemental group, which will be one of our main structures in this series of posts. Let’s start ASAP since I have a lot to cover today.


If you have reached this far in this series about algebraic topology I am certain that you already know what a path is. However, I still want to present here the definition since paths will be our bread and butter here.

Suppose that X is a topological space. A path \gamma is a continuous function \gamma: I\to X (I=[0,1]).

That’s it, not that complicated. Notice that since the domain of \gamma is the unit interval I, we can think of the parameter as a specific time between the initial time (0) and the final time (1).

Notice how the veloicty of the green dot is not constant!

The ‘time’ parameter is going to play a big role today – as we will see, some paths may describe the same curve, however, one is ‘faster’ then the other, and since paths are functions, they are not the same. However, they are homotopic to each other, and that’s what we are interested in.

I am now going to define a set for every pair a,b\in X, where X is a topological space:

\Gamma_{ab}=\{\gamma:I\to X|\gamma(0)=a,\gamma(1)=b\}

This is the set of all the paths with the same endpoint a, b.

In this sketch, \gamma_1, \gamma_2 have the same endpoint (which I’ll call a and b) thus they belong to the set \Gamma_{ab}.

I want to take it one step forward, and apply an equivalence relation on the set, we will say that \gamma is equivalent to \delta if and only if they are homotopic equivalent with respect to \partial I = [0,1], and I’ll write :\gamma \sim_{\partial I} \delta.

The set of the equivalence classes I’ll denote by \hat{\Gamma}_{ab}.

One more thing I want to define is path composition: Suppose that a,b,c\in X, \gamma\in Gamma_{ab} and \delta\in\Gamma_{bc}.

It feels natural to ‘connect’ these paths together. However, we need to consider the time parameter, in order to connect them properly we need to ‘double our velocity’. Formally, we will define the path composition \gamma * \delta as:

\gamma*\delta:I\to X,\gamma*\delta=\begin{cases}
\gamma(2t) & 0\leq t\leq\frac{1}{2}\\
\delta(2t-1) & \frac{1}{2}\leq t\leq1

This procedure is really similar to what we did when we wanted to prove the transitivity of the homotopy realtion (Here).

We are now equipped with an action on paths, but as I said, I am more interested in the equivalence classes of paths, which are the elements of sets of the form \hat{\Gamma}_{ab}, then we need to somehow use this action of path composition to create an action on the equivalence classes.

The most natural thing to do is to define:


But first we need to verify that this action is even well defined – we need to show that if [\gamma]=[\gamma^\prime] and [\delta] = [\delta^\prime] then [\gamma*\delta]=[\gamma^\prime*\delta^\prime].

More explicitly, we need to show that if \gamma\sim_{\partial I}\gamma^\prime and \delta\sim_{\partial I}\delta^\prime, then \gamma*\delta\sim_{\partial I} \gamma^\prime*\delta^\prime.

Let’s prove it:

Since \gamma\sim_{\partial I}\gamma^\prime There is a homotopy H:I\times I\to X with respect to \partial I such that:



H(0,t)=a,H(1,t)=b\text{ for every } t\in I

Similarly, there is a homotopy K:I\times I\to X such that:



K(0,t)=b,K(1,t)=c\text{ for every } t\in I

We can now define a homotopy J:I\times I\to X:

H(2s,t) & 0\leq s\leq\frac{1}{2}\\
K(2s-1,t) & \frac{1}{2}\leq s\leq1

(I actually made tons of mistakes before coming up with this function, I’ll talk about it after the proof) This one actually works, let’s check it, and notice how this proof is so technical

H(2s,0) & 0\leq s\leq\frac{1}{2}\\
K(2s-1,0) & \frac{1}{2}\leq s\leq1
\gamma(2s) & 0\leq s\leq\frac{1}{2}\\
\delta(2s-1) & \frac{1}{2}\leq s\leq1
H(2s,1) & 0\leq s\leq\frac{1}{2}\\
K(2s-1,1) & \frac{1}{2}\leq s\leq1
\gamma^{\prime}(2s) & 0\leq s\leq\frac{1}{2}\\
\delta^{\prime}(2s-1) & \frac{1}{2}\leq s\leq1

And that’s it. The only thing I have done here is ‘playing’ with the parameter.

I want to attack the statement from a different and more intuitive prespective.

New proving method

Notice how the domain of homotopies between paths is always the unit square – I\times I. This domain is really ‘imaginable’ and I can even sketch it.

The homotopy does takes a point (s,t) from the square, and maps it to a point in the space X:

However, we know so much more than that: Suppose that the homotopy is from the path \gamma to the path \delta with respect to \partial I, and suppose that \gamma(0)=a,\gamma(1)=b. Let’s see what we have here: First of all, we know that H(s,0)=\gamma(s). Thus, the set \{(s,0)|s\in I\} is being mapped to \gamma. However, this set is exactly the lower edge of the square. Similarly, we know that the upper edge is being mapped to \delta.

Wait, there is more, we also know that H(0,t)=a,H(1,t)=b for any t\in I. Thus, the left edge is being mapped to a, and the right edge is being mapped to b. Finally, the sketch will look like this:

Notice how much details we can learn from the square, we know exactly how the homotopy ‘works’ without an explicit formula, along with a great intuition that doesn’t miss details. Also, if we want to look at the square by itself (without having to draw the topological space and the arrows to it), that’s not a problem, here is one way to do so:

(Recall that K_a,K_b are constant functions). This square fully describes the homotopy, how great it that?

We can use such a square in order to prove statements like in the above, and not only prove them, but also avoid all the technicalities that can be very confusing. Let me show you how I prove the statement in the above using such squares.

Recall that we are trying to prove that \gamma*\delta\sim_{\partial I} \gamma^\prime*\delta^\prime, and we two homotopies: H from \gamma to \gamma^\prime, and K from \delta to \delta^\prime. The matching squares are:

Notice How I can ‘bring them togheter’ and by that creating the desired homotopy:

I’ll consider such a square as a valid proof! I know it is not really a valid proof, however, we can easly deduce an explicit formula for the homotopy from that square. If you don’t believe me, I’ll do it here only this time, and after that I will start proving using such sqaures. If you still won’t believe me, try to find an explicit formula for the homotpy on the next proof, trust me, it won’t be a pleasant experience.

Ok, so as we can see in the square, when 0\leq s\leq 0.5 the homotopy we are working with is H, and when 0.5\leq s\leq 1, the homotopy we are working with is K.

Thus, our new homotopy will look like:

H(\text{something}) & 0\leq s\leq\frac{1}{2}\\
K(\text{something}) & \frac{1}{2}\leq s\leq1

We can also see that we are going over the homotopies ‘twice faster’, thus, the parameter s has to be ‘twice faster’ and the parameter t is actually not affected at all, therefore, we can conclude that:

H(2s,t) & 0\leq s\leq\frac{1}{2}\\
K(2s-1,t) & \frac{1}{2}\leq s\leq1

And that’s exactly the formula I have presented in this proof.

Back to bussines

So that was a long discussion, I think that I need to remind you what we have done so far.

Right now we are focusing on sets of the form \hat{\Gamma}_{ab} whose elemenets are equivalence classes of paths. Where the equivalence realtion is:

\gamma\text{ is equivalent to }\delta \iff  \gamma\sim_{\partial I} \delta

And we proved that the action [\gamma]\cdot[\delta]=[\gamma*\delta] is well defined – it is independent of the choice of elements from the equivalence classes.

That’s great, since we can work with this action which is really intuitive in my opinion. Let’s check what other properties does this action has, the first property comes to my mind is associativity. Let’s try to prove it:

Let a,b,c,d\in X be arbitrary points in the space, and suppose that:

[g]\in \hat{\Gamma}_{ab},\ \ \ [h]\in\hat{\Gamma}_{bc},\ \ \ [l]\in\hat{\Gamma}_{ab}

I want to prove that ([g][h])[l]=[g]([h][l]), Which is equivalent to proving that: (g*h)*l\sim_{\partial I}g*(h*l) which means that: If we composite the composition of g and h, with l, We will get something homotopic to the path created by compositing g with the composition of h and l.

From first glance at the sketch, it seems like (g*h)*l should be equals to g*(h*l), or at least that’s what I have thought when I first saw it.

However, even though the images of the paths are the same, they are absolutely not the same function! This is where the ‘velocity’ of the path plays a part: when we are compositing two paths, we make each path ‘twice faster’.

For example, notice what happens to the velocity of g at the path (g*h)*l. First, we are composing it with h, which makes it twice faster, afterwards we are composing the reslut with l, which makes g, again, twice faster. Thus, we get that the velocity of g becomes 4 times faster than it was originally.

On the other hand, Let’s see the what happens to the velocity of g at the path g*(h*l). Here, we are only comosing g with another path (g*h) once. Thus, it’s velocity becomes only twice faster.

If that’s not clear enough, I have the perfect thing that will help you understand what happens better, and yes, I am talking about a square!

Can you see now why it is not the same thing? A homotopy between the paths need to ‘adjust’ the velocity properly. I am going to add Red Lines to the square, which from now on, will represent a constant value. They will help us understand how the homotopy works / how to construct it explicitly.

I’ll explain it again, the points on the red line are being mapped to the same point in the space. We can see that the red line on the left is being mapped to the constant value b (convince yourself!). Similarly, we can see that the red line on the right is being mapped to the constant value c. This gives us kind of a clue to what a homotopy H should satisfy:

H(\frac{1}{4},0)=H(\frac{1}{2},1),\ \ \ H(\frac{1}{2},0)=H(\frac{3}{4},1)

Those are just specific conncetions that you can immideatly conclude from the square, You can try finding an explicit formula yourself – though, I can guarantee that you will not enjoy it. I have done it and this is the result:

g((2-t)\cdot2s) & 0\leq s\leq\frac{1}{4}\\
(1-t)\cdot h(4s-1)+t\cdot g(2s) & \frac{1}{4}\leq s\leq\frac{1}{2}\\
(1-t)\cdot l(2s-1)+t\cdot h(4s-2) & \frac{1}{2}\leq s\leq\frac{3}{4}\\
(1-t)\cdot l(2s-1)+t\cdot l(4s-3) & \frac{3}{4}\leq s\leq1

As I said, not so elegant! And maybe I even have some minor mistakes there, so to summarize it, I’ll just say – I am going to stick with squares.

Ok, so we know now that our action is associative. What’s next? if you noticed we can treat K_a as a constant path from a to itself. Thus: K_a\in\Gamma_{aa}, then, [K_a]\in \hat{\Gamma}_{aa}. It feels pretty natural to state that if [\gamma]\in\hat{\Gamma}_{ab} then:

[K_a][\gamma]=[\gamma],\ \ \ [\gamma][K_a]=[\gamma]

Here is a square for that:

Of course you can draw more red lines here, but I think that the homotopy is pretty clear – intuitivly, we are ‘shrinking’ K_a over time.

We now know that [K_a] is acting like a ‘unit’ or an ‘identity’. Let’s see how we can get such an element:

Notice that if \gamma\in \Gamma_{a,b} we can just composite it with the same path, but with the oppisite direction – it’s like ‘walking backwards’ on \gamma. This is pretty easy to find such a path, we can just define \overline{\gamma}:=\gamma(1-t) (notice that \overline{\gamma}\in\Gamma_{ba}). So it’s a reasonable act to state that: [\gamma][\overline{\gamma}]=[K_a] and [\overline{\gamma}][\gamma]=[K_b].

Let’s prove it with a square. We need to find a homotopy H from \gamma*\overline{\gamma} to K_a. And similarly a homotopy K from \overline{\gamma}*\gamma to K_b. I’ll only show the first one, since the second is almost identical.

There are few things here I want to explain:

  • I wrote \gamma twice insteat of writing \overline{\gamma} in the right side. That’s because I changed the direction of the arrows on the right.
  • The middle point in the lower edge is being sent to b. And as you see by the red lines, we are slowly moving b towards a along the path.

Perefect Let’s summarize what we have got so far:

  • An associative action on equivalence classes (composition).
  • ‘units’ – the classes of [K_a] for any a\in X.
  • ‘inverse elements’ – What we just proved.

However, I want to narrow myself down into one unit only, so I’ll coisider the set \hat{\Gamma}_{aa}. This is the set of equivalence classes of paths that starts and ends at the same point (a). In this set:

  • [\gamma_1],[\gamma_2]\in \hat{\Gamma}_{aa}. Then [\gamma_1][\gamma_2]=[\gamma_1*\gamma_2].
  • [\gamma_1],[\gamma_2],[\gamma_3]\in \hat{\Gamma}_{aa}. Then ([\gamma_1][\gamma_2])[\gamma_3]=[\gamma_1]([\gamma_2][\gamma_3])
  • [\gamma][K_a]=[K_a][\gamma]=[\gamma].
  • [\gamma]\in\hat{\Gamma}_{aa}. Then [\gamma][\overline{\gamma}]=[\overline{\gamma}][\gamma]=[K_a].

We just found out that \hat{\Gamma}_{aa} is a group!

We can match each pair (X,a) of a topological space with a point to a group! How great is that? And as it turns, this group has countless application and it even has a name: It is called The Fundemental Group of X with respect to the base point a, We denote this group as \pi_1(X,a).


It was a really, really long post. However, the result is so great! We finally brought algebra to the theory, and found a connection between topology and algebra.

In the next post, we will start exploring properties of the fundemental group, and find connections between the group’s properties, to the space properties.

One thought on “Homotopy & Paths

Leave a Reply

%d bloggers like this: