Upload
others
View
2
Download
0
Embed Size (px)
Citation preview
Simplicial Homology and Computation
from Nerves
Vishnu MangalathSupervised by Lyle Noakes
The University of Western Australia
Vacation Research Scholarships are funded jointly by the Department of Education
and Training and the Australian Mathematical Sciences Institute.
Contents
1 Introduction 2
2 Simplicial Complexes 3
2.1 Orientation . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4
3 Simplicial Homology 5
3.1 Chain Complexes . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 5
3.2 Cycle and Boundary Groups . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 7
3.3 Homotopy type . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 7
4 Computational Methods 8
4.1 Generating Simplicial Complexes . . . . . . . . . . . . . . . . . . . . . . . . . . 8
4.2 Computing Homology . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 11
4.3 Complexity . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 13
4.4 Reducing Size of Complex . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 13
4.5 Examples . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 14
5 Future work 15
6 References 15
1
1 Introduction
Algebraic topology is the study of topological spaces by looking at the algebraic invariants of
these spaces. One such invariant is called homology. Homology gives us information about the
shape of topological spaces, and we can use this information to determine whether or not two
different spaces have the same shape.
In this paper we will discuss the use of homology to extract information about shape from
datasets. To give a brief summary of this process, we generate a topological space that approx-
imates the data and then compute the homology of the generated space.
I would like to thank Lyle Noakes for his guidance and effort spent supervising this project,
and also the Australian Mathematical Sciences Institute for giving me the opportunity to
complete the Vacation Research Scholarship.
2
2 Simplicial Complexes
Geometrically, simplicial complexes can be thought of as structures built from objects called
simplices; which are points, line segments, filled in triangles, and their higher dimensional
analogues. These structures are useful because often we can approximate spaces (via a home-
omorphism) by geometric simplicial complexes, which are easier to work with in some cases.
The precise definition of a simplicial complex is given below.
Definition 1. A simplicial complex K consists of a nonempty set V (K) called vertices and a
set S(K) of nonempty finite subsets of V (K) called simplices such that:
• every vertex of K is also a simplex of K, and,
• every nonempty subset of a simplex of K is also a simplex of K.
The dimension of a simplicial complex K is one less than the number of vertices in the
largest simplex of K, and a q-simplex is any simplex with q + 1 points.
Example 1. Let V (K1) = {a, b, c, d, e} and S(K1) = {{a}, {b}, {c}, {d}, {e}, {a, b}, {b, c}, {a, c},
{a, b, c}, {e, d}}. Then K1 is a simplicial complex of dimension 3.
We can now construct the geometric realisation of a simplicial complex. Given a nonempty
simplicial complex K, let |K| be the set of all functions α : V (K)→ [0, 1] such that
• for any α ∈ |K|, the set {v ∈ V (K) |α(v) = 0} is a simplex of K, and
•∑
v∈V (K) α(v) = 1.
From this, for any s ∈ S(K) we define the closed simplex |s| to be the set
|s| = {α ∈ |K| |α(v) = 0 =⇒ v ∈ s} .
We can attach a metric onto |K| such that for any α, β ∈ |K|,
d(α, β) =
√ ∑v∈V (K)
(α(v)− β(v))2 .
The set |K| with the topology induced by d is denoted |K|d. We will now define a new topology
on |K|. Since |s| ⊂ |K|, we can define |s|d to have the subspace topology from |K|d. If s is
3
a q-simplex, then |s|d is homeomorphic to the set {x ∈ Rq+1 | 0 ≤ xi ≤ 1,∑
i xi = 1} ⊂ Rq+1
via the homeomorphism f(α) = (α(v0), . . . , α(vq)), which is the convex hull of q + 1 points in
Rq+1. Finally, from this we can define a topology on the set |K| where a set U ⊂ |K| is open
in |K| if and only if U ∩ |s|d is closed in |s|d for all s ∈ S(K). This topology is known as the
weak topology on |K| (Spanier, 1966).
Remark 1. For a finite simplicial complex K, the metric and weak topologies on |K| are equiv-
alent, however as shown in Example 2, for infinite simplicial complexes this is not always the
case.
Example 2. (Munkres, 1999) Let K be a simplicial complex such that V (K) = {1/n |n ∈
N, n > 0} ∪ {0} and S(K) = {{1/(n+ 1), 1/n}, {1/n} |n ∈ N, n > 0}. Then the underlying set
of |K| is equivalent to [0, 1], however the set {1/n |n ∈ N, n > 0} is closed in |K| but not in
[0, 1].
2.1 Orientation
We can also attach an additional structure onto our simplicial complexes called orientation.
This is an ordering on the set of vertices of a simplicial complex such that any two orderings
are called equivalent if they differ by an even permutation. An ordering on the set of vertices
imposes an ordering on the set of simplices and so we have an ordered simplicial complex.
Ordered simplices are written with angle brackets ”〈” and ”〉”.
Example 3. Let K2 be an oriented simplicial complex with V (K2) = {a, b, c, d, e} and S(K2) =
{〈a〉, 〈b〉, 〈c〉, 〈d〉, 〈e〉, 〈a, b〉, 〈b, c〉, 〈a, c〉, 〈c, d〉, 〈a, d〉, 〈d, e〉, 〈a, c, d〉}. Figure 1 shows a realisation
of K2 with orientation.
a
b c
d e
Figure 1: |K2| with orientation
4
Oriented simplicial complexes will be our primary object of study when it comes to com-
puting homology.
3 Simplicial Homology
Using the structures defined in the previous section, we can now explore the topic of simplicial
homology. Loosely speaking, homology is a measure of the shape of an object; more precisely,
the homology groups give us information about the number of connected components, the
number of holes, and similar concepts in higher dimensions.
3.1 Chain Complexes
Here we will construct the algebraic equivalent of a simplicial complex known as a chain com-
plex. Chain complexes do not contain any kind of specific information about the nature of the
vertices or simplices of a simplicial complex (such as sets or distances), but contain abstract
information about the ”shape” of the complex.
Definition 2. The nth chain group of a simplicial complex K is the formal linear combination
of all n-simplices of K over the integers:
Cn(K) =
{∑i
λiei |λi ∈ Z, ei is an n-simplex of K
}
Note that if K is finite, then Cn(K) is a finitely generated Abelian group.
Definition 3. The nth boundary homomorphism of a simplicial complex K is a linear function
∂n : Cn(K)→ Cn−1(K) such that:
∂n(〈a0, . . . , an〉) =n∑i=0
(−1)i〈a0, . . . , ai, . . . , an〉 ,
where ai denoted the deletion of the ith entry.
An important property of the boundary operator is shown in Proposition 1.
Proposition 1. The composition of consecutive boundary operators is trivial.
∂n ◦ ∂n+1 = 0 .
5
Proof. Due to the linearity of the boundary operator, it suffices to show that
∂n ◦ ∂n+1(〈a0, . . . , an, an+1〉) = 0 .
∂n ◦ ∂n+1(〈a0, . . . , an, an+1〉) = ∂n
(n+1∑i=0
(−1)i〈a0, . . . , ai, . . . , an+1〉
)
=n+1∑i=0
(−1)i∂n(〈a0, . . . , ai, . . . , an+1〉)
=n+1∑i=0
(−1)i
(∑j<i
(−1)j〈a0, . . . , aj, . . . , ai, . . . , an+1〉
+∑j>i
(−1)j−1〈a0, . . . , ai, . . . , aj, . . . , an+1〉
)
=∑j<i
(−1)i(−1)j〈a0, . . . , aj, . . . , ai, . . . , an+1〉
+∑i<j
(−1)i(−1)j−1〈a0, . . . , ai, . . . , aj, . . . , an+1〉
=∑j<i
(−1)i(−1)j〈a0, . . . , aj, . . . , ai, . . . , an+1〉
−∑i<j
(−1)i(−1)j〈a0, . . . , ai, . . . , aj, . . . , an+1〉
= 0 .
From the previous definitions we can define the chain complex as follows.
Definition 4. A chain complex is a sequence of chain groups Cn(K) with connecting boundary
homomorphisms ∂n:
· · · ∂n+2−−−→ Cn+1(K)∂n+1−−−→ Cn(K)
∂n−→ Cn−1(K)∂n−1−−−→ · · · ,
such that ∂n ◦ ∂n+1 = 0 for all n.
6
3.2 Cycle and Boundary Groups
Definition 5. For any σ ∈ Cn(K),
• σ is called a cycle if ∂n(σ) = 0.
• σ is called a boundary if ∂−1n+1(σ) 6= ∅.
The set of all cycles of Cn(K) is denoted Zn(K) = Ker∂n, and the set of all boundaries is
denoted Bn(K) = Im∂n+1.
Proposition 2. Bn(K) E Zn(K) ≤ Cn(K).
The preceding proposition allows us to construct a new group called the nth homology group
which is defined as the quotient group formed by Zn(K) and Bn(K).
Hn(K) = Zn(K)/Bn(K) .
Since Hn(K) is a finitely generated Abelian group, we can write this as
Hn(K) ∼= Zτ(n)1⊕ · · · ⊕ Z
τ(n)t⊕ Zβn , τ
(n)i |τ
(n)i+1 .
The constants τ(n)1 , . . . , τ
(n)t are called the nth torsion coefficients and βn is called the nth Betti
number.
3.3 Homotopy type
Roughly speaking, two spaces are said to have the same homotopy type (or to be homotopy
equivalent) if they can be continuously deformed into each other. This has important con-
nections to homology as spaces that have the same homotopy type have isomorphic homology
groups. In many cases, we can reduce a more complicated simplicial compled into a simpler
one and extract the same information. Formally the concept of homotopy equivalence is given
in the following two definitions.
Definition 6. Two continuous functions f and g from a topological space X to a topological
space Y are said to be homotopic if there exists a continuous function H : [0, 1]×X → Y such
that H(0, x) = f(x) and H(1, x) = g(x).
7
Definition 7. Two topological spaces X and Y are said to have the same homotopy type if
there exist continuous functions f : X → Y and g : Y → X such that g ◦ f is homotopic to
idX and f ◦ g is homotopic to idY .
The following theorem is proven in Munkres (1999).
Theorem 1. Two simplicial complexes K and L have isomorphic homology groups if their
geometric realisations |K| and |L| are homotopy equivalent.
4 Computational Methods
We can now discuss methods of extracting information about shape from data sets. To do
this, we must first generate a simplicial complex from the data that approximates its shape
effectively, and compute the Betti numbers and torsion coefficients of the complex.
4.1 Generating Simplicial Complexes
Many methods exist for generating simplicial complexes. The main method that will be dis-
cussed here is to take the nerve of an open cover, which is defined below.
Definition 8. Given an open cover U of a space X, the nerve of U is the simplicial complex
N (U) with V (N (U)) = U and for any U0, . . . , Uq ∈ U , {U0, . . . , Uq} is a q-simplex of N (U) if
and only if ∩qi=0Ui 6= ∅.
The following theorem shows that as long as the union of the open cover U is a good
approximation for the data, the homology of the nerve will give the desired information about
the shape of the data.
Theorem 2. (Nerve theorem) Given an open cover U , the nerve N (U) is homotopy equivalent
to ∪U∈UU
A proof of the general nerve theorem is given in Hatcher (2001).
A simple method of constructing this complex is known as the Cech complex.
8
Figure 2: The nerve of an open cover
Definition 9. The ε-Cech complex of a collection of points P is the nerve of the open cover:
U(P ) = {Bd(p, ε) | p ∈ P} ,
where Bd(p, ε) denoted the ball of radius ε centred at p with metric d.
Figure 3: The Cech complex of a point set
Unfortunately, the Cech complex becomes impractical to compute as ε becomes large due
to the increased number of intersections. To solve this problem, we introduce the α-complex
and Voronoi regions (Edelsbrunner & Mucke, 1994).
Definition 10. For a data set P ∈ Rn, the Voronoi region corresponding to a particular p ∈ P
is the set
Rp(P ) = {x ∈ Rn | d(x, p) ≤ d(x, q)∀q ∈ P\{p}} .
9
Figure 4: Voronoi regions corresponding to a point set
Definition 11. The α-complex of a data set P ∈ Rn is the nerve of the cover:
U(P ) = {Bd(p, α) ∩Rp(P ) | p ∈ P} ,
which is the Cech complex with the open balls restricted to the Voronoi regions.
Figure 5: Restricted ε balls
This has the advantage that for a data set in Rn, if we impose the restriction that no k
points lie on a sphere of dimension k−2, then the largest possible simplex will be an n-simplex.
Bauer and Edelsbrunner (2016) showed using the concept of collapses that the α-complex
and the Cech complex are homotopy equivalent, thus the α complex contains all the information
about shape contained in the Cech complex, but in a more compact form.
Computing the α-complex of a particular data set relies on the Delaunay triangulation of
the data set. The Delaunay triangulation is simply the nerve of the Voronoi regions. From
10
Definition 11, the α-complex will always be a subcomplex of the Delaunay triangulation, so we
just need to delete all the unnecessary simplices from the Delaunay triangulation. This requires
us to determine whether or not a particular set of q + 1 points forms a q-simplex in Rn for
q ≤ n. For q = 1, this is trivial since to determine whether or not two points p1 and p2 form a
1-simplex, we only need to check if d(p1, p2) < α. However, for n ≥ 2 this is not so easy.
For any set of points in Rn, we say that these points are in general position if no k of them
lie on a hyperplane of dimension k−2 for 2 ≤ k ≤ n+1. Then if we have q+1 points in general
position, there exists a unique sphere of dimension q − 1 containing all these points. Since
this sphere is unique, there exists a unique point equidistant from the q + 1 points, and the
distance is called the circumradius. This implies that when α is greater than the circumradius,
all α-balls centred at the q+1 points intersect at a common point and so this forms a q-simplex.
A formula for the circumradius of a set of q + 1 points in general position developed by
Coxeter (1930) is shown in the following statements.
For any collection of points x1, . . . xk ∈ Rn, the Euclidean distance matrix D(x1, . . . , xk) ∈
Rm×m is the matrix:
D(x1, . . . , xk)ij = (d(xi, xj))2
Where d is the Euclidean metric.
Proposition 3. Let p0, . . . , pq ∈ Rn be a set of q + 1 points in general position. Then the
circumradius R of p0, . . . , pq is given by the relation:
−2R2 =detD(p0, . . . , pq)
det
0 1
1 D(p0, . . . , pq)
A proof of Proposition 3 can be found in Coxeter (1930).
Using the Delaunay triangulation does however restrict us to working with data sets that
are in general position. This along with the previous restrictions can be removed by for example
applying a small perturbation onto the data set (Edelsbrunner & Mucke, 1994).
4.2 Computing Homology
The set of n-simplices of a simplicial complex K forms a basis for the nth chain group Cn(K).
This means that we can represent the boundary homomorphism ∂n as a matrix Dn, where any
11
column of Dn gives the coefficients of a particular n-simplex under the image of ∂n. An example
of this construction is given in Example 4.
Example 4. Let K be an oriented simplicial complex with V (K) = {a, b, c, d} and S(K) =
{〈a〉, 〈b〉, 〈c〉, 〈d〉, 〈a, b〉, 〈b, d〉, 〈a, c〉, 〈c, d〉, 〈a, d〉, 〈a, b, d〉, 〈a, c, d〉}. Then the chain groups C2(K)
and C1(K) are given by:
C2(K) = {λ1〈a, b, d〉+ λ2〈a, c, d〉 |λi ∈ Z}
C2(K) = {λ1〈a, b〉+ λ2〈b, d〉+ λ3〈a, c〉+ λ4〈c, d〉+ λ5〈a, d〉 |λi ∈ Z}
We also have that
∂n(〈a, b, d〉) = 〈b, d〉 − 〈a, d〉+ 〈a, b〉
∂n(〈a, c, d〉) = 〈c, d〉 − 〈a, d〉+ 〈a, c〉
So the boundary matrix Dn is:
Dn =
〈a,b,d〉 〈a,c,d〉
〈a,b〉 1 0
〈b,d〉 1 0
〈a,c〉 0 1
〈c,d〉 0 1
〈a,d〉 −1 −1
Proposition 4. If A is an n ×m matrix with integer entries, then there exists a sequence of
row and column operations that transforms A into the following Smith normal form
a1 0 0 · · · 0
0 a2 0 · · · 0
0 0. . . 0
...... at
...
0. . .
0 · · · 0
where a1|a2| · · · |at.
12
An algorithm that performs this reduction is presented in Munkres (1984).
Row operations and column operations on the boundary matrix correspond to changes in
basis in the spaces Cn(K) and Cn+1(K), so reducing to Smith normal form leaves the rank
and nullity of the matrix unchanged. Recall that the nth Betti number of a complex K is
the number of copies of Z in the nth Homology group, that it, the rank of Hn(K). Since
Hn(K) = Zn(K)/Bn(K) we have that rankHn(K) = rankZn(K) − rankBn(K). Furthermore
Zn(K) = Ker∂n so rankZn(K) = dim(nullspSn) which is just the number of zero columns in
Sn, ln. Similarly, Bn(K) = Im∂n+1 so rankBn(K) = dim(rowspSn+1) which is just the number
of nonzero columns in Sn+1, mn+1. Therefore βn = ln −mn+1. The nth torsion coefficients are
simply the diagonal entries of Sn+1 greater than one (Robins, 2000).
4.3 Complexity
For subsets of R2, Guibas and Stolfi (1985) shows that using a divide and conquer method, the
Delaunay triangulation of n points can be computed in O(n log n) time in general, and a mod-
ification by Dwyer (1987) improved this for uniformly distributed data sets to O(n log log n).
In general, Cignoni et al (1998) gave a generalisation of this method for point sets in Rd with
complexity O(ndd/2e+1). Various other algorithms exist for Delaunay triangulations in R2 and
R3, and these are summarised in Su and Drysdale (1997).
Algorithms for determining the Smith normal form of integer matrices however tend to be
of high polynomial degrees in the dimensions of the matrix. A summary of some Smith normal
form algorithms can be found in Koukouvinos (1998).
4.4 Reducing Size of Complex
Since the computation of Smith normal form is of a high degree polynomial in the dimensions
of the matrix, it is then desirable to decrease the number of simplices in the generated complex.
The α-complex and the Cech complex both treat each point in the dataset as a vertex, so the
complex is much larger than necessary in many cases. A way to decrease the size of our complex
is to successively take ε-balls at random points in the set, and then delete all points within the
ε-balls. This will eventually result in an open cover of the data. An algorithm that inputs a
dataset X0 with an ε and outputs an open cover of ε-balls U along with the set of centres of
13
those balls P is shown below.
Require: Dataset X0, ε > 0 .
1: procedure ReducePoints
2: i := 0
3: U := ∅
4: P := ∅
5: while Xi 6= ∅ do:
6: xr := Random(Xi)
7: Xi+1 := Xi\{x ∈ Xi |x ∈ Bd(xr, ε)}
8: U := U ∪Bd(xr, ε)
9: P := P ∪ {xr}
10: i := i+ 1
return U , P
From this we can compute the nerve of U or compute the α-complex of P with α = ε.
Since P is a subset of X0, the α-complex of P will have at most the number of vertices in the
α-complex of X0.
4.5 Examples
Two examples of the number of vertices produced by the above algorithm with a uniform
distribution of points are given below. A uniform distribution of 1000 points was taken on each
object, and the average number of vertices for 100 trials of the above algorithm was computed
for ε ranging form 0.01 to 1.8.
14
0 0.2 0.4 0.6 0.8 1 1.2 1.4
0
200
400
600
800
ε
vert
ices
(a) Unit square
0 0.5 1 1.5
0
200
400
600
800
1,000
ε
vert
ices
(b) Unit cube
Figure 6: Average number of simplices for various ε
The data suggests that as ε increases, the number of vertices in the reduced complex rapidly
decreases to 1. For example, for the unit square, on average by ε = 0.08 we find the number of
vertices is less than 100 (compared to 1000 in the standard α-complex).
5 Future work
In future work I would like to explore further increases in efficiency to the algorithm presented
in Section 4.4, as well as an analysis of the complexity of the algorithm. It would also be useful
to determine an expression for the expected value of the number of vertices as a function of ε
for the unit square, the unit cube, as well as for other subsets of Rn. Possible improvements
could be made using a multiresolution approach to generating the complex.
6 References
• Bauer, U. and Edelsbrunner, H. (2016). The Morse theory of Cech and Delaunay com-
plexes. Transactions of the American Mathematical Society, [online] 369(5), pp.3741-3762.
Available at: https://doi.org/10.1090/tran/6991 [Accessed 17 Feb. 2018].
• Cignoni, P., Montani, C. and Scopigno, R. (1998). DeWall: A fast divide and conquer De-
15
launay triangulation algorithm in Ed. Computer-Aided Design, [online] 30(5), pp.333-341.
Available at: https://doi.org/10.1016/S0010-4485(97)00082-1 [Accessed 16 Feb. 2018].
• Coxeter, H. (1930). The Circumradius of the General Simplex. The Mathematical
Gazette, [online] 15(210), p.229. Available at: https://doi.org/10.2307/3607191 [Accessed
2 Feb. 2018].
• Dwyer, R. (1987). A faster divide-and-conquer algorithm for constructing delaunay trian-
gulations. Algorithmica, [online] 2(1-4), pp.137-151. Available at: https://doi.org/10.1007
/BF01840356 [Accessed 16 Feb. 2018].
• Edelsbrunner, H. and Mucke, E. (1994). Three-dimensional alpha shapes. [ ACM Trans-
actions on Graphics], [online] 13(1), pp.43-72. Available at: http://doi.org/10.1145/174462
.156635 [Accessed 12 Jan. 2018].
• Guibas, L. and Stolfi, J. (1985). Primitives for the manipulation of general subdivisions
and the computation of Voronoi. ACM Transactions on Graphics, [online] 4(2), pp.74-123.
Available at: http://doi.org/10.1145/282918.282923 [Accessed 16 Feb. 2018].
• Hatcher, A. (2017). Algebraic topology. Cambridge: Cambridge University Press, p.459.
Available at: https://www.math.cornell.edu/ hatcher/AT/AT.pdf [Accessed 15 Feb. 2018].
• Koukouvinos, C., Mitrouli, M. and Seberry, J. (1998). Numerical algorithms for the
computation of the Smith normal form of integral matrices. Congressus Numerantium,
(133), pp.127-162.
• Munkres, J. (1999). Elements of Algebraic Topology. Addison-Wesley.
• Robins, V. (2000). Computational Topology at Multiple Resolutions: Foundations and
Applications to Fractals and Dynamics. Ph.D. University of Colorado, Boulder.
• Su, P. and Scot Drysdale, R. (1997). A comparison of sequential Delaunay triangu-
lation algorithms. Computational Geometry, [online] 7(5-6), pp.361-385. Available at:
http://doi.org/10.1016/s0925-7721(96)00025-9 [Accessed 16 Feb. 2018].
16