The Shape of Space

Just came across this book: The Shape of Space (Chapman & Hall/CRC Pure and Applied Mathematics). It is a very unique book, in the sense that it is aimed at high school students, but even a undergraduate or graduate student can benefit from it. It has a lot of diagrams, that are missing in most textbooks, presumably because it takes a lot of effort to draw a mathematical (3D) diagram.

It will be useful to students who want to learn more about topology. This book can be read casually, it is not like a textbook, yet it has substantial mathematical content.

Example of an illustration in the book:

illustration topology

List of Fundamental Group, Homology Group (integral), and Covering Spaces

Just to compile a list of Fundamental groups, Homology Groups, and Covering Spaces for common spaces like the Circle, n-sphere (S^n), torus (T), real projective plane (\mathbb{R}P^2), and the Klein bottle (K).

Fundamental Group

Circle: \pi_1(S^1)=\mathbb{Z}

n-Sphere: \pi_1(S^n)=0, for n>1

n-Torus: \pi_1(T^n)=\mathbb{Z}^n (Here n-Torus refers to the n-dimensional torus, not the Torus with n holes)

\pi_1(T^2)=\mathbb{Z}^2 (usual torus with one hole in 2 dimensions)

Real projective plane: \pi_1(\mathbb{R}P^2)=\mathbb{Z}_2

Klein bottle K: \pi_1(K)=(\mathbb{Z}\amalg\mathbb{Z})/\langle aba^{-1}b\rangle

Homology Group (Integral)

H_0(S^1)=H_1(S^1)=\mathbb{Z}. Higher homology groups are zero.

H_k(S^n)=\begin{cases}\mathbb{Z}&k=0,n\\    0&\text{otherwise}    \end{cases}

H_k(T)=\begin{cases}\mathbb{Z}\ \ \ &k=0,2\\    \mathbb{Z}\times\mathbb{Z}\ \ \ &k=1\\    0\ \ \ &\text{otherwise}    \end{cases}

H_k(\mathbb{R}P^2)=\begin{cases}\mathbb{Z}\ \ \ &k=0\\    \mathbb{Z}_2\ \ \ &k=1\\    0\ \ \ &\text{otherwise}    \end{cases}

Klein bottle, K: H_k(K)=\begin{cases}\mathbb{Z}&k=0\\    \mathbb{Z}\oplus(\mathbb{Z}/2\mathbb{Z})&k=1\\    0&\text{otherwise}    \end{cases}

Covering Spaces

A universal cover of a connected topological space X is a simply connected space Y with a map f:Y\to X that is a covering map. Since there are many covering spaces, we will list the universal cover instead.

\mathbb{R} is the universal cover of the unit circle S^1

S^n is its own universal cover for n>1. (General result: If X is simply connected, i.e. has a trivial fundamental group, then it is its own universal cover.)

\mathbb{R}^2 is the universal cover of T.

S^2 is universal cover of real projective plane RP^2.

\mathbb{R}^2 is universal cover of Klein bottle K.

Fundamental Group of Torus (van Kampen method)

There are various methods of computing fundamental groups, for example one method using maximal trees of a simplicial complex (considered a slow method). There is one “trick” using van Kampen’s Theorem that makes it relatively fast to compute the fundamental group.

This “trick” doesn’t seem to be explicitly written in books, I had to search online to learn about it.

Fundamental Group of Torus

First we let U and V be open subsets of the torus  (denoted as X)as shown in the diagram below. U is an open disk, while V is the entire space with a small punctured hole. We are using the fundamental polygon representation of the torus. This trick can work for many spaces, not just the torus.

U is contractible, thus \pi_1(U)=0. U\cap V has S^1 as a deformation retract, thus \pi_1(U\cap V)=\mathbb{Z}. We note that X=U\cup V and U\cap V is path-connected. These are the necessary conditions to apply van Kampen’s Theorem.

Then, by Seifert-van Kampen Theorem, \displaystyle\boxed{\pi_1(X)=\pi_1(U)\coprod_{\pi_1(U\cap V)}\pi_1(V)}, the free product of \pi_1(U) and \pi_1(V) with amalgamation.

Let h be the generator in U\cap V. We have j_{1*}(h)=1 and j_{2*}(h)=aba^{-1}b^{-1}. (j_1:U\cap V\to U and j_2:U\cap V\to V are the inclusions. )


\begin{aligned}    \pi_1(X)&=\langle a,b\mid aba^{-1}b^{-1}=1\rangle\\    &=\langle a,b\mid ab=ba\rangle\\    &\cong\mathbb{Z}\times\mathbb{Z}    \end{aligned}


Free Math Newsletter


The Fundamental Group

Source: Topology (2nd Economy Edition)

If we pick a point x_0 of the space X to serve as a “base point” and consider only those paths that begin and end at x_0, the set of these path-homotopy classes does form a group under *. It will be called the fundamental group of X.

