CALIFORNIA STATE UNIVERSITY, NORTHRIDGE
COMPUTING PERSISTENT HOMOLOGY MODULES
A thesis submitted in partial fulfillment of the requirements for the
degree of Master of Science in Mathematics
by
Mike Hubbard
December 2015
c Copyright by Mike Hubbard 2015
All Rights Reserved
ii
The thesis of Mike Hubbard is approved:
Dr. Alberto Candel
Date
Dr. Jerry Rosen
Date
Dr. Terry Fuller, Chair
Date
California State University, Northridge
iii
Dedication
To my wife, Marina, and my daughters, Megan and Natalie,
Thank you for being my motivation to work as hard as I can in everything that I do.
There are no words to express how much I love you all.
iv
Acknowledgements
I want to give my most heartfelt thanks to my wife and children for indulging my going
back to school to study mathematics at this stage of our lives. It was not without great
impact to our family, and their love and support throughout the entire process has meant
the world to me. There is no way I could have gotten through this without them.
I also want to thank my parents, Larry and Erika Hubbard, and my grandparents, Rudi
and Hilde Ventzke, whose love, support, and assistance with childcare made this experience
possible for me.
I would also like to acknowledge my business partners at IVR Technologies, Inc., Doug
Billi, Barry Sher, and Randall Walrond. There is no doubt that my pursuing this degree
impacted my work schedule. I thank them for covering me when I was unavailable due to
commitments at school and thank them for their support along the way. I am blessed to
have such wonderful friends to call work colleagues.
One of the most rewarding aspects of this program has been the opportunity to work
with fellow students who battled together with me through our coursework, the stress of
such a rigorous program, and many late nights. I thank them, as they were not only instrumental in helping me to understand a little better the mathematics we studied, but they also
made it a rich, rewarding experience. Many of the friendships forged during this special
time continue to this day, and I am thankful for that. Many of them have gone on to pursue
additional degrees, and I wish them all the best in their future endeavors in mathematics.
In particular, I want to thank Jesse Benavides, Sharon Paesachov, Shant Mahserejian, Alex
Sherbetjian, and Greg Cossel.
From the time I entered this program, I was amazed at the accessibility and helpfulness
of the entire Department of Mathematics. I want to thank, in particular, Dr. Werner Horn,
Dr. Mary Rosen, Dr. Alberto Candel, Dr. Stephen Breen, Dr. David Klein, Dr. Jerry Rosen,
v
Dr. Ali Zakeri, and Dr. Rabia Djellouli. Additionally, I thank Dr. Alberto Candel and Dr.
Jerry Rosen for participating on my committee. I greatly appreciate their involvement in
this project.
Finally, and perhaps mostly, I want to offer my most sincere thanks to Dr. Terry Fuller
for advising me during the research and writing phase of this paper. From the first time I met
Dr. Fuller as a student in his Calculus on Manifolds class, he has been an invaluable mentor
to me. His guidance and knowledge were essential to me in learning the mathematics that
provide the foundation of this work. I am astounded by and grateful for the amount of time
that he has so graciously devoted to me and this project. I will forever think fondly of the
many hours in his office that we spent discussing and sometimes debating mathematical
concepts. I learned so much, and I could not have worked with a better advisor.
vi
Table of Contents
Copyright
ii
Signature page
iii
Dedication
iv
Acknowledgements
vi
List of Figures
ix
List of Tables
x
Abstract
xi
Introduction
1
1
Background Information
3
1.1
Simplicial Complexes . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
3
1.2
How Filtrations Arise . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
6
1.3
Simplicial Homology . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
9
1.4
Computing Homology by Matrix Reduction . . . . . . . . . . . . . . . . . 14
1.5
Algebra and Structure Theorem . . . . . . . . . . . . . . . . . . . . . . . . 22
2
3
Persistence
24
2.1
Persistent Homology . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 24
2.2
The Persistence Module . . . . . . . . . . . . . . . . . . . . . . . . . . . . 27
2.2.1
The Persistence Module over R as a Graded Module over R[t] . . . 28
2.2.2
P-intervals . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 29
Computing Persistent Homology Modules Over a Field
vii
32
4
3.1
The Zomorodian-Carlsson Algorithm . . . . . . . . . . . . . . . . . . . . 32
3.2
Examples . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 33
3.2.1
Sphere . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 34
3.2.2
Klein Bottle . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 38
Computing Persistent Homology Modules Over Z
45
4.1
The Klein Bottle Revisited . . . . . . . . . . . . . . . . . . . . . . . . . . 46
4.2
Orientable 2-Dimensional Simplicial Manifolds . . . . . . . . . . . . . . . 48
4.3
Torus . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 65
4.4
Future Work . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 72
References
74
viii
List of Figures
1.1.1 Oriented Simplices . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
4
1.2.2 Sample Čech and Rips complexes . . . . . . . . . . . . . . . . . . . . . .
8
1.3.1 Consistently Oriented Simplices . . . . . . . . . . . . . . . . . . . . . . . 11
1.3.2 The chain complex C∗ . . . . . . . . . . . . . . . . . . . . . . . . . . . . 13
1.4.1 Sample simplicial complex . . . . . . . . . . . . . . . . . . . . . . . . . . 21
2.1.1 The persistence of γ . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 25
3.2.1 Sample triangulation of a sphere. . . . . . . . . . . . . . . . . . . . . . . . 34
3.2.2 Sample triangulation of a Klein bottle. . . . . . . . . . . . . . . . . . . . . 38
4.3.1 Sample triangulation of a torus. . . . . . . . . . . . . . . . . . . . . . . . . 66
ix
List of Tables
3.2.1 Sample filtration for simplices in Fig. 3.2.1. . . . . . . . . . . . . . . . . . 35
3.2.2 Sample filtration for simplices in Fig. 3.2.2. . . . . . . . . . . . . . . . . . 39
4.3.1 Sample filtration for simplices in Fig. 4.3.2. . . . . . . . . . . . . . . . . . 66
x
ABSTRACT
COMPUTING PERSISTENT HOMOLOGY MODULES
By
Mike Hubbard
Master of Science in Mathematics
Computational topology uses persistence to distinguish noise from data. Computing
persistent homology modules for simplicial complexes built out of point cloud data helps
to determine the “shape” of data. In their paper published in 2004, Zomorodian and
Carlsson presented an algorithm for computing the persistent homology of a filtered ddimensional simplicial complex over any arbitrary field. In this thesis, we will show how
the Zomorodian-Carlsson algorithm is insufficient to compute persistent homology modules over Z by exhibiting an example where their algorithm fails, using the Klein bottle
as the underlying topological space. We will also prove that the Zomorodian-Carlsson algorithm can be used to compute persistent homology over Z, provided that the underlying
space is an orientable simplicial 2-dimensional manifold.
xi
Introduction
Computational topology is a relatively new branch of topology that focuses on analyzing
data that is difficult to analyze using classical methods. Examples of such data are a point
cloud data set (a collection of points in n-dimensional Euclidean space) and data that is
sampled from a highly curved surface or manifold. Computational topology can assist
in helping one to determine the shape of the data. One of the challenges that arises in
analyzing such data is filtering out the “noise” that exists in any data set. Outlier or poorly
sampled data are examples of noise. Computational topology seeks to give the user of the
data a tool to help distinguish actual features of the data from noise.
One of the tools that computational topologists use to that end is called persistent homology. Like other forms of homology, persistent homology helps to identify topological
features such as connectedness and the number of holes in a topological space. Moreover,
persistent homology allows the user to simultaneously look at different resolutions of the
data set, thereby allowing the user to decide what is a feature and what is noise. In order
to compute the persistent homology modules, there are several methods used to fit a family
of simplicial complexes, called a filtration, to the data. This filtration becomes the input to
the algorithms that compute the persistent homology modules.
This thesis begins by reviewing some important background information on simplicial
complexes, filtrations, and simplicial homology. We also review matrix reduction and the
background algebra on which the reduction algorithms are built. We then introduce the
concept of persistence and define persistent homology, a fundamental aspect of computational topology. In addition, we present an alternate view of persistent homology modules
by examining a structure referred to in the literature as the persistence module. The persistence module provides the foundation for the work by Zomorodian and Carlsson, who
developed an algorithm that computes persistent homology modules over arbitrary fields
1
[10]. We give a concrete example of a filtered simplicial complex which exhibits how their
algorithm fails for integral homology in the presence of torsion. We then present original work which shows that the Zomorodian-Carlsson algorithm will in fact work over the
ring of the integers for simplicial complexes that are orientable 2-dimensional simplicial
manifolds.
2
Chapter 1
Background Information
1.1
Simplicial Complexes
Let S = {v0 , . . . , vk } be k + 1 points in Rd , and let λ0 , . . . , λk ∈ R.
Definition 1.1.1. A point x =
Pk
λi vi is a linear combination of S. An affine combiP
nation of S is a linear combination with ki=0 λi = 1. A convex combination of S is an
i=0
affine combination with λi ≥ 0 for all i. The convex hull of S is the set of all convex
combinations of S.
Definition 1.1.2. The points v0 , . . . , vk are affinely independent if no vi is an affine combination of the other points in the set.
Definition 1.1.3. A k-simplex σ is the convex hull of S = {v0 , . . . , vk }, where v0 . . . vk are
affinely independent. The points of S are the vertices of σ. Its dimension is dim σ = k.
For the first few dimensions, special names are used: a 0-simplex is referred to as a
vertex, a 1-simplex is referred to as an edge, a 2-simplex is referred to as a triangle, and a
3-simplex is referred to as a tetrahedron.
Definition 1.1.4. Let σ be a k-simplex defined by its set of vertices S = {v0 , . . . , vk }. If a
simplex τ is defined by its set of vertices T , where T ⊆ S, then τ is a face of σ, denoted as
τ ≤ σ.
Definition 1.1.5. An orientation of a k-simplex σ = {v0 , . . . , vk } is an equivalence class
of orderings for the vertices of σ where
(v0 , v1 , . . . , vk ) ∼ (vπ(0) , vπ(1) , . . . , vπ(k) )
3
are equivalent orderings if the parity of the permutation π is even. A simplex and a specified
orientation are referred to as an oriented simplex.
Orientations for 1-simplices and 2-simplices throughout this paper are displayed graphically using arrows as pictured below.
Figure 1.1.1: An oriented 1-simplex (left) and an oriented 2-simplex (right).
Definition 1.1.6. A simplicial complex K in Rd is a finite set of simplices that satisfy the
following two conditions:
(1) If σ ∈ K, τ ≤ σ, then τ ∈ K;
(2) If σ1 , σ2 ∈ K, then either σ1 ∩ σ2 = ∅, or σ1 ∩ σ2 ≤ σ1 and σ1 ∩ σ2 ≤ σ2 , i.e. σ1 ∩ σ2
is a face of both σ1 and σ2 .
Definition 1.1.7. K is an oriented simplicial complex if each simplex in K is oriented.
Definition 1.1.8. A subcomplex of K is a subset L ⊆ K such that L is also a simplicial
complex.
Definition 1.1.9. The underlying space |K| of a simplicial complex K ∈ Rd is
[
|K| =
σ,
σ∈K
where |K| is given the relative topology arising from the usual topology on Rd .
4
Definition 1.1.10. A triangulation of a topological space X is a simplicial complex K such
that |K| is homeomorphic to X.
Informally, a manifold is a topological space that locally looks like n-dimensional Euclidean space. We formalize this concept in the definition below.
Definition 1.1.11. A Hausdorff space X is called a topological n-manifold if every x ∈ X
has an open neighborhood homeomorphic to Rn .
Throughout this paper, we use the following definition:
Definition 1.1.12. An n-dimensional simplicial manifold is a simplicial complex K where
|K| is homeomorphic to a n-dimensional topological manifold.
A simplicial complex in Rd is determined completely by its set of vertices, and a collection of subsets of those vertices corresponding to the individual simplices of the complex.
In this setting, one can view a simplicial complex as a purely combinatorial object, which
gives rise to the following definition:
Definition 1.1.13. An abstract simplicial complex is a pair X = {V, S} where V is a finite
set of elements referred to as the vertices of X and S is a set of non-empty subsets of V .
Each element σ ∈ S is called a simplex of X. It is necessary that the set S satisfy the
following two conditions:
(1) If v ∈ V , then {v} ∈ S;
(2) if σ ∈ S and τ ⊂ σ where τ 6= ∅, then τ ∈ S.
If a simplex σ ∈ S in the abstract simplicial complex X has exactly n + 1 (n ≥ 0)
elements, then the simplex is referred to an n-dimensional simplex or simply as an nsimplex. We will refer to the dimension of X as the largest n for which S contains an
5
n-dimensional simplex. One may wonder if any such abstract simplicial complex may be
realized geometrically, i.e. is isomorphic to a geometric simplex in some Rd . In fact, the
following theorem shows that it can be realized in Euclidean space of sufficient dimension.
A proof can be found in [2].
Theorem 1.1.1. Every abstract simplicial complex of dimension n has a geometric realization in R2n+1 .
The following definition is important as filtered simplicial complexes are the inputs to
the algorithms discussed in this paper.
Definition 1.1.14. A filtration of a simplicial complex K is a nested subsequence of subcomplexes of K such that ∅ ⊆ K0 ⊆ K1 ⊆ · · · ⊆ Km = K. We call K a filtered complex.
1.2
How Filtrations Arise
Definition 1.2.1. A finite set of points X from a topological subspace X ⊆ Rd is called
point cloud data.
The idea is that if the sampling of data is dense enough, then we should be able to ascertain
topological features of X directly from point cloud data [10].
Definition 1.2.2. Let F be a finite collection of sets. The nerve of F is the set of all
non-empty subcollections whose sets have a non-empty common intersection. That is,
Nrv F = {X ⊆ F |
\
X 6= ∅}.
The following fundamental result in computational topology is called the Nerve Theorem
[2].
Theorem 1.2.1. Let F be a finite collection of closed, convex sets in Euclidean space. Then
the nerve of F and the union of the sets in F have the same homotopy type.
6
Definition 1.2.3. Let S be a finite set of points in Rd and write Bx () for a closed ball with
center x and radius . The Čech complex of S and is the nerve of this collection of balls,
but we substitute the center for each ball, that is,
Čech() = {σ ⊆ S |
\
Bx () 6= ∅}.
x∈σ
By the Nerve Theorem, the Čech complex captures the topology of the union of this
collection of balls, but constructing the Čech complex of a finite set of points in Rd requires
examining all subcollections, which can be both difficult and computationally expensive.
There is another complex, the Vietoris-Rips complex, that allows us to approximate the
Čech complex by just checking pairs and then adding higher-dimensional simplices whenever all the edges are in the complex. We first need the following definition.
Definition 1.2.4. Let S ⊆ Rd , then the diameter of S is
diam S = sup kx − yk.
x,y∈S
Definition 1.2.5. The Vietoris-Rips complex of S and is
Vietoris-Rips() = {σ ⊆ S | diam σ ≤ 2}.
We examine both the Čech and Vietoris-Rips complexes and their differences using the
example of three points in R2 in the following figure.
7
Figure 1.2.2: A fixed set of points (upper left) can be completed to a Čech complex C (lower left)
or to a Rips complex R (lower right) based on a proximity parameter (upper right).
We note that the edges in the Vietoris-Rips complex, often referred to in the literature as just
the Rips complex, are exactly the same as those in the Čech complex and that Čech() ⊆
Vietoris-Rips() [5]. The problem, as we see in the above example, is that the Rips complex
doesn’t quite approximate the Čech complex as they have different homotopy types. In
the Čech complex, the 2-simplex, abc is not included; however, in the Rips complex, it
is, thereby giving the Čech complex the homotopy type of S 1 and the Rips complex the
homotopy type of a point.
However, if we increase sufficiently we can obtain the reverse inclusion. It turns
√
out that the factor by which we must increase is 2. This is given by the Vietoris-Rips
√
Lemma which states that Vietoris-Rips() ⊆ Čech( 2) [2].
8
For sufficiently small, the complex is a discrete set; for sufficiently large, the complex is a single high-dimensional simplex [5]. Let R be a Rips complex of radius . There
is an obvious inclusion R (X) ⊆ R0 (X) whenever < 0 . Therefore, for any increasing
sequence of non-negative real numbers, we obtain a filtration of the simplicial complex
representing X [10].
By their nature, the Čech and Vietoris-Rips complexes are high dimensional complexes.
There are several other methods used to obtain filtrations of simplicial complexes including
manifold sweeps which lend themselves to lower dimensional complexes like the surfaces
discussed in this paper. However, some of these methods require more sophisticated background such as Morse Theory in order to justify their use which is beyond the scope of this
paper. Consult [2], [5], or [9] for a detailed treatment of the subject. For our purposes,
it suffices to say that a filtration has been obtained by some means for a given simplicial
complex K.
1.3
Simplicial Homology
While there are several forms of homology that can be used to study topological spaces,
simplicial homology is the most popular choice of computational topologists due to its natural fit in the setting of representing topological spaces by simplicial complexes and the
fact that its combinatorial nature lends itself to fast, easy-to-implement computer algorithms [9].
Definition 1.3.1. Let K be an oriented simplicial complex and R be a commutative ring
with identity. We define the p-th chain module of K over R, denoted Cp (K, R), to be the
free R-module on the set of oriented p-simplices in K. That set of oriented p-simplices
forms the standard basis for Cp (K, R). Each element of c ∈ Cp (K, R) is called a p-chain.
If σ and τ are the same simplex in K with opposite orientation, then we define σ = −τ .
Definition 1.3.2. Let σ1 , σ2 , . . . , σnp be the set of oriented p-simplices of K, and let c ∈
9
Cp (K, R) such that
c = λ1 σ1 + λ2 σ2 + . . . + λnp σnp ,
where λi ∈ R for i = 1, . . . , np . We define the support of the chain c, denoted supp(c), to
be the following subcomplex of K:
supp(c) =
[
σi .
λi 6=0
We will consider two important examples of p-chains over different rings, namely R =
Z and R = Z[t]. In the case where R = Z[t], we make the following definition:
Definition 1.3.3. A chain c ∈ Cp (K, Z[t]) is monic if c = λ1 σ1 + λ2 σ2 + . . . + λnp σnp ,
where λi ∈ Z[t] for i = 1, . . . , np and every nonzero λi is of the form ±tki where ki ∈
Z+ = {0} ∪ N.
Let σj be an oriented p-simplex in the p-chain c = λ1 σ1 + λ2 σ2 + . . . + λnp σnp , where
λi ∈ R for i = 1, . . . , n. In both the case where R = Z and the specific case where
R = Z[t] and c is monic, we can speak of the sign of λj . If the sign of λj is positive, then
we say that c induces the same orientation on σj in supp(c) as its given orientation in K.
If the sign of λj is negative, then we say that c induces the opposite orientation on σj in
supp(c) as the given orientation of σj in K. In this way, the chain induces an orientation
on supp(c).
Definition 1.3.4. The boundary operator ∂p : Cp (K, R) → Cp−1 (K, R) is a homomorphism defined on a simplex σ = (v0 , v1 , . . . , vp ) by
∂p (σ) =
p
X
(−1)i (v0 , v1 , . . . , v̂i , . . . , vp ),
i=0
where v̂i is the standard notation to indicate that vi is deleted from the sequence. This is
extended linearly to give an R-module homomorphism.
10
Let σ be a p-simplex in the chain c ∈ Cp (K, R) such that τ is a (p − 1)-dimensional
face of σ. Then the boundary chain ∂(c) is a (p − 1)-chain in Cp−1 (K, R). If R = Z or
R = Z[t] then we can refer to ∂p (c) inducing an orientation on τ as discussed above. In
this case, we simply refer to ∂p inducing an orientation on τ .
Definition 1.3.5. Two p-simplices sharing a (p − 1)-face σ are consistently oriented if ∂p
induces different orientations on σ.
The following figure depicts two consistently oriented 2-simplices.
Figure 1.3.1: The two 2-simplices bac and bcd are consistently oriented as ∂2 induces opposite
orientations on their common edge bc.
Definition 1.3.6. A n-dimensional simplicial manifold K is orientable if all n-simplices
of K can be oriented consistently. Otherwise the simplicial manifold is nonorientable.
The simplicial complexes in this paper are all assumed to be oriented due to the fact that
each simplex in the complex has some given orientation. However, we may not assume that
an oriented simplicial manifold is consistently oriented, nonorientable simplicial manifolds
exist [6].
The boundary homomorphisms along with a collection of chain modules on K lead to
the following chain complex C∗ (K, R):
∂p+2
∂p+1
∂p
∂p−1
· · · −−→ Cp+1 (K, R) −−→ Cp (K, R) −→ Cp−1 (K, R) −−→ · · ·
11
There are two very important submodules of each chain module Cp (K, R) that arise
from the boundary homomorphism, namely the cycle module Zp which is equal to the
kernel of the boundary homomorphism, i.e. Zp = ker ∂p , and the boundary module Bp
which is equal to the image of the boundary homomorphism, i.e. Bp = Im ∂p+1 .
Theorem 1.3.1. ∂p ∂p+1 = 0 for all p.
Proof:
Let σ = (v0 , v1 , . . . , vp+1 ). Then
p+1
X
∂p ∂p+1 (σ) = ∂p ( (−1)i (v0 , v1 , . . . , v̂i , . . . , vp+1 ))
i=0
=
X
(−1)i (−1)j (v0 , v1 , . . . , v̂j , . . . , v̂i , . . . , vp+1 )
j<i
+
X
(−1)i (−1)j−1 (v0 , v1 , . . . , v̂i , . . . , v̂j , . . . , vp+1 )
j>i
= 0.
The last equality follows since every (p − 2)-dimensional face of σ appears in both sums
above, once with sign (−1)i (−1)j and once with sign (−1)i (−1)j−1 , and (−1)i (−1)j +
(−1)i (−1)j−1 = 0. This fact shows that the submodules Bp and Zp are nested submodules of Cp (K, R)
with Bp ⊆ Zp ⊆ Cp (K, R). The following figure illustrates how these submodules are
related by the boundary homomorphism across dimensions.
12
Figure 1.3.2: The chain complex C∗ with its chain modules and cycle and boundary submodules
connected by boundary homomorphisms.
The fact that the boundary submodule is also a submodule of the cycle submodule
allows us to form the quotient, which is how we define the p-th homology module.
Definition 1.3.7. The p-th homology module Hp (K, R) is the p-th cycle module of K modulo the p-th boundary module, namely Hp (K, R) = Zp /Bp . Each element of Hp (K, R) is
a homology class.
In the case where R is a PID, the homology modules Hp (K, R) are completely characterized according to the the structure theorem for finitely generated modules over a PID.
Theorem 1.3.2. If R is a PID, then every finitely generated R-module is isomorphic to a
direct sum of cyclic R-modules. That is, it decomposes uniquely into the form
Rβ ⊕
m
M
!
R/di R ,
i=1
for di ∈ R, β ∈ Z, such that di di+1 .
Definition 1.3.8. The integer β in Theorem 1.3.2 is the free rank or Betti number of
Hp (K, R), and the elements d1 , . . . , dm ∈ R are the torsion coefficients of Hp (K, R).
13
1.4
Computing Homology by Matrix Reduction
Homology modules can be effectively computed using a matrix reduction process [8].
We begin by outlining the process for R = Z.
Definition 1.4.1. Let G and G0 be free Abelian groups with bases a1 , . . . , an and a01 , . . . , a0m ,
respectively. If f : G → G0 is a homomorphism, then
f (aj ) =
m
X
λij a0i
i=1
for unique integers λij . The matrix (λij ) is called the matrix of f relative to the given bases
of G and G0 .
Theorem 1.4.1. Let G and G0 be finitely generated free Abelian groups, and let f : G → G0
be a homomorphism. Then there are bases for G and G0 such that, relative to these bases,
the matrix of f has the form
b
0
1
..
.
0
B=
0
b`
0
0
where bi ≥ 1 and b1 b2 . . . b` .
Definition 1.4.2. The form of the matrix in the theorem above is defined to be the Smith
normal form of the matrix.
This matrix is in fact uniquely determined by f ; however there are multiple bases of G
and G0 , respectively, that will yield a matrix of f in the form specified above [8]. The proof
of Theorem 1.4.1 is the matrix reduction algorithm itself which will be provided below.
The matrix reduction algorithm employs a series of elementary row and column opera14
tions to reduce the matrix to its Smith normal form. In doing so, alternate bases of G and
G0 are derived. The elementary row operations utilized in the algorithm are
I. exchange row i and row j,
II. multiply row i by −1,
III. replace row i by q(row j) + (row i), where q ∈ Z and i 6= j;
and the analogous column operations are
I. exchange column i and column j,
II. multiply column i by −1,
III. replace column i by q(column j) + (column i), where q ∈ Z and i 6= j.
Every row or column operation performed on the matrix corresponds to a change of
basis in the groups G0 and G respectively. This allows us to take two different views. On the
one hand, the matrix moves are how the respective bases are transformed, but alternatively
we can view the basis elements as keeping a running record of the matrix moves performed.
As a point of notation, we will refer to the i-th basis element of G0 as êi and the j-th basis
element of G as ej (without the hat).
We would like to examine exactly how the basis elements of the groups are altered by
the various elementary row and column operations. We consolidate the following information into a proposition based on a discussion from [8].
Proposition 1.4.2. For elementary row and column operations performed on a boundary
matrix, the basis elements that correspond to the columns and rows being modified are
altered in the following way:
15
(1) Row (column) operations of type I have no effect on the row (column) basis elements.
(2) Row (column) operations of type II correspond to replacing êi (ei ), with −êi (−ei ).
(3) Row (column) operations of type III alter the row (column) basis elements in the
following way:
(i) If column i is replaced by q(column j) + (column i), then the change of basis
observed is that ei is replaced with qej + ei .
(ii) If row i is replaced by q(row j) + (row i), then the change of basis observed is
that êj is replaced with êj − qêi
Given a matrix M = (mij ) of integers, not all zero, let α(M ) denote the smallest
nonzero element of the set of numbers |mij |. We call mij the minimal entry of M if
|mij | = α(M ).
Proposition 1.4.3. The number α(M ) fails to divide some nonzero entry of M if and only if
it is possible to to decrease the value of α by applying elementary row or column operations
to M .
Proof:
We show the reverse direction by contrapositive. If the number α(M ) divides each nonzero
entry of M , then it will divide each nonzero entry of any matrix M 0 that is obtained by
applying elementary row or column operations to M . Therefore, it is not possible to reduce
the value of α(M ) by applying elementary row or column operations to M .
For the forward direction, suppose that mij is a minimal entry of M that fails to divide
some nonzero entry of M . If mij fails to divide a nonzero entry mkj in its same column,
then we may apply the division algorithm resulting in
mkj
r
=q+
mij
mij
16
where 0 < |r| < |mij | and q ∈ Z. We now replace row k of M with (row k) − q(row i)
which results in replacing entry mkj with mkj − qmij = r. Now the value of α for this new
matrix is at most |r|, which is less than α(M ).
A similar argument is applied if mij fails to divide some nonzero entry mik in its row.
Finally, suppose mij divides every nonzero entry in its row and column but fails to divide
the entry mst , where s 6= i and t 6= j. In this case consider the following four entries of M :
mij · · ·
..
.
mit
..
.
msj · · ·
mst
In this scenario, mij divides msj ; so msj = kmij for some k ∈ Z. Thus we can apply an
elementary row operation to bring the matrix to the form where these four entries now look
like this:
mij · · ·
..
.
0
···
mit
..
.
mst + kmit
If we replace row i of this matrix with (row i) − (row s), then mij - mst + (k + 1)mit , and
we are back in the previous situation where mij fails to divide some entry of its row. We
have thus proven our assertion. We now provide the proof of Theorem 1.4.1, which is the reduction algorithm itself.
Proof:
Step 1:
Select a pivot. By Proposition 1.4.3, we can find a minimal positive entry in the
matrix that divides every other nonzero entry. We use type I elementary row and column
operations to bring that entry to the upper left corner of the matrix. This entry will be
referred to as the pivot.
17
Step 2:
Make all other entries in the pivot row and pivot column equal to zero. Be-
cause the pivot divides every other nonzero entry in the matrix, and in particular every other
nonzero entry in its row and column, we can employ type III row and column operations to
make all of those entries equal to zero. Observe that the entry in the upper left corner still
divides every nonzero entry in the matrix.
Repeat: We now iteratively repeat Steps 1 and 2 for the submatrix obtained by ignoring
the first row and first column of our previous matrix.
Terminate: The last step is to terminate the process. This occurs in one of two ways; when
attempting to repeat Steps 1 and 2, either the next submatrix is the zero matrix, in which
case a pivot cannot be chosen, or the next submatrix is empty, meaning that each diagonal
entry of M is nonzero.
Thus the original matrix has been successfully reduced to Smith normal form. To see
that the diagonal entries b1 , . . . , b` divide one another successively, we note that at the end
of Step 1, each pivot divides every other entry in the matrix to the right of it and below it.
So when the process has concluded, we can be sure that b1 b2 . . . b` . It is evident that the proof of Theorem 1.4.1 rests on the division algorithm for Z as this
was a necessary component of Proposition 1.4.3. Since any Abelian group is a Z-module,
we can generalize Theorem 1.4.1 and Proposition 1.4.3 to module homomorphisms between R-modules, provided that R is equipped with a division algorithm, i.e. a Euclidean
domain [1].
Theorem 1.4.4. Let R be a Euclidean domain and M and M 0 be finitely generated Rmodules. Also, let f : M → M 0 be a module homomorphism. Then there are bases for M
18
and M 0 such that, relative to these bases, the matrix of f has the form
b1
B=
0
0
..
.
b`
0
0
0
where bi ≥ 1 and b1 b2 . . . b` .
In this paper we will be concerned with the case where M and M 0 are the chain modules
Cp and Cp−1 , respectively, and f is the boundary homomorphism ∂p .
Let R be a Euclidean domain, and let K be a simplicial complex. We show how we can
use Theorem 1.4.4 to describe Hp (K, R) as in Theorem 1.3.2. By definition, the oriented
p-simplices form the standard basis for each chain module Cp = Cp (K, R). We define
Mp to be the matrix representation of the boundary homomorphism ∂p : Cp → Cp−1
with respect to the standard bases of both Cp and Cp−1 , and we refer to Mp as the standard
matrix representation of ∂p . We assume that each Cp has an arbitrary but fixed ordering of psimplices, and we define np to be the rank of Cp . It follows that the boundary matrix Mp has
np columns and np−1 rows (the number of p-simplices and (p − 1)-simplices respectively).
From the definition of ∂p , it is clear that each entry of Mp is in {−1, 0, 1}.
As the original matrix Mp is reduced to its Smith normal form, the standard bases of
Cp and Cp−1 are modified into new bases of Cp and Cp−1 , respectively. Let {e1 , . . . , enp }
fp , and
and {ê1 , . . . , ênp−1 } denote these bases. The reduced matrix will be referred to as M
it will have the following form:
19
b
0
1
.
..
0
fp =
M
0
blp
0
0
fp = rank Mp , bi ≥ 1, and bi bi+1 for all 1 ≤ i < lp .
In Smith normal form, lp = rank M
By computing the Smith normal form of the boundary matrix of a simplicial complex in
each dimension, we are able to obtain a full characterization of each homology module
Hp (K, R):
fp
(1) The torsion coefficients of Hp−1 (K, R) are precisely the diagonal entries bi of M
such that bi > 1.
(2) {ei | lp + 1 ≤ i ≤ np } is a basis for Zp . Therefore, rank Zp = np − lp .
(3) {bi êi | 1 ≤ i ≤ lp } is a basis for Bp−1 . Equivalently, rank Bp = rank Mp+1 = lp+1 .
By combining (2) and (3) above, we see that βp = rank Zp − rank Bp = np − lp − lp+1 .
This means that reducing the boundary matrix in each dimension allows to easily compute
the Betti numbers for each homology module, Hp (K, R).
Example 1.4.1. We set R = Z, and consider a very basic simplicial complex K as depicted
in the following figure. As K is connected and contractible, we know that H0 (K, Z) = Z
and H1 (K, Z) = 0.
20
Figure 1.4.1: Sample simplicial complex K
The boundary matrix M1 would be
ab bc
a −1 0
b 1 −1
c 0
1
If we replace column 2 with column 2 plus column 1, the result would be
ab
ab + bc
a −1
b 1
c 0
−1
0
1
Notice that the modified basis element is ab+bc, and the boundary matrix properly encodes
the boundary as the linear combination of original basis elements a and c as −1(a) + 1(c).
Now, if we had done a row operation instead and replaced row 2 with row 2 plus row 1,
the result would have been
21
ab bc
a − b −1 0
0 −1
b
c
0
1
Notice now that the modified basis element occurs in row 1, even though we replaced
row 2, and the boundary matrix correctly encodes the boundary of the basis element ab as
−1(a − b), which of course is b − a.
By putting M1 into Smith normal form, we have
−ab −bc
a−b
f1 =
M
b−c
c
1
0
0
0
1
0
So, β0 = n0 − l0 − l1 = 3 − 0 − 2 = 1 and β1 = n1 − l1 − l2 = 2 − 2 − 0 = 0, as expected.
1.5
Algebra and Structure Theorem
To examine the work of Zomorodian and Carlsson in [10], we must define graded rings
and graded modules.
Definition 1.5.1. A graded ring is a ring hR, +, ⊗i equipped with a direct sum decompoL
sition of Abelian groups R ∼
= i Ri , i ∈ Z, so that the multiplication is defined by bilinear
pairings Rn ⊗ Rm → Rn+m . Elements in a single Ri are homogeneous and have degree i.
The direct sum decomposition is referred to as the grading of R.
Similarly, we define a a graded module.
Definition 1.5.2. A graded module M over a graded ring R is a module equipped with a
L
direct sum decomposition, M ∼
= i Mi , i ∈ Z, so that the action of R on M is defined by
22
bilinear pairings Rn ⊗ Mm → Mn+m . Elements in a single Mi are homogeneous and have
degree i. The direct sum decomposition is referred to as the grading of M .
In general the decomposition may not be finite. For our purposes we are only concerned
with those gradings that are bounded from below.
Definition 1.5.3. A graded ring (module) is non-negatively graded if Ri = 0 (Mi = 0) for
all i < 0.
Example 1.5.1. Let R[t] be polynomial ring over R with indeterminate t. We may grade
L
R[t] non-negatively as R[t] = n≥0 (tn ). This is called the standard grading for R[t].
In Section 2.2, we will define the persistence module for a filtered simplicial complex
K and discuss how to give it the structure of a graded module over the graded ring R[t].
The following theorem is a generalized version of Theorem 1.3.2 [10].
Theorem 1.5.1. Let M be graded module over a graded PID R. Then
M∼
=
n
M
!
Σαi R
⊕
i=1
m
M
!
Σγj R/dj R ,
j=1
where dj ∈ R are homogeneous elements so that dj dj+1 , αi , γj ∈ Z, and Σα denotes an
α-shift upward in the grading.
As before, the first term is the free part, and the second term represents the torsional
part, where in the graded case the torsional elements are also homogeneous.
23
Chapter 2
Persistence
2.1
Persistent Homology
One of the key tenets of computational topology is that the longer a topological feature
persists in a filtration, the more likely it is to be an actual feature of the object being sampled and the less likely it is to be noise that can be ignored. Persistence is the tool used
to quantify the length of time a feature exists. The following discussion on persistence,
including notation and any definitions, figures, etc., follows the work of Edelsbrunner and
Harer [2].
Let K0 ⊆ K1 ⊆ · · · ⊆ Km = K be a filtered simplicial complex. For every i < j we
have inclusion maps from Ki to Kj . These inclusion maps induce homomorphisms from
the associated homology modules; that is, fpi,j : Hp (Ki , R) → Hp (Kj , R) is a homomorphism for each dimension p. Therefore for each dimension p there exists a sequence of
homology modules connected by homomorphisms,
0 → Hp (K0 , R) → Hp (K1 , R) → · · · → Hp (Km , R) = Hp (K, R).
As simplices are added to the complex Ki to form Ki+1 , new homology classes will be
created, and some existing homology classes may be destroyed. A homology class may
be destroyed by the addition of a (p + 1)-dimensional simplex that “fills the hole” of an
existing homology class, thereby making it trivial. The following definition provides a
structure to discuss homology classes that were created at or before a certain index in the
filtration and those that cease to exist after a specified later index in the filtration.
Definition 2.1.1. The p-th persistent homology modules Hpi,j (K, R) are the images of the
homomorphisms fpi,j : Hp (Ki , R) → Hp (Kj , R) induced by inclusion, for 0 ≤ i ≤ j ≤ m.
24
The corresponding p-th persistent Betti numbers are the ranks of these modules, βpi,j =
rank Hpi,j (K, R).
Therefore, the persistent homology modules are made up of p-cycles that existed in Ki
and continued to exist until at least Kj . Alternatively, we can define the p-th persistent
homology modules as Hpi,j (K, R) = Zp (Ki , R)/(Bp (Kj , R) ∩ Zp (Ki , R)). It is worth
noting that this alternate definition is well-defined; both modules in the denominator are
submodules of Cp (Kj , R), and consequently the intersection of these modules is also a
module, in fact, a submodule of the numerator. This definition is quite natural as we wish
to consider the p-cycles of Ki modulo the boundaries of those same cycles that exist in Kj .
This means that in each dimension p, for every pair of indices such that i ≤ j, there exists
a persistent homology module. As a point of notation, Hpi,i = Hp (Ki , R).
Let γ be a homology class of Hp (Ki ). Then we say that γ was born at Ki if γ ∈
/ Hpi−1,i ;
that is, Ki is the first step in the filtration in which γ exists. In addition, we say that γ dies
entering Kj if γ merges with an older homology class as we go from Kj−1 to Kj . More
formally, γ dies entering Kj if fpi,j−1 (γ) ∈
/ Hpi−1,j−1 but fpi,j (γ) ∈ Hpi−1,j as depicted in
Figure 2.1.1.
Figure 2.1.1: The homology class γ is born at Ki since it does not lie in the image of Hp (Ki−1 , R)
(the shaded region). In addition, γ dies entering Kj since this is the first time in the filtration that
its image merges into the image of Hp (Ki−1 , R)
.
25
We will refer to the simplex σ whose addition to the complex resulted in the creation
of a homology class γ as a creator, and we will call a simplex τ whose addition to the
complex resulted in the elimination of a homology class a destroyer. That is, σ creates
γ, and τ destroys γ. In addition, we call a creator a positive simplex and a destroyer a
negative simplex. Observe that each time a p-dimensional simplex is added to the complex
it either creates a p-cycle or destroys a (p−1)-cycle. Therefore every simplex is necessarily
either positive or negative. It is convention to consider the homology class eliminated by a
destroyer to be the youngest homology class (that has not already been eliminated) created
by one of its boundary elements. For example, consider a filtration whereby a 0-simplex a
is added first, then a 0-simplex b is added next, and then finally the 1-simplex ab is added.
We will consider the destroyer ab to have eliminated the 0-dimensional homology class
created by b.
Assuming that γ was born at Ki and died entering Kj , we refer to the difference in
function (the one that was used to create the filtration) values as the persistence of γ. Thus
if f : K → R such that f −1 (−∞, ai ) = Ki and f −1 (−∞, aj ) = Kj , then the persistence
of γ, denoted pers(γ) = aj − ai . If we are not concerned with the actual function values,
and in this paper we are not, then we refer to the index persistence of γ as simply j − i.
If γ is born at Ki and never dies, then we say that γ has infinite persistence and set the
persistence and index persistence to infinity.
The goal of computational topology is to provide a tool to separate data from noise,
and persistence is the primary tool used to accomplish this. It provides the ability for the
users of the data to quantify ranges for when topological features exist, allowing them
to determine what constitutes an actual feature of the data and what can be ignored as
noise. Often in the literature, diagrams called persistence diagrams, or barcodes, are used
to visualize the collection of persistent Betti numbers. Studying these diagrams in depth is
not necessary for the the purpose of this paper, but they can be explored further in [2], [5],
26
or [9].
2.2
The Persistence Module
Now that we have a handle on what persistence is, we shift our perspective a bit and
take another look at it from a different viewpoint. The goal of this view is to combine all of
the persistent homology modules for every simplicial complex in the filtration into a single
algebraic structure. The following definitions and the subsequent correspondence theorem,
proof, and corollary are taken from [9].
Definition 2.2.1. A persistence complex C is a family of chain complexes {C∗i }i≥0 over R,
together with chain maps f i : C∗i → C∗i+1 , so that we have the following diagram
f0
f1
f2
C∗0 −→ C∗1 −→ C∗2 −→ · · · .
The diagram below is a portion of a persistence complex, with the chain complexes
expanded.
∂3
∂3
C20
f0
∂3
/ C1
f1
∂2
C10
f0
/ C1
C00
f1
∂1
f0
f2
/
···
f2
/
···
∂2
/
C12
1
∂1
C22
2
∂2
/
∂1
/ C1
f1
0
/
C02
f2
/
···
Definition 2.2.2. A persistence module M is a family of R-modules M i , together with
homomorphisms ϕi : M i → M i+1 .
Definition 2.2.3. A persistence complex {C∗i , f i } (persistence module {M∗i , ϕi }) is of finite
type if each component complex (module) is a finitely generated R-module and if the maps
27
f i (ϕi , respectively) are isomorphisms for i ≥ m for some integer m.
Example 2.2.1. Let K0 ⊆ K1 ⊆ · · · ⊆ Km = K be a filtered simplicial complex. We
get a persistence complex {C∗i , f i }, for i = 0, . . . , m, from the family of chain complexes
{C∗ (Ki , R)}, and taking f i : C∗ (Ki , R) → C∗ (Ki+1 , R) to be the homomorphism induced
by the inclusion Ki ⊆ Ki+1 .
We then get a persistence module by taking the homology of each chain complex and
L
setting M i = p≥0 Hp (Ki , R). The homomorphisms ϕi : M i → M i+1 are also induced
by the inclusion Ki ⊆ Ki+1 .
When K is finite, the persistence complex {C∗i , f i } and its persistent homology module
{M∗i , ϕi } are both of finite type.
2.2.1
The Persistence Module over R as a Graded Module over R[t]
Assume that M = {M i , ϕi }i≥0 is a persistence module over a a ring R. Let R[t] be
equipped with the standard grading, and define a graded module over R[t] by
α
e(M) =
∞
M
M i.
i=0
where the R-module structure is simply the direct sum of the structures on the individual
components, and where the action of t is given by
t · (m0 , m1 , m2 , . . .) = (0, ϕ0 (m0 ), ϕ1 (m1 ), ϕ2 (m2 ), . . .).
That is, t simply shifts elements of the module up the gradation.
Theorem 2.2.1. The correspondence α
e defines an equivalence class of categories between
the category of persistence modules of finite type over R and the category of finitely generated non-negatively graded modules over R[t].
28
This theorem can be found in [9], and its proof rests on Artin-Rees theory from commutative algebra [4].
It is worth explaining in less formal language what this theorem says about the persistent homology module of a filtered simplicial complex, as in Example 2.2.1. In this case,
L L
α
e(M) = i≥0 p≥0 Hp (Ki , R) is a single algebraic structure, a graded R[t]-module, that
represents the homology of an entire filtration. This can be pictured at the chain level
L
∗
by taking the direct sum m
i=0 C (Ki , R) of chain complexes and then applying an R[t]grading based on the filtration ordering. Each simplex has the time that it entered the
filtration, recorded by multiplying that simplex by a polynomial of the form tn , where n is
the filtration index that the simplex first appeared in the filtration. For example, if a simplex
σ enters the filtration in K0 , then we write that simplex as t0 ·σ = σ. Now if we want to shift
that simplex up the gradation, the simplex is multiplied by t. Therefore that same simplex
σ that exists in the next subcomplex K1 in the filtration is actually t1 · σ = (t)σ, and the
simplex σ that exists in the next subcomplex K2 in the filtration is actually t2 · σ = (t2 )σ,
etc. Therefore we see that the filtration index of the simplex is encoded by the degree of the
polynomial coefficient. This is the basis of the work of Zomorodian and Carlsson in [10].
2.2.2 P-intervals
Let M be a persistence module. In the specific case when our coefficient ring R is a
field, α
e(M) has a simple decomposition. Let F be field; it follows that the graded ring F [t]
is necessarily a PID with its ideals being of the form (tn ) [1]. Consequently, the structure of
the F [t]-module is fully described by the structure Theorem 1.5.1, and we have that α
e(M)
is isomorphic to
n
M
i=1
!
Σαi F [t]
⊕
m
M
j=1
29
!
Σγj F [t]/(tkj ) .
Definition 2.2.4. A P-interval is an ordered pair (i, j) with 0 ≤ i < j ∈ Z∞ = Z∪{+∞}.
There exists a natural correspondence between a set S of P-intervals and a graded
F [t]-module. We define a bijection Q to establish such a correspondence by Q(i, j) =
Σi F [t]/(tj−i ) for P-interval (i, j). If the P-interval is infinite, then Q(i, +∞) = Σi F [t].
For a set of P-intervals S = {(i1 , j1 ), (i2 , j2 ), . . . , (in , jn )}, we define
Q(S) =
n
M
Q(i` , j` ).
`=1
This leads to the following corollary which restates our correspondence from Theorem
2.2.1 in terms of the P-intervals.
Corollary 2.2.2. The correspondence S → Q(S) defines a bijection between the finite
sets of P-intervals and the finitely generated graded modules over the graded ring F [t].
Consequently, the isomorphism classes of persistence modules of finite type over F are the
in bijective correspondence with the finite sets of P-intervals.
Finally in this section, we would like make clear the link between the P-intervals
discussed above and persistence as it was described in Section 2.1. Observe that if the
coefficient ring F is a field, then the persistent homology groups can be viewed as F modules, which of course are vector spaces. When we form the persistence module corresponding to a filtered complex K over F , the persistence module is a collection of vector
spaces, each of which is described fully by its rank. By Theorem 2.2.1, the direct sum
L L
i≥0
p≥0 Hp (Ki , F ) of these vector spaces is a graded F [t]-module, described by a set
of P-intervals. Each P-interval describes a basis element for one of these vector spaces.
The P-interval (i, j) represents a basis element of Hpi,j (K, F ) corresponding to a newly
formed p-cycle in i-th index of the filtration, which remains a p-cycle until the j-th index
of the filtration, at which time it becomes the boundary of a (p + 1)-dimensional simplex
30
or is no longer a p-cycle. Therefore, this basis element has persistence j − i. It follows
that finding the P-intervals of a persistence module that correspond to a filtered complex is
sufficient to compute its persistent homology over a field.
31
Chapter 3
Computing Persistent Homology Modules Over a Field
3.1
The Zomorodian-Carlsson Algorithm
Now armed with the correspondence and decomposition established in Section 2.2, we
would like to use these results to help us easily compute the persistent homology modules
of a filtered simplicial complex K over a field F . By Corollary 2.2, the persistence module
of K over F can be computed from the ordinary homology of K over F [t]. As discussed
in Section 1.4, the homology over F [t] can be computed by putting the boundary maps into
Smith normal form using a matrix reduction algorithm. This is the basis of the ZomorodianCarlsson algorithm in [10].
Furthermore, their algorithm, and the process in general, correctly pairs the destroyer
basis elements of Cp with the corresponding creator basis elements of Cp−1 . That is, if σ
is a basis element of Cp−1 that created a homology class γ, and τ is a basis element of Cp
whose addition to the complex destroyed γ, then the matrix reduction process will correctly
pair τ with σ. This generalizes the pairing algorithm found in [3]. We are ensured that this
pairing is correct by [2], [3], and [10].
We begin by forming the boundary matrix as in Section 1.4 with coefficients in F [t]. In
the F [t] setting, each entry of the matrix is either 0 or of the form ±tn , where n represents
the shift required to make the boundary chain of each p-simplex homogeneous, and of the
same degree as the p-simplex itself.
Once the boundary matrix Mp is reduced to its Smith normal form, the nonzero diagonal
elements provide the aforementioned pairing. The row of the matrix containing a nonzero
diagonal entry corresponds to a basis element of Cp−1 (K, F [t]), which will be a linear
combination of (p − 1)-simplices from K. This linear combination will include a simplex
32
which was an original basis element of Cp−1 (K, F [t]), with the remaining terms being the
result of row operations used to produce Smith normal form; see Proposition 1.4.2. The
original basis element in the expression will be a creator simplex.
Similarly, the column of the matrix containing a nonzero diagonal entry corresponds
to a basis element of Cp (K, F [t]), which will be a linear combination of p-simplices from
K. This linear combination will include an original basis element of Cp (K, F [t]), with the
remaining terms being the result of column operations used to produce Smith normal form.
The original basis element in this expression will be a destroyer simplex paired with the
creator in the corresponding row. In addition, the degree of the diagonal entry represents
the persistence index of this creator.
It is also the case that the P-intervals of infinite persistence can be seen from the boundary matrices once in Smith normal form. A zero column in Mp will correspond to a basis
element of Cp (K, F [t]) that is a cycle, and hence the original basis element found in its
expression as a linear combination of p-simplices will be a creator whose persistence is revealed in Mp+1 . Furthermore, Mp may contain zero rows, corresponding to basis elements
of Cp−1 (K, F [t]). If the (p − 1)-simplex from the original basis found in the expression of
these basis elements as a linear combination of (p − 1)-simplices was not revealed to be a
destroyer in the matrix Mp−1 , then it must be a creator of infinite persistence, as evidently
it was never paired with a destroyer.
In [10], Zomorodian and Carlsson take several steps to optimize the matrix reduction
process discussed above. We have no need to study the exact algorithm for our purposes,
but it is well-explained in the literature, see [9] and [10].
3.2
Examples
We now attempt to further elucidate the discussion above by examining two concrete
examples whose homology is known. In our examples we will compute persistent homol-
33
ogy over the field Q of rational numbers. In these examples, the matrix reductions over Q[t]
were done using software written by the author. We continue our use of the notation {ej }
and {êi } to represent the basis elements of Cp (K, Q[t]) and Cp−1 (K, Q[t]), respectively.
For all dimensions p, we begin by generating the matrix Mp which represents the boundary
map
∂p : Cp (K, Q[t]) → Cp−1 (K, Q[t])
with respect to the standard bases of p- and (p − 1)-simplices of K. As the matrix reduction proceeds, these original basis elements are modified according to the row and column
operations performed, and we adopt the convention that when terms are added to basis elements, the original simplex from the standard basis is always written as the first term in the
linear combination.
3.2.1
Sphere
Our first example is the two-dimensional sphere S 2 . We use the following triangulation
of the sphere as our simplicial complex K.
Figure 3.2.1: Sample triangulation of a sphere.
As the input to our algorithm is a filtered simplicial complex, we next apply the following
34
filtration to the simplicial complex above. In this filtration, we add two simplices at a
time until all simplices in the complex have been added. The following table exhibits the
filtration index of each simplex as it was added to the complex by our arbitrary sample
filtration.
a
b
c
d
ab
ac
ad
bc
bd
cd
abc
acd
adb
bdc
0
0
1
1
2
2
3
3
4
4
5
5
6
6
Table 3.2.1: Sample filtration for simplices in Fig. 3.2.1.
Next we reduce the boundary matrices inductively in dimension over Q[t]. We begin with
M1 , where
ab ac ad bc bd cd
0
t2
0
t3
t3
d 0
2
3
M1 = c 0
.
t
0
t
0
−t
3
4
b t2
0
0
−t
−t
0
a −t2 −t2 −t3 0
0
0
Observe that for each entry in the matrix at location (i, j), denoted by M1 (i, j),
deg êi + deg M1 (i, j) = deg ej .
For example, deg ê1 + deg M1 (1, 3) = deg e3 or deg d + 2 = deg ad, as d entered the
simplicial complex with filtration index 1 and ad was added to the complex at step 3.
Therefore, a shift of 2 is required to make the elements d and ad have the same degree; that
is, while d existed in the complex at step 1, it is (t2 )d that is a boundary of ad which entered
with filtration index 3. The sign of M1 (i, j) is based on the orientation of the simplices in
the column and row.
35
Now in reduced form, we get
ac ad ab z1 z2 z3
c − t(a) t 0 0 0 0 0
f1 =
M
d − t(a) 0 t2 0 0 0 0 ,
2
b−a
0
0
t
0
0
0
a
0 0 0 0 0 0
where
z1 = bc − (t)ac + (t)ab,
z2 = bd − (t)ad + (t2 )ab,
z3 = cd − (t)ad + (t2 )ac.
We see z1 , z2 , and z3 are cycles as the matrix indicates their boundary is zero, and they form
a homogeneous basis for Z1 . From linear algebra, we know that rank M1 = rank B0 . Note
that we can read off the finite persistence intervals for all of the 0-dimensional simplices by
examining the nonzero diagonal entries. The persistence intervals correspond to the interval
(deg êi , deg êi + deg M1 (i, i)). Thus d has persistence interval (1, 3), c has persistence
interval (1, 2), and b has persistence interval (0, 2). We also see that the creators (original
row basis elements) are paired with their destroyers (original column basis elements) in
each nonzero diagonal entry. In this case, the pairings indicate that c was destroyed by ac,
d was destroyed by ad; and b was destroyed by ab.
We can also observe that some of the zero rows, the ones that did not appear as original
basis elements for nonzero columns in the matrix of one less dimension, correspond to
cycles of infinite persistence. In this example, a is the only zero row and has infinite
persistence as a is a creator since 0-dimensional simplices have no boundary, i.e. a did
36
not exist as a nonzero column of M0 . This is what we would expect given that homology
modules of infinite persistence are precisely those that make up the simplicial homology
modules for the final simplicial complex, and we know that H0 (K, Q[t]) for the sphere has
rank 1.
Next we compute M2 and see that initially
M2 =
abc acd adb bdc
cd
0
t
0
−t2
bd
0
0
−t2
t2
bc
t2
0
0
−t3
ad
0
−t2
t3
0
t3
0
0
0
−t4
0
ac −t3
ab
t3
.
After applying the matrix reduction algorithm, we get
acd −adb abc z1
cd − (t)ad + (t2 )ac
bd − (t)ad + (t2 )ab
f2 =
M
bc − (t)ac + (t)ab
ad
ac
ab
t
0
0
0
0
t2
0
0
0
0
t2
0
0
0
0
0
0
0
0
0
0
0
0
0
,
f2 , we see that the
where z1 = bdc + (t)acd + adb + (t)abc. From the reduced form M
persistence intervals of cd, bd, and bc are (4, 5), (4, 6), and (3, 5), respectively. Furthermore, all of the zero rows were the original destroyer basis elements of C1 that were
37
f1 . Therefore there are no intervals of
paired with the creator basis elements of C0 in M
infinite persistence of dimension 1, which is exactly what we would expect for the onedimensional homology of the sphere with Q[t] coefficients. However, a zero column,
z1 = bdc + (t)acd + adb + (t)abc, does indicate that there is a 2-dimensional cycle created,
and since there are no 3-dimensional simplices in the complex, we know that the 2-cycle
will never be destroyed and thus must also have infinite persistence. Thus, the simplex
bdc is a 2-dimensional creator with persistence interval (6, ∞), again consistent with our
expectations for H2 (K, Q[t]) of the sphere.
3.2.2
Klein Bottle
For our next example, we will examine the Klein bottle. Let the following triangulation
of a Klein bottle be our simplicial complex K.
Figure 3.2.2: Sample triangulation of a Klein bottle.
We use a filtration that is obtained by adding three simplices at a time until there are no
more simplices left to add to the complex.
We focus on the 1-dimensional homology module, as it is the more interesting case,
because we know that over Z, the homology module is H1 (K, Z) ∼
= Z ⊕ Z2 and thus
38
a
b
c
d
e
f
g
h
i
ab
ae
ag
bc
bg
0
0
0
1
1
1
2
2
2
3
3
3
4
4
bi
ca
cd
ch
da
db
df
ed
ef
eg
fb
fc
fh
gf
4
5
5
5
6
6
6
7
7
7
8
8
8
9
gh
gi
ha
he
hi
ic
id
ie
adb
adc
ach
age
ahe
9
9
10
10
10
11
11
11
12
12
12
13
13
bf c
bci
gih
bdf
big
cdi
cf h
def
dei
egf
ehi
f gh
abg
13
14
14
14
15
15
15
16
16
16
17
17
17
Table 3.2.2: Sample filtration for simplices in Fig. 3.2.2.
contains torsion [8]. Initially, M2 looks like this:
39
M2 =
adb adc ach
age
ahe
bf c
bci
gih
bdf
big
cdi
cf h
def
dei egf
ehi f gh
abg
ie
0
0
0
0
0
0
0
0
0
0
0
0
0
−t5
0
t6
0
0
id
0
0
0
0
0
0
0
0
0
0
−t4
0
0
t5
0
0
0
0
ic
0
0
0
0
0
0
−t3
0
0
0
t4
0
0
0
0
0
0
0
0
−t4
0
t7
0
0
0
0
hi
he
ha
gi
gh
gf
fh
fc
0
0
0
0
0
0
0
0
0
0
0
0
0
t2
0
0
0
0
0
0
0
0
0
0
0
0
0
t3
0
0
0
0
0
0
0
0
0
0
−t7
0
−t3
0
0
0
0
0
0
0
0
0
0
0
0
0
0
t5
0
−t6
0
0
0
0
0
0
0
0
0
−t5
0
t8
0
0
−t8
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
t5
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
t7
0
0
0
t7
0
0
0
0
−t9
−t7
0
0
0
0
0
0
0
0
0
0
0
0
fb
0
0
0
0
0
−t5
0
0
t6
0
0
0
0
0
0
0
0
0
eg
0
0
0
−t6
0
0
0
0
0
0
0
0
0
0
t9
0
0
0
ef
0
0
0
0
0
0
0
0
0
0
0
0
t9
0
−t9
0
0
0
ed
0
0
0
0
0
0
0
0
0
0
0
0
−t9
−t9
0
0
0
0
0
t8
0
0
0
−t10
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
−t10
0
0
0
0
0
0
0
t10
0
0
0
0
0
0
0
0
df
0
db
t6
0
0
0
0
0
0
0
−t8
da
−t6
−t6
0
0
0
0
0
0
0
0
0
t7
0
−t7
0
0
0
0
0
0
0
0
t7
−t7
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
−t10
0
t11
0
0
0
0
0
0
0
0
0
−t11
0
0
0
t13
ch
cd
ca
bi
bg
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
t10
0
0
0
0
0
0
0
0
bc
0
0
0
0
0
−t9
0
0
0
0
0
0
0
0
0
0
0
ag
0
0
0
t10
0
0
0
0
0
0
0
0
0
0
0
0
0
−t14
ae
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
t14
ab −t9
−t10 −t10
0
0
.
Now we examine the matrix as it exists after reducing the first 16 diagonal entries and
selecting the pivot in row 17-th row, as that is the first point in reduction process where the
coefficient of the necessary pivot contains a rational number other than ±1, the only units
f2 at this stage of the reduction is
in Z. The partially reduced M
40
ach −bci c1 c2 −gih c3 bf c −big bdf −age adb −adc c4 c5 c6 −def
ha+(t5 )ch−(t5 )ca
t2
ic+(t7 )bi−(t7 )bc
0
he+(t5 )ch−
0
(t5 )ca−(t7 )ae
id−(t6 )cd+
0
(t7 )bi−(t7 )bc
hi−(t)gi+(t)gh
0
4
6
ie+(t )ed−(t )cd+
0
(t7 )bi−(t7 )bc
f c−f b−(t4 )bc
0
5
5
0
gi−(t )bi+(t )bg
2
2
f b+(t )df −(t )db
0
eg−(t4 )ag+(t4 )ae
0
0
db−da−(t3 )ab
da+(t)cd−(t)ca
0
2
gf −(t )ef +
0
(t6 )ag−(t6 )ae
f
M2 =
f h+(t2 )df −(t3 )ch+
(t3 )cd−(t3 )ca−
0
4
5
(t )bc−(t )ab
gh+(t2 )ed−(t4 )ch−
4
(t )cd+(t4 )ca+(t5 )bg− 0
(t5 )bc+(t6 )ae
ed+(t)df −ef
0
ef
0
df
0
ch
0
cd
0
ca
0
bi
0
bg
0
bc
0
ag
0
ae
0
ab
0
c7
abg
0
0 0
0
0
0
0
0
0
0
0
0 0 0
0
0
0
t3
0 0
0
0
0
0
0
0
0
0
0 0 0
0
0
0
0
t3 0
0
0
0
0
0
0
0
0
0 0 0
0
0
0
0
0 t4
0
0
0
0
0
0
0
0
0 0 0
0
0
0
0
0 0
t4
0
0
0
0
0
0
0
0 0 0
0
0
0
0
0 0
0
t5
0
0
0
0
0
0
0 0 0
0
0
0
0
0 0
0
0
t5
0
0
0
0
0s
0 0 0
0
0
0
0
t6
0
0
0
0
0 0 0
0
0
0
0
0 0
0
0
0
0 0
0
0
0
0
t6
0
0
0
0 0 0
0
0
0
0
0 0
0
0
0
0
0
t6
0
0
0 0 0
0
0
0
0
0 0
0
0
0
0
0
0
t6
0
0 0 0
0
0
0
0
0 0
0
0
0
0
0
0
0
t6
0 0 0
0
0
0
0
0 0
0
0
0
0
0
0
0
0
t7 0 0
0
0
0
0
0 0
0
0
0
0
0
0
0
0
0 t7 0
0
0
0
0
0 0
0
0
0
0
0
0
0
0
0 0 t8
0
0
0
0
0 0
0
0
0
0
0
0
0
0
0 0 0
t9
0
0
0
0 0
0
0
0
0
0
0
0
0
0 0 0
0
2t10
0
0
0 0
0
0
0
0
0
0
0
0
0 0 0
0
−2t11
0
0
0 0
0
0
0
0
0
0
0
0
0 0 0
0
0
0
0
−2t12
0
2t12
0
0
0 0
0
0
0
0
0
0
0
0
0 0 0
0
0 0
0
0
0
0
0
0
0
0
0 0 0
0
0
0 0
0
0
0
0
0
0
0
0
0 0 0
0
0
0
t13
0
0 0
0
0
0
0
0
0
0
0
0 0 0
0
t13
0
0 0
0
0
0
0
0
0
0
0
0 0 0
0
0
0
−t14
0
0 0
0
0
0
0
0
0
0
0
0 0 0
0
−t14
0
0 0
0
0
0
0
0
0
0
0
0 0 0
0
2t14
0
0
t14
t14
0
0 0
0
0
41
0
0
0
0
0
0
0 0 0
,
where
c1 = ahe+(t)ach,
c2 = −cdi−(t)bci,
c3 = −dei−(t)cdi−(t2 )bci,
c4 = egf +(t3 )age,
c5 = cf h+(t2 )bf c+(t)bdf +(t3 )adb−(t3 )adc,
c6 = −ehi−(t4 )ahe−(t5 )ach−(t3 )gih−(t)dei−(t2 )cdi−(t3 )bci−(t2 )big,
c7 = −f gh−(t)egf −(t4 )age−(t2 )cf h−(t4 )bf c−(t3 )bdf −(t5 )adb+(t5 )adc−
ehi−(t4 )ahe−(t5 )ach−(t3 )gih−(t)dei−(t2 )cdi−(t3 )bci−(t2 )big+(t)def
Observe that in the seventeenth column (original basis element f gh), M (17, 17) = 2t10 .
This is the necessary pivot to use in order to zero out the rows beneath it as it is the entry
of smallest degree, 10, in its column. As Q is a field, this not a problem, and 2t10 divides
every other nonzero entry in its column.
f2 is
The final result of the reduced M
42
ach −bci c1 c2 −gih c3 bf c −big bdf −age adb −adc c4 c5 c6 −def
ha+(t5 )ch−(t5 )ca
t2
ic+(t7 )bi−(t7 )bc
0
he+(t5 )ch−
0
(t5 )ca−(t7 )ae
id−(t6 )cd+
0
(t7 )bi−(t7 )bc
hi−(t)gi+(t)gh
0
4
6
ie+(t )ed−(t )cd+
0
(t7 )bi−(t7 )bc
f c−f b−(t4 )bc
0
5
5
0
gi−(t )bi+(t )bg
2
2
f b+(t )df −(t )db
0
4 )ag+(t4 )ae
eg−(t
0
0
db−da−(t3 )ab
da+(t)cd−(t)ca
0
2
gf −(t )ef +
0
(t6 )ag−(t6 )ae
f h+(t2 )df −(t3 )ch+
f
M2 =
(t3 )cd−(t3 )ca−
0
4
5
(t )bc−(t )ab
gh+(t2 )ed−(t4 )ch−
(t4 )cd+(t4 )ca+(t5 )bg−
0
5
6
(t )bc+(t )ae
ed+(t)df −ef
0
ef −(t)df −(t2 )cd+
2
(t )ca+ 1 (t3 )bg− 1 (t4 )ag+ 0
2
2
4 )ae+ 1 (t4 )ab
(t
2
bg−(t)ag+(t)ab
0
0
ca
cd
0
ch
0
bi
0
df
0
bc
0
ag
0
ae
0
ab
0
c7
0
0 0
0
0
0
0
0
0
0
0
0 0 0
0
0
t3
0 0
0
0
0
0
0
0
0
0
0 0 0
0
0
0
t3 0
0
0
0
0
0
0
0
0
0 0 0
0
0
0
0 t4
0
0
0
0
0
0
0
0
0 0 0
0
0
0
0 0
t4
0
0
0
0
0
0
0
0 0 0
0
0
0
0 0
0
t5
0
0
0
0
0
0
0 0 0
0
0
0
0 0
0
0
t5
0
0
0
0
0
0 0 0
0
0
0
t6
0
0
0
0
0 0 0
0
0
0
0 0
0
0
0
0 0
0
0
0
0
t6
0
0
0
0 0 0
0
0
0
0 0
0
0
0
0
0
t6
0
0
0 0 0
0
0
0
0 0
0
0
0
0
0
0
t6
0
0 0 0
0
0
0
0 0
0
0
0
0
0
0
0
t6
0 0 0
0
0
0
0 0
0
0
0
0
0
0
0
0
t7 0 0
0
0
0
0 0
0
0
0
0
0
0
0
0
0 t7 0
0
0
0
0 0
0
0
0
0
0
0
0
0
0 0 t8
0
0
0
0 0
0
0
0
0
0
0
0
0
0 0 0
t9
0
0
0 0
0
0
0
0
0
0
0
0
0 0 0
0
2t10
0
0 0
0
0
0
0
0
0
0
0
0 0 0
0
0
0
0 0
0
0
0
0
0
0
0
0
0 0 0
0
0
0
0 0
0
0
0
0
0
0
0
0
0 0 0
0
0
0
0 0
0
0
0
0
0
0
0
0
0 0 0
0
0
0
0 0
0
0
0
0
0
0
0
0
0 0 0
0
0
0
0 0
0
0
0
0
0
0
0
0
0 0 0
0
0
0
0 0
0
0
0
0
0
0
0
0
0 0 0
0
0
0
0 0
0
0
0
0
0
0
0
0
0 0 0
0
0
0
0 0
0
0
0
0
0
0
0
0
0 0 0
0
0
0
0 0
0
0
0
0
0
0
0
0
0 0 0
0
0
43
abg
0
0
0
0
0
0
0
0
0
0
0
0
0
,
0
0
0
0
13
t
0
0
0
0
0
0
0
0
0
This example illustrates why it is necessary that the coefficients used in the matrix
reduction algorithm come from F [t], where F is a field, in order to be able to successfully
compute the persistent homology of the filtered simplicial complex.
44
Chapter 4
Computing Persistent Homology Modules Over Z
Let us recap our progress thus far. We have shown that we can compute the persistence
intervals of a filtered simplicial complex, which are a full characterization of its persistent
homology, by choosing our ground ring to be a field F and applying the matrix reduction
algorithm over F [t], as Corollary 2.2.2 establishes a correspondence between the finite sets
of P-intervals and graded modules over F [t] [10]. While this is very powerful indeed, it
does have limitations. By computing the persistent homology over a field, we are unable to
detect topological properties that are captured by the presence of torsion in the homology
modules. For instance, in [10] it is shown that persistent homology over Z2 is unable to
identify the torsional homology elements of the Klein bottle, thereby failing to distinguish
it from a torus. Therefore, it may be desirable to calculate the persistent homology over
a ground ring that is not a field, perhaps Z or some other PID. Zomorodian and Carlsson
address this issue in [10], however they only provide an algorithm to compute the persistent
homology modules Hpi,j (K, F ) for a fixed i and j, which prevents us from looking at all of
the persistent homology modules at once.
The correspondence in Theorem 2.2.1 suggests that there does not exist a simple classification of persistence modules over a ground ring that is not a field, such as Z [10]. We
will provide a concrete example using a simplicial complex representing a Klein bottle that
shows why the matrix reduction algorithm is not sufficient for computing persistent homology over Z when torsion exists, and we will exhibit exactly how the algorithm breaks
down.
Moreover, we also wish to explore under what circumstances it is possible to use the
correspondence in Theorem 2.2.1 to compute persistent homology over Z by using a matrix
reduction algorithm. We will show that in the case where the filtered simplicial complex
45
represents an orientable 2-dimensional manifold, then it is possible to compute the persistent homology over Z by applying a matrix reduction algorithm over Z[t].
4.1
The Klein Bottle Revisited
In Section 3.2.2 of this paper, we examined an example of a filtration of the Klein bottle.
We saw that at one point during the matrix reduction process, a pivot was selected whose
Q[t] coefficient was 2t10 . Now, because Q is a field, we were able to use 2t10 successfully
as the pivot; that is, 2t10 was able to divide every other nonzero entry in the submatrix.
However, when trying to compute persistent homology over Z by using Z[t] coefficients,
we reach a point where we are unable to successfully select a pivot. We examine the
partially reduced matrix at this point of the matrix reduction process below.
46
ach −bci c1 c2 −gih c3 bf c −big bdf −age adb −adc c4 c5 c6 −def
ha+(t5 )ch−(t5 )ca
t2
ic+(t7 )bi−(t7 )bc
0
he+(t5 )ch−
0
(t5 )ca−(t7 )ae
id−(t6 )cd+
0
(t7 )bi−(t7 )bc
hi−(t)gi+(t)gh
0
4
6
ie+(t )ed−(t )cd+
0
(t7 )bi−(t7 )bc
f c−f b−(t4 )bc
0
5
5
0
gi−(t )bi+(t )bg
2
2
f b+(t )df −(t )db
0
eg−(t4 )ag+(t4 )ae
0
0
db−da−(t3 )ab
da+(t)cd−(t)ca
0
2
gf −(t )ef +
0
(t6 )ag−(t6 )ae
f
M2 =
f h+(t2 )df −(t3 )ch+
(t3 )cd−(t3 )ca−
0
4
5
(t )bc−(t )ab
gh+(t2 )ed−(t4 )ch−
4
(t )cd+(t4 )ca+(t5 )bg− 0
(t5 )bc+(t6 )ae
ed+(t)df −ef
0
ef
0
df
0
ch
0
cd
0
ca
0
bi
0
bg
0
bc
0
ag
0
ae
0
ab
0
c7
abg
0
0 0
0
0
0
0
0
0
0
0
0 0 0
0
0
0
t3
0 0
0
0
0
0
0
0
0
0
0 0 0
0
0
0
0
t3 0
0
0
0
0
0
0
0
0
0 0 0
0
0
0
0
0 t4
0
0
0
0
0
0
0
0
0 0 0
0
0
0
0
0 0
t4
0
0
0
0
0
0
0
0 0 0
0
0
0
0
0 0
0
t5
0
0
0
0
0
0
0 0 0
0
0
0
0
0 0
0
0
t5
0
0
0
0
0s
0 0 0
0
0
0
0
t6
0
0
0
0
0 0 0
0
0
0
0
0 0
0
0
0
0 0
0
0
0
0
t6
0
0
0
0 0 0
0
0
0
0
0 0
0
0
0
0
0
t6
0
0
0 0 0
0
0
0
0
0 0
0
0
0
0
0
0
t6
0
0 0 0
0
0
0
0
0 0
0
0
0
0
0
0
0
t6
0 0 0
0
0
0
0
0 0
0
0
0
0
0
0
0
0
t7 0 0
0
0
0
0
0 0
0
0
0
0
0
0
0
0
0 t7 0
0
0
0
0
0 0
0
0
0
0
0
0
0
0
0 0 t8
0
0
0
0
0 0
0
0
0
0
0
0
0
0
0 0 0
t9
0
0
0
0 0
0
0
0
0
0
0
0
0
0 0 0
0
2t10
0
0
0 0
0
0
0
0
0
0
0
0
0 0 0
0
−2t11
0
0
0 0
0
0
0
0
0
0
0
0
0 0 0
0
0
0
0
−2t12
0
2t12
0
0
0 0
0
0
0
0
0
0
0
0
0 0 0
0
0 0
0
0
0
0
0
0
0
0
0 0 0
0
0
0 0
0
0
0
0
0
0
0
0
0 0 0
0
0
0
t13
0
0 0
0
0
0
0
0
0
0
0
0 0 0
0
t13
0
0 0
0
0
0
0
0
0
0
0
0 0 0
0
0
0
−t14
0
0 0
0
0
0
0
0
0
0
0
0 0 0
0
−t14
0
0 0
0
0
0
0
0
0
0
0
0 0 0
0
2t14
0
0
t14
t14
0
0 0
0
0
47
0
0
0
0
0
0
0 0 0
,
Again, observe that in the seventeenth column (original basis element f gh), M (17, 17) =
2t10 . This is the necessary pivot to use in order to zero out the rows beneath it as it is
the entry of smallest degree, 10, in its column. However, 2t10 will not suffice as the pivot
because in Z, the coefficient 2 has no inverse. Therefore, it is not possible to complete the
algorithm beyond this point. We are unable to simultaneously minimize both the degree of
the entry and its coefficient when attempting to select a pivot.
4.2
Orientable 2-Dimensional Simplicial Manifolds
As we just observed in revisiting the Klein bottle example, the Zomorodian-Carlsson
algorithm is unable to compute persistent homology over Z. The reason for this is that in
trying to reduce boundary matrices over Z[t] we are not guaranteed to always be able to
select a pivot to continue the process, since Z[t] is not a Euclidean domain.
In this chapter, given a filtered simplicial complex K, we consider a matrix reduction
algorithm that attempts to put the boundary matrices Mp over Z[t] into Smith normal form.
However, since Z[t] is not a Euclidean domain, it may prove impossible to select a pivot
entry at some stage, and the algorithm must terminate before the matrix is put into Smith
normal form. We will refer to this Zomorodian-Carlsson algorithm as the Z[t] matrix reduction algorithm.
It begins by forming the boundary matrix
∂p : Cp (K, Z[t]) → Cp−1 (K, Z[t])
with respect to the standard bases of p- and (p−1)-simplices of K. As before, each element
will be either 0 or ±tn , where n represents the shift required to move a basis element up the
filtration to make the boundary of each simplex to have the same degree as that p-simplex.
Step 1:
Select a pivot. If possible, select a nonzero entry in the matrix which divides
48
all the other nonzero entries, and use Type I operations to move it to the upper left entry
in the matrix. If the entry is negative, then perform a type II column operation to make it
positive. Over Z[t], this will necessarily be a nonzero polynomial of least degree among all
the nonzero entries. If not possible, then exit.
Step 2:
Make all entries in the pivot row to the right of the pivot equal to zero.
Since the pivot divides all nonzero entries in the matrix, and thus the pivot row, this can be
achieved by Type III column operations.
Step 3:
Make all entries in the pivot column below the pivot equal to zero. Since
the pivot divides all nonzero entries in the matrix, and thus the pivot column, this can be
achieved by Type III row operations.
Repeat: We now iteratively repeat Steps 1 through 3, each time for the submatrix obtained
by ignoring the first row and column of our previous matrix. On the i-th iteration, if a pivot
is able to be selected, it will be moved to the (i, i) position in the full matrix Mp .
Terminate: If the algorithm exits in Step 1 because there are multiple nonzero entries in the
submatrix with none dividing all other entries in the matrix, then the algorithm terminates
without Mp in Smith normal form. If, however, the algorithm exits in Step 1 because there
are no nonzero elements in the submatrix, then the algorithm terminates with Mp in Smith
normal form. Similarly, if following Step 3 the next submatrix becomes empty, then the
algorithm exits with Mp in Smith normal form.
Our main result will be that when the simplicial complex is the triangulation of an orientable 2-dimensional simplicial manifold, the Z[t] matrix reduction algorithm will never
exit prematurely and can be used to compute persistent homology over Z. We prove the
case for M1 and M2 separately, with the orientability condition only necessary for M2 .
We begin with an important lemma that will be used in the proofs of many of the results
below. It describes the structure of the basis elements associated with the rows of both M1
49
and M2 during the matrix reduction process.
Lemma 4.2.1. After selecting a pivot in Step 1 and preceding Step 2 while reducing a
matrix Mp using the Z[t] matrix reduction algorithm, the basis elements associated with
the pivot row of the matrix and every row beneath it must be standard basis elements from
Cp−1 (K, Z[t]).
Proof:
Let σ be the basis element of Cp−1 (K, Z[t]) associated with the pivot row following Step
1 of Z[t] matrix reduction algorithm. By Proposition 1.4.2, when a type III row operation
is performed, only the basis element associated with the pivot row in that row operation
is modified. Preceding Step 2 in the Z[t] matrix reduction algorithm the pivot has just
been selected. So a type III row operation has never been performed with the σ-row or
any row beneath it used as the pivot. Therefore σ and every other basis element from
Cp−1 (K, Z[t]) associated with rows beneath the σ-row must be standard basis elements
from Cp−1 (K, Z[t]). We now begin by our discussion of M1 . The following two lemmas describe the form
of the basis elements of C1 (K, Z[t]) that emerge as a result of column operations performed
on the matrix.
Lemma 4.2.2. Let cp and cr be basis elements of C1 (K, Z[t]) such that ∂1 (cp ) and ∂1 (cr )
are both of the form tm σ−tn τ for some standard basis elements σ, τ ∈ C0 (K, Z[t]) and
some m, n ∈ Z+ . Furthermore, assume that either σ or τ , but not both, is common to
both ∂1 (cp ) and ∂1 (cr ). Then a type III column operation performed on M1 as in the Z[t]
matrix reduction algorithm, where cp and cr are the basis elements associated with the
pivot column and the column to be replaced, respectively, will result in a modified basis
element of C1 (K, Z[t]) whose boundary chain is also of the form tm σ−tn τ .
Proof:
Let cp and cr be as in the statement of the lemma. Moreover, let σ and τ be the standard
50
basis elements of C0 (K, Z[t]) in ∂1 (cp ), and let σ and ρ be the standard basis elements
of C0 (K, Z[t]) in ∂1 (cr ). It is evident that σ is the common boundary element to both
boundary chains, but we do not know the sign of the coefficient of the σ-row entry in the
cr -column. Since the cp -column is the pivot column, we know that the sign of the coefficient
of the σ-row entry in that column is positive. So, preceding the type III column operation,
M1 appears as below. Observe that by Lemma 4.2.1, σ, τ , and ρ represent standard basis
elements from C0 (K, Z[t]).
cp
∗
0
..
.
0 ···
∗ ···
.. . .
.
.
0 0 ···
σ
τ
0
ρ
cr
0
0
..
.
0
∗
tk
0
..
.
···
0
−tp · · ·
0
..
.
0
0
0
..
.
0
···
±t`
0
..
.
0
0
0
..
.
0
∓tq
0
..
.
0
···
···
···
In order to eliminate the σ-row entry of the cr -column, the column is replaced with
∓t`−k times the pivot column plus or minus itself as (∓t`−k )(tk )±t` = 0. The result is
that the ±t` becomes a 0 in the σ-row of the replaced column, and the entry in the τ -row
of the replaced column becomes ±t`−k+p . All other rows of the replaced column remain
unaltered including the ρ-row which still has the value ∓tq . The resulting M1 looks like
51
this:
cr ∓t`−k cp
cp
∗
0
..
.
0 ···
∗ ···
.. . .
.
.
0 0 ···
σ
τ
0
ρ
0
0
..
.
0
∗
tk
0
..
.
···
0
−tp · · ·
0
..
.
0
0
0
..
.
0
···
0
0
..
.
0
`−k+p
±t
0
..
.
0
∓tq
0
..
.
0
···
···
···
The column that was associated with cr is now associated with a new basis element
represented by the chain cr ∓t`−k cp . The boundary chain of this new basis element is
±t`−k+p τ ∓tq ρ. Therefore, the boundary of this modified basis element maintains the required structure. Lemma 4.2.3. Let cp and cr be basis elements of C1 (K, Z[t]) such that ∂1 (cp ) and ∂1 (cr )
are both of the form tm σ−tn τ for some standard basis elements σ, τ ∈ C0 (K, Z[t]) and
some m, n ∈ Z+ . Furthermore, assume that both σ and τ are common to both ∂1 (cp ) and
∂1 (cr ). Then a type III column operation performed on M1 as in the Z[t] matrix reduction
algorithm, where cp and cr are the basis elements associated with the pivot column and the
column to be replaced, respectively, will result in a modified basis element of C1 (K, Z[t])
that is a 1-cycle.
52
Proof:
Let cp and cr be as in the statement of the lemma.. Moreover, let σ and τ be the two
standard basis elements of C0 (K, Z[t]) common to both ∂1 (cp ) and ∂1 (cr ). Without loss
of generality, assume that the σ-row is the pivot row. Then it follows that the σ-row entry
of the cp -column has a positive coefficient just preceding the type III column operation.
We do not know the sign of the coefficient of the τ -row entry in the cr -column. Therefore
M1 currently looks as pictured below. By Lemma 4.2.1, σ and τ represent standard basis
elements from C0 (K, Z[t]).
cp
∗
0
..
.
0 ···
∗ ···
.. . .
.
.
0 0 ···
σ
0
τ
cr
0
0
..
.
0
∗
tk
0
..
.
···
±t`
0
..
.
0
−tp · · ·
0
..
.
0
∓tq
0
..
.
0
0
···
···
In order to eliminate the σ-row entry of cr -column, the column is replaced with ∓t`−k
times the pivot column plus or minus itself as (∓t`−k )(tk )±t` = 0. The result is that the
±t` becomes a 0 in the σ-row of the replaced column. In the τ -row of the replaced column,
the ∓tq also is necessarily eliminated as (∓t`−k )(−tp )±tq = (∓tq−p )(−tp )±tq = 0 since
l−k = q−p as both quantities reflect the necessary shift up the gradation to make cp and cr
have the same degree. All other rows remain the same because the pivot column contained
all zeros in those rows making every matrix entry in the newly replaced column equal to
53
zero. Hence, it follows that the new modified basis element, cr ∓t`−k cp , is a 1-cycle. Proposition 4.2.4. Following the execution of each iteration of the loop from the Z[t] matrix
reduction algorithm performed on M1 , each basis element for the chain module C1 (K, Z[t])
has a boundary chain that is either trivial or of the form tm σ−tn τ for some standard basis
elements σ, τ ∈ C0 (K, Z[t]) and some m, n ∈ Z+ .
Proof:
Observe that when the loop is initialized, M1 is the matrix representation of ∂1 relative to
the standard bases of C1 (K, Z[t]) and C0 (K, Z[t]). Since the standard basis of C1 (K, Z[t])
consists of every 1-simplex in the simplicial complex and each 1-simplex in K has a given
orientation, the boundary of each basis element is σ−τ for some σ, τ in the standard basis
of C0 (K, Z[t]).
Now assume that after i−1 iterations of the loop every 1-chain representing the modified basis of C1 (K, Z[t]) has a boundary chain that is trivial or of the form tm σ−tn τ for
some standard basis elements σ, τ ∈ C0 (K, Z[t]) and some m, n ∈ Z+ . We wish to show
that after the i-th iteration of the loop, every basis element of C1 (K, Z[t]) is either a 1cycle or has a boundary chain of the form tm σ−tn τ . Observe that at this stage the upper
left (i−1)×(i−1) submatrix is assumed to be diagonalized.
The i-th iteration of the loop consists of performing Steps 1, 2, and 3 of the algorithm.
Step 1 consists of selecting the pivot, if possible. If a pivot cannot be selected, then the
algorithm exits, and the result holds by assumption. Otherwise, we move the pivot to the
(i, i) position of the matrix by employing type I row and column operations. These operations do not affect the basis elements of C0 (K, Z[t]) or C1 (K, Z[t]) per Proposition 1.4.2.
If we need to make the pivot positive, then we perform a type II column operation which,
also by Proposition 1.4.2, yields a modified basis element that is a 1-chain whose coefficients have opposite sign, thereby changing the signs of the coefficients of the boundary
chain. For example, if the boundary chain is of the form tm σ−tn τ , then after a type II
54
column operation, the boundary of the modified basis element will be tn τ −tm σ. Therefore
following Step 1 of the algorithm, the boundary of each basis element of C1 (K, Z[t]) has
the desired form.
In Step 2 of the algorithm, we make all entries in the pivot row to the right of the pivot
equal to zero by performing type III column operations. Let cp represent the basis element
associated with the pivot column and cr represent the basis element associated with the
column to be replaced. By hypothesis, both ∂1 (cp ) and ∂1 (cr ) are of the form tm σ−tn τ .
If ∂1 (cp ) and ∂1 (cr ) have only one simplex in common, then by Lemma 4.2.2, the type
III column operation yields a modified basis element whose boundary chain is still of the
form tm σ−tn τ ; i.e. while the basis element itself associated with the replaced column is
modified, the structure of its boundary chain remains the same. If ∂1 (cp ) and ∂1 (cr ) have
both simplices in common, then by Lemma 4.2.3, the type III column operation results in
the modified basis element being a 1-cycle. Hence its boundary chain is trivial. Therefore,
at the end of Step 2 of the algorithm, the boundary of each basis element of C1 (K, Z[t])
has the desired form.
In Step 3 of the algorithm, we make all entries in the pivot column below the pivot equal
to zero by performing type III row operations. Following Step 2 of the algorithm, the basis
element cp associated with the pivot column has a boundary chain of the form tm σ−tn τ . By
Proposition 1.4.2, type III row operations only affect the basis element associated with the
pivot row. Because only the first i−1 rows and columns have been diagonalized thus far,
all rows i and below, in particular the σ-row and τ -row, are still represented by the standard
basis elements of C0 (K, Z[t]). Therefore the σ-row entry of the pivot column is tm and the
τ -row entry of the pivot column is −tn . All other entries of the pivot column must be 0.
The type III row operation replaces the τ -row with itself plus the σ-row (multiplied by tn−m
to make σ and τ have the same degree). It follows from Proposition 1.4.3 that the resulting
basis element associated with the i-th row is now σ−tm−n τ . Therefore the boundary chain
55
of cp still has the required form.
This completes the i-th iteration of the loop and thus the diagonalization of the first i
rows and columns of M1 . The loop has maintained the required properties for the basis elements of the chain module C1 (K, Z[t]); i.e. each basis element has a boundary chain that is
either trivial or of the form tm σ−tn τ for some standard basis elements σ, τ ∈ C0 (K, Z[t])
and some m, n ∈ Z+ . Theorem 4.2.5. For a filtered simplicial complex K, the Z[t] matrix reduction algorithm
performed on M1 exits in Smith normal form.
Proof:
By Proposition 4.2.4, at every stage of the Z[t] matrix reduction algorithm, the basis of
the chain module C1 (K, Z[t]) consists of elements that are either 1-cycles or have boundary chains of the form tm σ−tn τ for some standard basis elements σ, τ ∈ C0 (K, Z[t]) and
some m, n ∈ Z+ . By Lemma 4.2.1, the basis of C0 (K, Z[t]) corresponding to the lower
rows from the undiagonalized submatrix are all standard basis elements. Therefore it follows from Proposition 4.2.4 that at Step 1 of the algorithm, the integer portion of the Z[t]
coefficient of each entry in the matrix is a unit, namely ±1. Hence, we can be assured that
the algorithm is always able to select a pivot whose entry is of minimal degree and will
therefore divide every other entry in its row and column. Thus, M1 is always able to be
diagonalized, thereby exiting in Smith normal form. Theorem 4.2.5 validates the use of the Z[t] matrix reduction algorithm on M1 to put it
into Smith normal form. Our next main result, Theorem 4.2.11, will validate the use of the
Z[t] matrix reduction algorithm on M2 to put it into Smith normal form, with the additional
condition that the simplicial complex represents an orientable manifold. We begin with a
few definitions and some lemmas to help prove our result.
Lemma 4.2.6. Let C1 and C2 be connected, consistently oriented simplicial 2-dimensional
submanifolds of an orientable 2-dimensional simplicial manifold K. Let σ and τ be 156
simplices which are each a common face of two different 2-simplices, one from C1 and one
from C2 . Then the orientations induced by C1 on σ and τ either both agree or both disagree
with the orientations induced by C2 on σ and τ .
Proof:
Assume that the orientations induced by C1 on σ and τ and the orientations induced by C2
on σ and τ do not both agree or disagree. Then one pair agrees, and one disagrees. Without
loss of generality, assume that the orientations of σ induced by C1 and C2 disagree and the
orientations of τ induced by C1 and C2 agree.
Observe the following two facts. First, C1 ∪C2 can only be consistently oriented if both
C1 and C2 are both individually consistently oriented. Second, if we change the orientation
of any simplex in a connected, consistently oriented manifold, then we must change the
orientation of every simplex in the manifold to preserve its consistent orientation. These
observations show that the only possible ways to consistently orient C1 ∪C2 is to use their
existing orientations or to reverse the orientation of every simplex in C2 , which we will
refer to as −C2 . Note that these are the only two possibilities because −C1 ∪−C2 and
−C1 ∪C2 represent the opposite orientations of C1 ∪C2 and C1 ∪−C2 , respectively.
Using the existing orientations of C1 and C2 , C1 ∪C2 is not consistently oriented because C1 and C2 induce the same orientations on τ . Thus C1 ∪C2 is not consistently oriented. Considering C1 ∪−C2 , we see that the orientations of σ induced by C1 and −C2
agree. Hence C1 ∪−C2 is not consistently oriented either. Because we have exhausted
all possibilities for consistently orienting C1 ∪C2 , it is not orientable; therefore K is not
orientable, contradicting our hypothesis. Note that if e1 , . . . , en is the basis for C2 (K, Z[t]) following the k-th iteration of the
loop from the Z[t] matrix reduction algorithm, then the matrix M2 looks like this:
57
ê1
ê2
..
.
êk
e1 e2
t`1 0
0 t`2
..
..
.
.
0 0
···
···
···
..
.
ek ek+1 ek+2 · · ·
0
0
0
..
.
···
t`k
0
*
en
We refer to e1 , . . . , ek as the diagonal portion of the basis, and ek+1 , . . . , en as the nondiagonal portion of the basis.
Proposition 4.2.7. Let K be a filtered, orientable 2-dimensional simplicial manifold. Then
following the execution of each iteration of the loop from the Z[t] matrix reduction algorithm performed on M2 , no two chains in the non-diagonal portion of the basis of
C2 (K, Z[t]) have a 2-simplex common to both of their supports.
Proof:
Observe that when the M2 is initialized, there is no diagonalized portion; thus, every basis
element for the chain module C2 (K, Z[t]) is trivially in the non-diagonal portion. Now,
M2 is the matrix representation of ∂2 relative to the standard bases of C2 (K, Z[t]) and
C1 (K, Z[t]), and the standard basis of C2 (K, Z[t]) consists of every 2-simplex in the simplicial complex. Therefore, the support of each basis element is a unique 2-simplex, and
there are no 2-simplices in common to the support of any of the basis elements.
Now assume that after i−1 iterations of the loop, the supports of the basis elements ei
through en do not have any 2-simplices in common. The i-th iteration of the loop consists
of performing Steps 1, 2, and 3 of the algorithm. Step 1 consists of first selecting the
pivot and making it then making it positive if necessary. We select the pivot by employing
type I row and column operations. These operations do not affect the basis elements of
C2 (K, Z[t]) per Proposition 1.4.2. If we need to make the pivot positive, then we perform a
58
type II column operation which, also by Proposition 1.4.2, yields a modified basis element
that is a 2-chain whose coefficients have opposite sign. This does not alter the support of
the chain. Therefore following Step 1 of the algorithm, no two chains in the non-diagonal
portion of the basis of C2 (K, Z[t]) have a 2-simplex common to both of their supports.
In Step 2 of the algorithm, we make all entries in the pivot row to the right of the pivot
equal to zero by performing type III column operations. Let cp = ei represent the basis
element associated with the pivot column and cr represent the basis element associated with
the column to be replaced. Let σ be the 1-simplex that is a face of different 2-simplices that
appear in cp and cr . Then M2 looks like this:
ê1
ê2
..
.
e1
e2 · · ·
`1
0 ···
t`2 · · ·
.. . .
.
.
t
0
..
.
êi−1
0
σ
0
···
ei−1 cp
0
0
..
.
t`i−1
0
cr
0
∗ ··· ∗ ···
..
..
.
.
∗ ··· ∗ ···
By assumption, supp(cp ) and supp(cr ) do not have any 2-simplices in common. It
follows then that cr ±tj cp , the modified basis element created by the type III column operation that eliminates the σ-row entry in the cr -column, has support that does not have any
2-simplices in common with the support of any of the basis elements, ei+1 through en .
Also, notice that since K is a 2-dimensional simplicial manifold, σ can be an edge of
at most two 2-simplices. Therefore, all other entries in the σ-row must be 0. This means
that once the σ-row entry of the cr -column is eliminated, then no other column operations
need to take place to complete Step 2 of the algorithm.
59
In Step 3, we employ type III row operations make all entries in the pivot column
below the pivot equal to zero, but these operations do not change the basis of C2 (K, Z[t]).
Therefore, after the i-th iteration of the loop, no two chains in the non-diagonal portion of
the basis of C2 (K, Z[t]) have the same 2-simplex common to both of their supports. Corollary 4.2.8. Let K be a filtered, orientable 2-dimensional simplicial manifold. Then
following the execution of each iteration of the loop from the Z[t] matrix reduction algorithm performed on M2 , the basis elements for the chain module C2 (K, Z[t]) are monic.
Proof:
All basis elements for C2 (K, Z[t]) begin as monic 2-chains, and the only way this property
could be altered is by a type III column operation performed in Step 2 of the algorithm. By
Proposition 4.2.7, at no point during the matrix reduction process will the basis elements
associated with a pivot column cp and any column to be replaced cr in a type III column operation have supports with any 2-simplices in common. Hence any modified basis element
that emerges as the result of such an operation will remain monic, since the sum cr ±tj cp
will have distinct 2-simplices in each term. Observe that, in general, if c1 , c2 ∈ Cp (K, Z[t]) where c1 = λi σ1 +λ2 σ2 +. . .+λn σn
and c2 = η1 τ1 +η2 τ2 +. . .+ηm τm are both monic and all terms in both chains are homogeneous, then
supp(c1 ±c2 ) = supp(c1 )∪supp(c2 )−I(c1 , c2 )
where I(c1 , c2 ) = {σi | σi = τj for some i ∈ 1, . . . , n and j ∈ 1, . . . , m, and λi = −ηj }.
Corollary 4.2.9. Let K be a filtered, orientable 2-dimensional simplicial manifold. Then
following each execution of the loop from the Z[t] matrix reduction algorithm performed on
M2 , each basis element for the chain module C2 (K, Z[t]) has support that is a connected
2-dimensional simplicial manifold.
Proof:
60
All basis elements begin with support a connected 2-dimensional simplicial manifold, and
this is only potentially altered in Step 2 by type III column operation. Again, let cp be the
basis element associated with the pivot column, cr be the basis element associated with the
column to be replaced in a type III column operation, and tj be the factor by which cp is
multiplied to make both chains have the same degree. By Proposition 4.2.7, supp(cp ) and
supp(cr ) do not have any 2-simplices in common. Then it must follow that I(cr , cp ) = ∅.
Now,
supp(cr ±tj cp ) = supp(cr )∪supp(cp )−I(cr , cp ),
but I(cr , cp ) = ∅. Hence
supp(cr ±tj cp ) = supp(cr )∪supp(cp ).
Observe that supp(cr ) and supp(cp ) must share a common face along their boundaries
(or they would not be part of type III column operation), and the union of two connected 2-dimensional simplicial manifolds that share a common boundary is also a connected 2-dimensional simplicial manifold. Therefore supp(cr )∪supp(cp ) is a connected
2-dimensional simplicial manifold, and thus so must be supp(cr ±tj cp ). Proposition 4.2.10. Let K be a filtered, orientable 2-dimensional simplicial manifold.
Then following each execution of the loop from the Z[t] matrix reduction algorithm performed on M2 , each basis element for the chain module C2 (K, Z[t]) is a monic 2-chain
whose support is a connected, consistently oriented 2-dimensional submanifold of K.
Proof:
At the beginning of the algorithm, M2 is the matrix representation of ∂2 relative to the
standard bases of C2 (K, Z[t]) and C1 (K, Z[t]). The standard basis of C2 (K, Z[t]) consists
of every 2-simplex in the simplicial complex; therefore, each basis element is a monic 2chain whose support is a connected, consistently oriented 2-dimensional submanifold of
61
K.
Now assume that after i−1 iterations of the loop, every 2-chain representing the modified basis of C2 (K, Z[t]) is monic and has support that is a connected, consistently oriented
2-dimensional submanifold of K. We wish to show that after the i-th iteration of the loop,
the same still holds true for every modified basis element of C2 (K, Z[t]).
The i-th iteration of the loop consists of performing Steps 1, 2, and 3 of the algorithm.
Step 1 consists of selecting the pivot, if possible. If a pivot cannot be selected, then the
algorithm exits, and the result holds by assumption. Otherwise, we move the pivot to
the (i, i) position of the matrix by employing type I row and column operations. These
operations do not affect the basis elements of C1 (K, Z[t]) or C2 (K, Z[t]) per Proposition
1.4.2. If we need to make the pivot positive, then we perform a type II column operation
which, also by Proposition 1.4.2, yields a modified basis element that is a 2-chain whose
coefficients have opposite sign but whose support remains unaltered. Therefore following
Step 1 of the algorithm, each basis element for the chain module C2 (K, Z[t]) is a monic
2-chain whose support is a connected, consistently oriented 2-dimensional submanifold of
K.
In Step 2 of the algorithm, we make all entries in the pivot row to the right of the pivot
equal to zero by performing type III column operations. Let cp represent the basis element
associated with the pivot column and cr represent the basis element associated with the
column to be replaced. While we do not know the sign of the coefficient of the pivot row
entry in the cr -column, since the cp -column is the pivot column we know that the sign of
the coefficient of that entry is positive. So, preceding the type III column operation, we
claim that M2 appears as below, where the exponents i ∈ {0, 1} determine the signs of the
matrix entries.
62
cp
∗
0
..
.
0 ···
∗ ···
.. . .
.
.
0 0 ···
σ1
σ2
0
..
.
σn
cr
0
0
..
.
0
∗
tk1
0
..
.
···
0
(−1)2 tk2 · · ·
∗
..
.
∗
(−1)n tkn · · ·
0
..
.
0
(−1)1 t`1
0
..
.
0
2 +1 `2
t
(−1)
∗
..
.
∗
(−1)n +1 t`n
0
..
.
0
···
···
···
Observe that σ1 , . . . , σn are standard basis elements of C1 (K, Z[t]) by Lemma 4.2.1.
Furthermore, it follows from Lemma 4.2.6 that the induced orientations on σ1 , . . . , σn by
cp and cr , respectively, either all agree or all disagree. If 1 = 0, then they all agree, and if
1 1, then they all disagree. Thus the signs of the coefficients in the σ2 , . . . , σn rows appear
as shown.
We need to show that following the type III column operation the modified basis element cr −(−1)1 t`1 −k1 cp retains the desired form; that is, it is monic with support that is a
connected, consistently oriented 2-dimensional submanifold of K.
If n = 2, then there is only edge in common to supp(cp ) and supp(r), namely σ1 , the
edge that is eliminated by the column operation. Since all common edges were eliminated,
supp(cr −(−1)1 t`1 −k1 cp ) must be consistently oriented. If n > 2, then there are multiple
63
edges in common to supp(cp ) and supp(cr ). By supposition, supp(cp ) and supp(cr ) are
connected, consistently oriented 2-dimensional simplicial manifolds. The facts that the
induced orientations on σ1 , . . . , σn either all agree or all disagree, along with
`i −ki = `1 −k1 for i = 2, . . . , n result in the chain cr −(−1)1 t`1 −k1 cp having all common
boundaries eliminated. Therefore, supp(cr −(−1)1 t`1 −k1 cp ) is consistently oriented.
In either case (whether n = 2 or n > 2), Corollary 4.2.8 ensures for us that the chain
cr −(−1)1 t`1 −k1 cp must be monic, and it follows from Corollary 4.2.9 that
supp(cr −(−1)1 t`1 −k1 cp ) is a connected, 2-dimensional simplicial manifold. So the modified basis element has all the requisite properties.
In Step 3 of the algorithm, we make all entries in the pivot column below the pivot
equal to zero by performing type III row operations. However, these operations do not
change the basis of C2 (K, Z[t]). Therefore, after the i-th iteration of the loop, each basis
element for the chain module C2 (K, Z[t]) is a monic 2-chain whose support is a connected,
consistently oriented 2-dimensional submanifold of K. It is worth pointing out that in the proof above in the case of a type III column operation
where n > 1, if σ1 , . . . , σn were the only edges of both supp(cp ) and supp(cr ), then the
modified basis element cr −(−1)1 t`1 −k1 cp that would emerge would be a 2-cycle.
Theorem 4.2.11. Let K be a filtered, orientable 2-dimensional simplicial manifold. Then
the Z[t] matrix reduction algorithm performed on M2 exits in Smith normal form.
Proof:
By Proposition 4.2.10, at every stage of the Z[t] matrix reduction algorithm, every basis element of C2 (K, Z[t]) is a monic 2-chain whose support is a connected, consistently oriented
2-dimensional submanifold of K. By Lemma 4.2.1, the basis of C1 (K, Z[t]) corresponding to the lower rows from the undiagonalized submatrix are all standard basis elements.
Therefore it follows from Proposition 4.2.10 that at Step 1 of the algorithm, the integer
64
portion of the Z[t] coefficient of each entry in the matrix is a unit, namely ±1. Hence, we
can be assured that the algorithm is always able to select a pivot whose entry is of minimal degree and will therefore divide every other entry in its row and column. Thus, M2 is
always able to be diagonalized, thereby exiting in Smith normal form. Corollary 4.2.12. Let K be a filtered orientable 2-dimensional simplicial manifold. Then
the Z[t] matrix reduction algorithm correctly computes the persistent homology modules
Hpi,j (K, Z).
Proof:
If M is the persistence module of K, as in Example 2.2.1, then Theorems 4.2.5 and 4.2.11
show that α
e(M) is isomorphic to
n
M
!
Σαi Z[t] ⊕
i=1
m
M
!
Σγj Z[t]/(tkj ) .
j=1
as a graded Z[t]-module. Thus the correspondence of Corollary 2.2.2 gives a characterization of the P-intervals of M. The algorithm in the Zomorodian and Carlsson paper [10] does not implement any row
operations but rather leaves the matrix in column echelon form. While their algorithm is
a more efficient version of the standard reduction algorithm, there is nothing in the above
argument that would preclude it from being applied to their algorithm as well.
4.3
Torus
We now exhibit an example of the above theorems by computing the persistent ho-
mology over Z of a filtered simplicial complex that represents a torus. The figure below
displays the triangulation of the torus that we use as our simplicial complex K.
65
Figure 4.3.1: Sample triangulation of a torus.
As we did with the Klein bottle, we use an arbitrary filtration in which three simplices are
added at each step until all simplices have been added to the complex. Below is a table that
indicates the filtration index in which each simplex was added.
a
b
c
d
e
f
g
h
i
ab
ae
ah
bc
bd
0
0
0
1
1
1
2
2
2
3
3
3
4
4
bg
ca
cf
ci
da
df
di
ec
ed
eg
fb
fe
fh
ga
4
5
5
5
6
6
6
7
7
7
8
8
8
9
gf
gi
hc
hd
hg
ib
ie
ih
abd
abg
aec
aeg
ahc
9
9
10
10
10
11
11
11
12
12
12
13
13
ahd
bcf
bci
bdf
bgi
cf h
cie
df e
die
dih
egf
f hg
gih
13
14
14
14
15
15
15
16
16
16
17
17
17
Table 4.3.1: Sample filtration for simplices in Fig. 4.3.2.
We begin with the 1-dimensional boundary matrix,
66
67
i
h
g
f
M1 =
e
d
c
b
a
ab ae ah bc
bd bg
ca cf
ci
da df
di
ec ed eg f b f e f h ga gf
gi
hc hd hg
0
0
0
0
0
0
0
0
t3
0
0
t4
0
0
0
0
0
0
0
0
t7
0
0
0
t
0
0
0
0
0
0
0
0
0
0
0
0
0
0
t6
0
0
0 −t8 −t8 −t8 0
0
0
0
0
0
t2
0
0
0
0
0
0
0
0
t5
0
0
0 −t7 −t7 −t7 0
0
0
0
0
0
0
0
t4
0
0
t5
0
0
0
0 −t7 −t7 −t7 0
0
t2
0
0
0
0
0
0
0
0
0
0 −t6 −t6 −t6 0
0
0
0
0
t3
0
0
0
0 −t5 −t5 −t5 0
0
0
0
t4
0
0 −t5 −t5 −t5 0
t3
0
0 −t4 −t4 −t4 0
−t3 −t3 −t3 0
0
0
t5
0
ib
ie
0 −t9 −t9
0
0
t8
0
0
t8
0
0
0
0
0
0
t7
0
0
0
0
0
0
0
0
t10
t6
0
0
0
0
0
0
0
0
t9
0
0
0
0
0
t7
0
0
0
0
0
0
0
0
t10
0
0
0
0
0
0
0
0
0
0
0
0
t8
0
0
0
0
0
0
0
0
t11
0
0
0
t6
0
0
0
0
0
0
0
0
t9
0
0
0
0
0
0
0
ih
−t9
9
t
0
0
.
0
0
0
0
0
f1 ,
The reduced matrix yields M
h−(t2 )a
g−(t2 )b
e−(t)a
i−(t2 )c
f1 =
M
d−(t)b
b−a
f −(t)c
c−a
a
ah bg ae ci bd ab cf bc+(t)ab z1 z2 z3 z4 z5 z6 z7 z8 z9 z10 z11 z12 z13 z14 z15 z16 z17 z18 z19
t
0 0 0 0 0
0
0
0 0 0 0 0 0 0 0 0
0
0
0
0
0
0
0
0
0
0 t2 0 0 0 0
0
0
0 0 0 0 0 0 0 0 0
0
0
0
0
0
0
0
0
0
0 0 0
0
0
0 0 0 0 0 0 0 0 0
0
0
0
0
0
0
0
0
0
t3
0 0
0
0
0 0 0 0 0 0 0 0 0
0
0
0
0
0
0
0
0
0
t3
0
0
0
t2
0 0
0
0 0 0
0
0
0 0 0 0 0 0 0 0 0
0
0
0
0
0
0
0
0
0
0
0 0 0 0 t3 0
0
0
0 0 0 0 0 0 0 0 0
0
0
0
0
0
0
0
0
0
0
0 0 0 0 0 t4
0
0 0 0 0 0 0 0 0 0
0
0
0
0
0
0
0
0
0
0
0 0 0 0 0
0
t4
0 0 0 0 0 0 0 0 0
0
0
0
0
0
0
0
0
0
0
0 0 0 0 0
0
0
0 0 0 0 0 0 0 0 0
0
0
0
0
0
0
0
0
0
68
0
0
0
0
.
0
0
0
0
0
where
z1 = ca+(t)bc+(t2 )ab,
z2 = da+(t2 )bd+(t3 )ab,
z3 = df +(t2 )bd−(t)cf −(t2 )bc,
z4 = di−(t)ci+(t2 )bd−(t2 )bc,
z5 = ec+(t4 )ae−(t3 )bc−(t4 )ab,
z6 = ed+(t4 )ae−(t3 )bd−(t4 )ab,
z7 = eg−(t3 )bg+(t4 )ae−(t4 )ab,
z8 = f b+(t3 )cf +(t4 )bc
z9 = f e−(t5 )ae+(t3 )cf +(t4 )bc+(t5 )ab
z10 = f h−(t5 )ah+(t3 )cf +(t4 )bc+(t5 )ab,
z11 = ga+(t5 )bg+(t6 )ab,
z12 = gf +(t5 )bg−(t4 )cf −(t5 )bc,
z13 = gi+(t5 )bg−(t4 )ci−(t5 )bc,
z14 = hc+(t7 )ah−(t6 )bc−(t7 )ab,
z15 = hd+(t7 )ah−(t6 )bd−(t7 )ab,
z16 = hg+(t7 )ah−(t6 )bg−(t7 )ab,
z17 = ib+(t6 )ci+(t7 )bc,
z18 = ie−(t8 )ae+(t6 )ci+(t7 )bc+(t8 )ab,
z19 = ih−(t8 )ah+(t6 )ci+(t7 )bc+(t8 )ab
Observe that as expected, there is one 0-cycle with infinite persistence, a, which matches
the expected rank of H0 (K, Z[t]) for the torus.
69
Now for the 2-dimension boundary matrix, we start with
M2 =
abd abg aec aeg ahc ahd bcf bci bdf bgi cf h cie df e die dih egf f gh gih
ih
0
0
0
0
0
0
0
0
0
0
0
0
0
0
t5
0
0
ie
0
0
0
0
0
0
0
0
0
0
0
t4
0
t5
0
0
0
0
t4
0
0
0
0
0
0
0
ib
0
0
0
0
0
0
0
t3
hg
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
−t7
hd
0
0
0
0
0
t3
0
0
0
0
0
0
0
0
t6
0
0
hc
0
0
0
0
t3
0
0
0
0
0
t5
0
0
0
0
0
0
gi
0
0
0
0
0
0
0
0
0
t6
0
0
0
0
0
0
0
gf
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
t8
−t8
0
t3
0
t4
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
−t9
t9
0
ga
fh
0
0
0
0
0
0
0
0
0
0
t7
fe
0
0
0
0
0
0
0
0
0
0
0
0
t8
0
0
0
t6
0
t6
0
0
0
0
0
0
0
0
0
fb
eg
ed
ec
di
0
0
0
0
0
0
0
0
0
0
t6
0
0
0
t5
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
t10
0
0
t9
t9
0
0
0
0
t8
0
0
0
0
0
0
0
t10
t10
0
0
0
0
df
0
0
0
0
0
0
0
0
t8
0
0
0
t10
0
0
0
0
da
t6
0
0
0
0
t7
0
0
0
0
0
0
0
0
0
0
0
ci
0
0
0
0
0
0
0
t9
0
0
0
t10
0
0
0
0
0
cf
0
0
0
0
0
0
t9
0
0
0
t10
0
0
0
0
0
0
0
0
t7
0
t8
0
0
0
0
0
0
0
0
0
0
0
0
bg
0
t8
0
0
t11
0
0
0
0
0
0
0
bd
t8
0
0
0
0
0
0
0
0
ca
bc
ah
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
t10
t10
0
0
0
0
0
0
0
0
0
0
0
0
t10
t10
0
0
0
0
0
0
0
0
0
0
0
0
0
0
t10
t10
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
ae
0
0
t9
ab
t9
t9
0
After reducing it to its Smith normal form we get
70
t6
0
0
7
t
0
0
t8
0
0
0
0
0
0
.
0
0
0
0
0
0
0
0
0
0
0
0
0
0
bci ahd ahc abg cie c1 aec c2 bdf c3 abd f hg c4 c5 df e c6 c7 z1
ib+(t6 )ci+(t7 )bc
t3
hd+(t4 )da+(t7 )ah
0
hc+(t5 )ca+(t7 )ah
0
5
6
ga+(t )bg+(t )ab
0
4
6
ie+(t )ec+(t )ci
0
5
5
8
ih+(t )di−(t )da−(t )ah
0
2
4
0
ec+(t )ca+(t )ae
4
5
5
gi−(t )ci+(t )bg−(t )bc
0
2
4
f b+(t )df +(t )bd
0
3
4
4
eg−(t )bg+(t )ae−(t )ab
0
2
3
0
da+(t )bd+(t )ab
2
hg+(t )f h+(t)gf
0
3 )cf −(t3 )ca−(t5 )ah
f
h+(t
0
f2 =
M
gf +(t)f e+(t5 )bg−(t6 )ae+(t6 )ab 0
f e+(t2 )df +(t)ed
0
2
2
df −(t)cf +(t )bd−(t )bc
0
ed+(t)di−(t2 )ci+(t2 )ca+(t4 )ae 0
di
0
ca
0
cf
0
ci
0
bg
0
0
bd
bc
0
ah
0
ae
0
ab
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
t3
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
t3
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
t3
0
0
0
0
0
0
0
0
0
0
0
0
0
0
t4
0
0
0
0
0
0
0
0
0
0
0
0
0
t5
0
0
0
0
0
0
0
0
0
0
0
0
t5
0
0
0
0
0
0
0
0
0
0
0
t6
0
0
0
0
0
0
0
0
0
0
t6
0
0
0
0
0
0
0
0
0
t6
0
0
0
0
0
0
0
0
t6
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
t7
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
t7
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
t8
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
t8
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
t8
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
t9
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
71
0
0
0
0
0
0
0
0
0
0
0
0
0
,
0
0
0
0
0
0
0
0
0
0
0
0
0
0
where
c1 = dih−(t3 )ahd,
c2 = bgi−(t)bci,
c3 = aeg−(t)abg,
c4 = cf h−(t2 )ahc,
c5 = egf −(t4 )aeg+(t5 )abg,
c6 = −bcf +bdf,
c7 = die−(t)cie+(t4 )aec,
z1 = gih−(t)dih+(t4 )ahd−(t2 )bgi+(t3 )bci−(t5 )abd−f hg+(t2 )cf h−(t4 )ahc+
egf −(t4 )aeg+(t5 )abg−(t)df e−(t3 )bcf +(t3 )bdf +(t)die−(t2 )cie+(t5 )aec
We see from looking at the two reduced matrices that there are two 1-cycles of infinite
persistence, namely di and ca, which matches the rank of H1 (K, Z[t]) for the torus. Furthermore, there is one 2-cycle, namely z1 , which also agrees with the rank of H2 (K, Z[t])
for the torus.
It is also worth pointing out now that while our previous Example 3.2.1 of the sphere
was computed over Q[t], the theorems above tell us that we would have arrived at the same
results by computing the persistent homology modules over Z.
4.4
Future Work
While the theorems above do not address the issues that arise as a result of torsion
being present in the homology modules, it is the belief of this author that the ideas in these
proofs may lead to future work in which other methods are developed that would allow for
computing persistent homology modules over Z, even when torsion is present.
72
At this point, the astute reader may be wondering why we are limiting ourselves to
orientable 2-dimensional simplicial manifolds. There are two reasons for this. First, the
condition of orientability used in the 2-dimensional case only precludes torsion from being
present in the (d−1)-dimensional homology modules of a d-dimensional manifold. In
general, if a d-dimensional manifold is orientable, there may still be torsion present in its
p-dimensional homology modules over Z where 0 < p < d−1. Second, in general the
p-skeleton of a d-manifold for p < d will not be a manifold itself. While the results may
seem limited at present time, it is also the hope of the author that the ideas contained in these
proofs could be extended and may be applied to simplicial complexes that do not represent
manifolds or to simplicial complexes of higher dimensions. The author also believes it
should be possible based on the ideas in this paper to ultimately construct an algorithm
that could compute persistent homology over Z for 2-dimensional manifolds that are not
orientable.
73
References
[1] David S. Dummitt and Richard M. Foote. Abstract Algebra. John Wiley and Sons,
Inc., third edition, 2004.
[2] Herbert Edelsbrunner and John L. Harer. Computational Topology An Introduction.
American Mathematical Society, 2010.
[3] Herbert Edelsbrunner, David Letscher, and Afra Zomorodian. Topological Persistence
and Simplification. Discrete Computational Geometry, 28:511–533, 2002.
[4] David Eisenbud. Commutative Algebra with a View Toward Algebraic Geometry.
Springer-Verlag, 1995.
[5] Robert Ghrist. Barcodes: The Persistent Topology of Data. Bulletin (New Series) of
the American Mathematical Society, 45(1):61–75, January 2008.
[6] Peter Giblin. Graphs, Surfaces, and Homology. Cambridge University Press, third
edition, 2010.
[7] Allen Hatcher. Algebraic Topology. Cambridge University Press, 2001.
[8] James Munkres. Elements of Algebraic Topology. Addison-Wesley Publishing Company, Inc., 1984.
[9] Afra Zomorodian. Topology for Computing. Cambridge University Press, 2005.
[10] Afra Zomorodian and Gunnar Carlsson. Computing Persistent Homology. Discrete
Computational Geometry, 33:249–274, 2005.
74
© Copyright 2026 Paperzz