3 Simplicial Complexes
“The art of doing mathematics is finding that special case that contains all the germs of generality.”
– David Hilbert
After the warm-up from planar triangulations, we will talk about some very basics of simplicial complexes. For more on these topics, you can refer to any textbook on applied topology/persistent homology, which will meet our immediate needs for this course. For example:
- Introduction to Persistent Homology, Ziga Virk
- Computational Topology for Data Analysis, Tamal Dey and Yusu Wang
Those who want to learn more about algebraic topology can refer to the following book:
3.1 Barycentric Coordinates
While discussing convex hulls and their triangulations we came across the idea of general position of a finite set of points in \mathbb{R}^d. Here we make that idea rigourous and introduce barycentric coordinates.
- The affine combination of n+1 points \{v_0,v_1, \cdots, v_n\} \subset \mathbb{R}^d is a sum of the form \sum_{i=0}^n \lambda_i v_i, where \sum_{i=0}^n \lambda_i =1.
- The points V= \{v_0,v_1, \cdots, v_n\} are said to be affinely independent iff no v_i can be expressed as an affine combination of the points from V \setminus \{v_i\}.
Exercise 3.1
- How many points can a linearly independent set in \mathbb{R}^d have?
- How many points can an affinely independent set in \mathbb{R}^d have?
- Show that points V=\{v_0,v_1,v_2, \cdots, v_n\} \subset \mathbb{R}^d are affinely independent iff the set V^\prime=\{v_1-v_0,v_2-v_0 \cdots, v_n-v_0\} is linearly independent.
Let V be an affinely independent set of n+1 points \{v_0,v_1, \cdots, v_n\} \subset \mathbb{R}^d. Then each point x \in \textbf{Conv} (V) can be uniquely expressed as x=\sum_{i=0}^n \lambda_i v_i where \lambda_i \in [0,1] and \sum_{i=0}^n \lambda_i=1. The coefficients \lambda_i are called barycentric coordinates of the point x.
Exercise 3.2
- Select three affinely independent points v_1,v_2,v_3 in \mathbb{R}^2. Select a point in the interior of the convex hull of \{v_1,v_2,v_3\} and calculate its barycentric coordinates \lambda_1, \lambda_2, \lambda_3.
3.2 Simplicial Complexes
We have discussed some basic concepts of topology. However, the collection of all topological spaces (even metric spaces) is too general for us to effectively compute things. For that, we will work with spaces which can be effectively broken into easily recognizable pieces that fit together nicely. This is the class of spaces that can be triangulated. We will define below geometric simplicial complexes and then their abstract version - which is more amenable to computation in topological data analysis. Technically speaking, we will define the category of simplicial complexes and will define covariant functors from this category to the category of topological spaces.
The building blocks we will use are n-simplices in d-dimensional Euclidean space \mathbb{R}^d. A n-simplex (n-dimensional simplex) is the convex hull of n+1 affinely independent points in \mathbb{R}^d. A face of a simplex is the convex hull of a subset of its vertices.
A (geometric) simplicial complex \mathcal{K} is a collection of simplices that is closed under taking faces and under taking intersections. In other words,
if \alpha \in \mathcal{K} and \beta is a face of \alpha, then \beta \in \mathcal{K}
if \alpha, \beta \in \mathcal{K}, then \alpha \cap \beta is a face of both \alpha and \beta
The dimension of a simplicial complex is the maximum dimension of a simplex in it.
Let S set of points (called vertices). An (abstract) simplicial complex \mathcal{K} (based on the set S) is a set of finite nonempty subsets of S (called simplices) such that
Each s \in S is a simplex
Any nonempty subset of a simplex is a simplex
It is clear that given any geometric simplicial complex, one can forget the geometric embedding and retain the combinatorial information only as a abstract simplicial complex. Conversely, a d-dimensional abstract simplicial complex has a geometric realization in \mathbb{R}^{2d+1}. All the simplical complexes considered in this course will be finite dimensional and finite. The body |\mathcal{K}| of a geometric simplicial complex \mathcal{K} is the union of all its simplices, considered as a subspace of the ambient Euclidean space. A triangulation of a subspace X \subset \mathbb{R}^{d} is a simplicial complex \mathcal{K} in \mathbb{R}^d such that |\mathcal{K}| \simeq X.
Any finite point set of size 2d+2 on the moment curve \alpha(t)=(t,t^2,t^3, \cdots, t^{2d+1}) in \mathbb{R}^{2d+1} is affinely independent.
Exercise 3.3
- Describe a triangulation of the closed unit disk in \mathbb{R}^2.
- Describe triangulations of the spheres S^1 and S^2.
3.3 Intersection Pattern of a Collection of Sets: The Nerve Complex
As as example of applications of simplicial complexes, we introduce an idea of Pavel Alexandrov (1928) which is beautiful and very useful.
– Pavel Sergeyevich Alexandrov was a mathematician with influencial contributions to set theory and topology.
Let \mathcal{U} be a finite collection of subsets of a topological space (think metric space) X. The nerve \mathcal{N} (\mathcal{U}) of \mathcal{U} is the (abstract) simplicial complex with vertex set \mathcal{U} such that U_1, \cdots, U_n defines a simplex iff U_1 \cap \cdots \cap U_n \neq \emptyset.
Let \mathcal{U} be a finite collection of closed subsets of a topological space (think metric space) X, with the property that every non-empty intersection of sets of \mathcal{U} is contractible. Then, |\mathcal{N} (\mathcal{U})| \sim \bigcup_{U_\alpha \in \mathcal{U}} U_\alpha
Exercise 3.4
- Sketch some subsets of \mathbb{R}^2 and construct their nerve.
- Let \mathcal{U}=\{U_1, U_2, \cdots, U_n\} be closed convex subsets of \mathbb{R}^d. Show that |\mathcal{N} (\mathcal{U})| \sim U_1 \cup U_2 \cup \cdots \cup U_n.
3.4 Simplicial Approximation
We now introduce the counterparts of continuous maps in the category of simplicial complexes.
Let \mathcal{K} and \mathcal{L} be simplicial complexes.
A function f: V(\mathcal{K}) \to V(\mathcal{L}) is said to be a vertex map.
A function f: \mathcal{K} \to \mathcal{L} is said to be a simplicial map iff for any simplex \{v_0, v_1, \cdots , v_m\} in \mathcal{K}, \{f(v_0), f(v_1), \cdots , f(v_m)\} is a simplex in \mathcal{L}
Exercise 3.5
- Is every simplicial map a vertex map on the appropriate vertices?
- Is every vertex map on sets of vertices a simplicial map on the corresponing simplicial complexes?
- Is every simplicial map continuous on the bodies of the corresponding simplicial complexes (considered as subsets of appropriate Euclidean spaces)?
A continuous function f: |\mathcal{K}| \to |\mathcal{L}| can be approximated arbitrarily closely by a simplicial map g: \mathcal{K} \to \mathcal{L} on appropriate subdivisions of \mathcal{K} and \mathcal{L}
In the simplicial approximation mentioned here, for any point x \in |\mathcal{K}| there is a simplex \sigma \in \mathcal{L} such that f(x), g(x) \in |\sigma|