The important thing about the fundamental group is that it is a topological invariant of the space X, and it will be crucial in studying homeomorphism problems.

Definition of fundamental group:
Let X be a space; let x_0 be a point of X. A path in X that begins and ends at x_0 is called a loop based at x_0. The set of path homotopy classes of loops based at x_0, with operation *, is defined as the fundamental group of X relative to the base point x_0. It is denoted by \pi_1 (X,x_0).

Previously, we have shown that the operation * satisfies the axioms for a group. (See our earlier blog posts on the associativity properties and other groupoid properties of the operation.

This group is called the first homotopy group of X. There is also a second homotopy group, and even groups \pi_n (X,x_0) for all n\in \mathbb{Z}^+.

An example of a fundamental group:

\pi_1 (\mathbb{R}^n,x_0) is the trivial group (the group consisting of just the identity). This is because if f is a loop in \mathbb{R}^n based at x_0, the straight line homotopy is a path homotopy between f and the constant path at x_0.

An interesting question (discussed in the next upcoming blog posts) would be how the group depends on the base point x_0.

The Groupoid Properties of Operation * on Path-homotopy Classes (Proof)

(Continued from

Theorem: The operation * has the following properties:

(1) (Associativity) [f]*([g]*[h])=([f]*[g])*[h], i.e. it doesn’t matter where we place the brackets.

(2) (Right and left identities) Given x\in X, let e_x denote the constant path e_x: I\to X mpping all of I to the point x. If f is a path in X from x_0 to x_1, then [f]*[e_{x_1}]=[f] and [e_{x_0}]*[f]=[f].

(3) (Inverse) Given the path f in X from x_0 to x_1, let \bar{f} be the path defined by \bar{f}=f(1-s). \bar{f} is called the reverse of f. Then, [f]*[\bar{f}]=[e_{x_0}] and [\bar{f}]*[f]=[e_{x_1}].

We will prove the above statements, of which (1) Associativity is actually the trickiest.


We shall prove two elementary lemmas first. (This part is not proved in the book by Munkres).

Lemma 1: If k: X\to Y is a continuous map, and if F is a path homotopy in X between the paths f and f’, then k\circ F is a path homotopy in Y between the paths k\circ f and k\circ f'.

Proof of Lemma 1: Since F is a path homotopy in X between paths f and f’, we have by definition that F(s,0)=f(s), F(s,1)=f'(s), F(0,t)=x_0, F(1,t)=x_1.

Then, k F(s,0)=kf(s), kF(s,1)=kf'(s), kF(0,t)=k(x_0), kF(1,t)=k(x_1). Since kF is continuous (composition of two continuous functions), kF is inded a path homotopy in Y between he paths kf and kf’.

Lemma 2: If k:X\to Y is a continuous map and if f and g are paths in X with f(1)=g(0), then

k\circ (f*g)=(k\circ f)*(k \circ g)

Proof of Lemma 2:

k(f*g)(s)=kh(s), where h=f*g as defined previously.


We will first verify property (2) on Right and Left Identities. Let e_{x_0} denote the constant path in I at 0, and we let i: I\to I denote the identity map, which is a path in I from 0 to 1. Then e_0 * i is also a path in I from 0 to 1.

Because I is convex, there is a path homotopy G in I between i and e_0 *i (Straight-line homotopy) Then f\circ G is a path homotopy in X between the paths f\circ i=f and f\circ (e_0 *i) (Lemma 1). Furthermore by Lemma 2, f\circ (e_0 *i) = (f \circ e_0) * (f \circ i) which is equivalent to e_{x_0} *f.

A similar argument, using the fact that if e_1 denotes the constant path at 1, then i*e_i is path homotopic in I to the path i, shows that [f]*[e_{x_1}]=[f].

To prove (3) (Inverse), we note that the reverse of i is \bar{i}(s)=1-s. Then i*\bar{i} is a path in I beginning and ending at 0. The constant path e_0 is also beginning and ending at 0. Again, because I is convex, there is a path homotopy H in I between e_0 and i*\bar{i} (straight-line homotopy). Then, using lemma 1 and 2, f\circ H is path homotopy between f\circ e_0=e_{x_0} and f\circ (i*\bar{i})=(f\circ i)*(f\circ\bar{i})=f*\bar{f}. Very similarly, we can use the fact that \bar{i}*i is path homotopic  in I to e_1 to show that [\bar{f}]*[f]=[e_{x_1}].

We will continue the proof of associativity (which is longer) in the next blog post.

Source: Topology (2nd Economy Edition)

The Groupoid Properties of * on Path-homotopy Classes

This is one of the first instances where algebra starts to appear in Topology. We will continue our discussion of material found in Topology (2nd Economy Edition) by James R. Munkres.

First, we need to define the binary operation *, that will later make * satisfy properties that are very similar to axioms for a group.

Definition: If f is a path in X from x_0 to x_1, and if g is a path in X from x_1 to x_2, we define the product f*g of f and g to be he path h given by the equations

h(s)=\begin{cases}f(2s) &\text{for }s\in [0,\frac{1}{2}], \\ g(2s-1)& \text{for }s\in[\frac{1}{2}, 1]\end{cases}

Well-defined: The function h is well-defined, at s=1/2, f(1)=x_1, g(0)=x_1.

Continuity: h is also continuous by the pasting lemma.

h is a path in X from x_0 to x_2. We think of h as the path whose first half is the path f and whose second half is the path g.

We will verify that the product operation on paths induces a well-defined operation on path-homotopy classes, defined by the equation [f]*[g]=[f*g]

Let F be a path homotopy between f and f’, and let G be a path homotopy between g and g’.

i.e. we have F(s,0)=f(s), F(s,1)=f'(s)
F(0,t)=x_0, F(1,t)=x_1
G(s,0)=g(s), G(s,1)=g'(s)
G(0,t)=x_1, G(1,t)=x_2

We can define:

H(s,t)=\begin{cases}F(2s,t) &\text{for }s\in[0,\frac{1}{2}],\\ G(2s-1,t)&\text{for }s\in[\frac{1}{2},1]\end{cases}.

We can check that F(1,t)=x_1=G(0,t) for all t, hence the map H is well-defined. H is continuous by the pasting lemma.

Let’s check that H is the required path homotopy between f*g and f’*g’.

For s in [0,1/2],

H(s,0) = F(2s,0) =f(2s)=h(s)

H(s,1) = F(2s,1) =f'(2s)=h'(s)
h’ := f’ * g’

H(0,t) = F(0,t) = x_0

s in [1/2,1] works fine too:

H(s,0) = G(2s-1,0) = g(2s-1)=h(s)

H(s,1) = G(2s-1,1)= g'(2s-1) = h'(s)

H(1,t) = G(1,t)= x_2

Thus, H is indeed the required path homotopy between f*g and f’*g’. * is almost like a binary operation for a group. The only difference is that [f]*[g] is not defined for every pair of classes, but only for those pairs [f], [g] for which f(1) = g(0), i.e. the end point of f is the starting point of g.

Homotopy of Paths

For this post we will explain what is a homotopy of paths.

Source: Topology (2nd Economy Edition)

The book above is a nice introductory book on Topology, which includes a section of introductory Algebraic Topology.

Definition: If f and f’ are continuous maps of the space X into the space Y, we say that f is homotopic to f’ if there is a continuous F: X x I -> Y such that

F(x, 0)=f(x) and F(x,1) = f'(x)

for each x. The map F is called a homotopy between f and f’. If f is homotopic to f’, we write f \simeq f'.

If f and f’ are two paths in X, there is a stronger relation, called path homotopy, which requires that the end points of the path remain fixed during the deformation. We write f \simeq_p f' if f and f’ are path homotopic.

Next, we will prove that the relations \simeq and \simeq_p are equivalence relations.

If f is a path, we shall denote its path-homotopy equivalence class by [f].

Proof: We shall verify the properties of an equivalence relation, namely reflexivity, symmetry and transitivity.


Given f, it is rather easy to see that f \simeq f. The map F(x,t) is the required homotopy.

F(x,0)=f(x) and F(x,1)=f(x) is clearly satisfied.

If f is a path, then F is certainly a path homotopy, since f and f itself has the same initial point and final point.


Next we shall show that given f \simeq f', we have f' \simeq f. Let F be a homotopy between f and f’. We can then verify that G(x,t) = F(x, 1-t) is a homotopy between f’ and f.

G(x,0) = F(x, 1)=f’ (x)

G(x,1) = F(x, 0) = f(x)

Furthermore, if F is a path homotopy, so is G.

G(0,t)=F(0, 1-t) = x_0

G(1,t)=F(1,1-t) = x_1


Next, suppose that f \simeq f' and f' \simeq f'', we show that f \simeq f''. Let F be a homotopy between f and f’, and let F’ be a homotopy between f’ and f”. This time, we need to define a slightly more complicated homotopy G: X x I -> Y by the equation

G(x,t) = \begin{cases} F(x,2t) &\text{for }t\in [0,\frac{1}{2}],\\ F'(x, 2t-1) &\text{for } t\in [\frac{1}{2}, 1].\end{cases}

First, we need to check if the map G is well defined at t=1/2. When t=1/2, we have F(x,2t) = F(x,1)=f'(x) = F'(x,2t-1).

Because G is continuous on the two closed subsets X x [0, 1/2] and X x [1/2, 1] of XxI, it is continuous on all of X x I, by the pasting lemma.

Thus, we may see that G is the required homotopy between f and f”.

G(x,0)=F(x,0) = f(x)

G(x,1) = F’ (x, 1) = f”(x)

We can also check that if F and F’ are path homotopies, so is G.

G(0,t) = F(0, 2t) = x_0

G(1, t)=F'(1, 2t-1) = x_1