Loading [MathJax]/jax/output/HTML-CSS/fonts/TeX/fontdata.js
Persistent homology
An introduction via interactive examples

×
Persistent homology is one of the most important tools in computational topology. Using persistent homology, we can extract topological features of a space at different spatial resolutions. Persistent pairs are detected for identifying relevant features of the underlying space, rather than artifacts of sampling, noise, or particular choice of parameters. To find the persistent homology of a space, the space must first be represented as a simplicial complex. In this section, we are going to introduce the notion of simplicial complex and the notion of simplicial homology, a powerful tool for studying topological spaces that will reveal itself as fundamental for understanding the information provided by persistent homology.

Simplicial complexes

A k-dimensional simplex (k-simplex for short) is the convex hull v0v1vk of k+1 affinely independent points v0,v1,,vk in the Euclidean space Rn which are called its vertices. A face of σ=v0vk of a non-empty subset of the vertices of σ.

A simplicial complex Σ is a finite collection of simplices such that:

A d-dimensional complex (d-complex) is a complex such that the maximum of the dimensions of its simplices is d. We denote by Σk the set of all the k-simplices in Σ.

The interactive example illustrates a simplicial complex composed by: Since the maximum dimension of its simplices is 2, the complex is a simplicial 2-complex. Looking at the only triangle in the complex, we see that its faces are its three delimiting edges and their boundary vertices. In a similar fashion, the faces of an edge are its boundary vertices.

Simplicial Homology

Homology aims at detecting k-dimensional holes in a shape, k-holes for short. A k-hole is detected by collecting the k-simplices around it. So for example:

The interactive example presents only two types of holes over the three that we can find on a 2-simplicial complex. In particular it has two 0-holes, since it is formed by two components and one 1-hole.

In the following, we describe the algebraic formulation that allows for detecting holes. For each notion introduced, we will furnish the corresponding geometrical example on our interactive figure.

The k-chain is the basic element we are going to consider. A k-chain is a formal sum of k-simplices on Σk. The face relation among simplices induces a notion of boundary for k-chains. The boundary map k:Ck(Σ)Ck1(Σ) is defined, over each simplex σ=v0vk, by k(σ):=ˆσ0++ˆσk, for i=0,,k where ˆσi is the convex hull of all vertices of σ but vi. Then, k is extended to all k-chains by linearity and by removing each pair of simplices appearing twice.

Given a k-chain c, its (k1)-boundary is k(c) and the the image of the map k is denoted by Bk1(Σ).

Among all the possible chains on a simplicial complex, we want to recognize a specific type of chains. A k-cycle is a k-chain c such that k(c)=0. The kernel of k is denoted by Zk(Σ).

In the following example, we can study different types of chains and boundaries. Lets consider the 1-chain composed by a set of edges. Its 0-boundary corresponds to the set of vertices that appears as a face of an odd number of edges.

In this case, we have only one 2-chain composed by a single triangle and its 1-boundary is composed by all its three edges.

Identifying the holes of an object means to discriminate between the cycles that are the boundary of some chain and those that are not. As we already know, the 1-chain around the triangle is a boundary, while the 1-chain around the hole is not. Notice that we may have multiple non-boundary chains representing the same hole.

It can be easily checked that Bk(Σ)Zk(Σ) by noticing that, for each (k+1)-simplex σ, each simplex in k(k+1(σ)) appears exactly an even number of times, thus giving always a null contribute.

This allows us to define, the k-homology space of Σ as Hk(Σ):=Zk(Σ)Bk(Σ)

The quotient over the k-boundaries avoids redundancies, thus letting all the possible k-chains around the same k-hole to fall in the same homology class.

For any homology degree k, it holds that Hk(Σ) is a finite dimensional vector space. This means that the k-homology of a simplicial complex admits a finite basis of different k-homology classes h1,,hβk entirely expressing Hk(Σ). In formulas, Hk(Σ)Z2Z2βk copies of Z2

The integer βk indicates a homological invariant, which is called the k-Betti number. Intuitively, βk corresponds to the number of k-dimensional holes in the simplicial complex.

Theoretical basis. Building the simplicial chains in the way we have described is formally referred as build the chains by taking coefficients over Z2. This is a common practice when working with simplicial homology in real applications since, working with Z2, makes calculations much easier.

However, homology can be defined with coefficients in any Abelian group. The complete homological information uses Z as coefficient group, which is able of dealing with the presence of torsion in a shape. It can be proven (see [Hat02] , Chapter X) that simplicial complexes embeddable in R3 have no torsion and thus, their Z-homology groups reduce to Z2-homology.



Next Section