4.2 Distributed Computation of Persistent Homology
4.2.3 Construction of distributed persistence module
Given a family of parameters(ei)iN=1such that the isomorphism
Hn(Ri)∼= H0(C•Fin)⊕H1(C•Fin−1)
holds for eachei, we now construct maps
Ψi : H
0(C•Fin)⊕H1(C•Fni−1)→H0(C•Fin+1)⊕H1(C•Fni+−11)
such that the resulting persistence module
VΨ :H0(C•Fn1)⊕H1(C•F1n−1) Ψ
1
−→ · · ·−−−→ΨN−1 H0(C•FnN)⊕H1(C•FnN−1)
is isomorphic to the persistence module
V: Hn(R1) ι1∗ −→ · · · ιN −1 ∗ −−→Hn(RN) from Equation4.14.
Recall the maps
H0(φin):H0(C•Fni)→H0(C•Fni+1)
H1(φin−1):H1(C•Fni−1)→H1(C•Fni+−11)
(4.29)
from Equation4.16and the map
ψi :H1(C•Fin−1)→ H0(C•Fin+1)
from Equation4.27. For eachei, it is possible to construct a map
Ψi : H
0(C•Fin)⊕H1(C•Fni−1)→H0(C•Fin+1)⊕H1(C•Fni+−11)
by
Ψi({hxi},{hyi}) = (H
0(φin){hxi}+ (−1)n+1ψi{hyi},H1(φni−1){hyi}).
Given two parametersei <ei+1, the persistence module
H0(C•Fni)⊕H1(C•Fin−1) Ψ
i
−→H0(C•Fni+1)⊕H1(C•Fni+−11)
can be shown to be isomorphic to the persistence module
Hn(Ri)
ιi∗
−→ Hn(Ri+1).
Given more than two parameters, the mapsΨimay define a persistence module that
is different from the persistence moduleVthat we are interested in. Thus, one should be mindful of the subtleties involved when constructing a persistence module for more than two parameters. Example15at the end of this chapter illustrates a situation where the maps Ψi lead to a persistence module that is not isomorphic to the persistence
module of interest.
The subtlety arises from the fact that for each parameterei, the cosheaf homology
multiple ei parameters, the naive construction might force H1(C•Fin−1) to represent
cycles that are not compatible with other parameters.
In this section, we construct morphismsΨi that ensures thatH1(C•Fin−1)represent
cycles that are compatible across parameters. We achieve this goal by reconstructing morphisms
ψi :H1(C•Fin−1)→H0(C•Fin+1).
Recall from Equations4.24and4.27that a mapψi : H1(C•Fni−1)→H0(C•Fni+1)has
been defined by extending the mapδi. The mapδiwas defined by
δi[{hγi}] = [{h−ein+1αi+1+ιinβii}],
whereαi+1satisfies Equation4.22andβisatisfies Equation4.23.
Instead of extending the map δi, we will define the map ψi : H1(C•Fni−1) →
H0(C•Fin+1)directly, as
ψi{hγi}={h−eni+1αi+1+ιinβi}
for{hγi} ∈kerH1(φin−1).
When there are multiple candidates for αi+1 and βi, the different choices of αi+1
and βi can lead to different constructions of ψi. It turns out, the different choices for αi+1do not affect the map ψi. It is the different choices ofβi that can lead to varying
constructions ofψi. In particular, we want to choose elementsβi such that the mapsψi
are compatible across parameters.
To that end, we construct the maps ψi on a fixed basisBi of H1(C•Fni−1)in an in-
ductive manner so that we can guarantee that choices ofβifor a parametereiare com-
patible with the choices ofβi−1for parameterei−1. Once we define the mapψi, we will
be able to defineΨi.
The construction of map ψi will make use of Diagram 4.30. Note that while the
previous commutative diagrams were constructed for two parameters ei < ei+1, the
the following diagram is seen from a different perspective in three dimensions than the previous diagrams for display purposes. In this diagram, each horizontal face of the cube corresponds to the 0thpage of the spectral sequence from Diagram4.3for a fixed
eparameter.
Note that ∂ are the usual boundary maps and ein : L
e∈NV
Cn(Rie) →
L
v∈NV
Cn(Riv)
is the inclusion of n-chains on the edges of NV to the vertices of NV. The map
ιin: L v∈NV Cn(Riv)→ L v∈NV Cn(Riv+1)andκin: L e∈NV Cn(Rie)→ L e∈NV
Cn(Rie+1)are both inclu-
sion maps. L v∈NV Cn(R1v) L e∈NV Cn(R1e) L v∈NV Cn−1(R1v) L e∈NV Cn−1(R1e) L v∈NV Cn(R2v) L e∈NV Cn(R2e) L v∈NV Cn−1(R2v) L e∈NV Cn−1(R2e) L v∈NV Cn(R3v) L e∈NV Cn(R3e) L v∈NV Cn−1(R3v) ... L e∈NV Cn−1(R3e) ... .. . ... ∂ ι1 n e1 n κ1n ∂ ι1n−1 e1 n−1 ∂ ι2 n e2 n κ2n ∂ ι2n−1 e2 n−1 κ1n−1 ∂ ι3n e3 n κ3n ∂ ι3n−1 e3 n−1 κ2n−1 κ3n−1 (4.30)
For parametere1, we will fix a basisB1ofH1(C•F1n−1). We will define a linear map
Γ1 : H
1(C•Fn1−1) → L v∈NV
Cn(R1v)and a linear mapψ1 : H1(C•F1n−1) → H0(C•F2n)by
For each parameterei, we will go through the following steps to construct the map ψi.
• Step 1. Fix a basis Ci of H1(C•Fin−1) that is compatible with the basis Bi−1 of
H1(C•Fin−−11).
• Step 2. Define a mapΓi : H
1(C•Fn1−1)→ L v∈NV
Cn(Riv)by defining the map onCi
and extending linearly.
• Step 3.Fix a new basisBi ofH1(C•Fin−1).
• Step 4.Define the mapψi : H1(C•Fin−1)→ H0(C•Fin+1)on basisBiusing the map Γi defined in Step 2.
The mapΓi :H1(C•Fin−1)→ L v∈NV
(Riv)defined in Step 2 will encode the choice ofβi
for each basis vector{hbi} ∈Bi. The basisCi ofH
1(C•Fin−1)of Step 1 will allow us to
define the mapΓi in a manner compatible with mapΓi−1from the previous parameter
ei−1.
We proceed with the base case for parametere1.
Base case
Recall from Equation4.25that
H1(C•F1n−1) =A1⊕kerH1(φ1n−1).
LetB1Abe a basis ofA1, and letB1
kerbe a basis of kerH1(φ1n−1). Then,
B1 =B1
A∪B1ker
is a basis ofH1(C•F1n−1). For each basis vector{hbi} ∈B1, fix a coset representativeb∗
ofhb∗i. Thus, we can express the basis as
B1= { {hb∗
We will defineΓ1 : H1(C•Fn1−1) → L v∈NV
Cn(R1v)on the basisB1. For a basis vector
{hb∗i} ∈B1, we know from Equation4.23that there exists someβ1∈ L
v∈NV
Cn(R1v)such
that
∂β1= e1n−1b∗.
Among all possible candidates for β1that satisfy the above equation, choose any par-
ticularβ1, and denote the chosen element byβ1∗. For each{hb∗i} ∈B1, let Γ1{hb∗i}=
β1∗. (4.31)
Extend this mapΓ1linearly to the vector spaceH1(C•F1n−1), i.e., define Γ1(a
1{hb1∗i}+· · ·+am{hb∗mi}) =a1Γ1{hb∗1i}+· · ·+amΓ1{hb∗mi}.
We now defineψ1 : H1(C•Fn1−1) → H0(C•Fn2)on the basisB1and extend the map
linearly. By construction, a basis vector{hb∗i} ∈ B1 must satisfy either{hb∗i} ∈ B1 ker
or {hb∗i} ∈ B1
A. If {hb∗i} ∈ B1ker, recall from Equation4.22that there exists anα2 ∈
L
e∈NV
Cn(R2e)such that
∂α2=κ1n−1b∗. (4.32)
Defineψ1for each{hb∗i} ∈B1by ψ1{hb∗i}= {h −e2nα2+ι1n◦Γ1{hb∗i} i} if{hb∗i} ∈B1ker 0 if{hb∗i} ∈B1 A (4.33) whereα2 ∈ L e∈NV
Cn(R2e)can be any element satisfying Equation4.32andΓ1is the map
defined in Equation4.31.
Extend the mapψ1to the vector spaceH1(C•Fn1−1), i.e., let
One can check that the mapψ1is well-defined (AppendixB.2).
Inductive step
Recall from Equation4.25that
H1(C•Fni−−11) = Ai
−1⊕kerH
1(φin−−11).
Assume that we are given a basisBi−1ofH1(C•Fni−−11)that has the form
Bi−1=Bi−1
A ∪Biker−1,
whereBiA−1 is a basis of Ai−1 andBkeri−1 is a basis of kerH1(φni−−11). Moreover, assume
that for each basis vector{hbi} ∈ Bi−1, a coset representativeb∗of hbihas been fixed,
i.e., we can write the basisBi−1as
Bi−1= { {hb∗
1i}, . . . ,{hbi∗−1mi} }.
Lastly, assume that the mapΓi−1: H1(C•Fin−−11)→ L v∈NV
Cn(Riv−1)has been defined such
that for every{hb∗i} ∈Bi−1, we have
∂Γi−1{hb∗i}=ein−−11b∗. (4.35)
• Step 1. We first fix a basisCi of H1(C•Fin−1). By assumption, the basis Bi−1 of
H1(C•Fin−−11)has the formBi−1= BiA−1∪Biker−1. Without loss of generality, assume
that
Bi−1
A ={ {hb
∗
1i}, . . . ,{hb∗ti} }.
One can show that {hκin−−11b1∗i}, . . . ,{hκni−−11b∗ti} are linearly independent in
H1(C•Fin−1)(AppendixB.3). Let Ci im={ {hκin−−11b ∗ 1i}, . . . ,{hκin−−11b ∗ ti} }.
ExtendCiimto a basisCiof H1(C•Fin−1). LetCiD denote the basis vectors ofCi that
are not inCiim, i.e.,
Ci =Ci
im∪CiD. (4.36)
For each{hci} ∈Ci, fix a coset representativec∗ofhcias the following. If{hci} ∈
Ci
imsuch that{hci}= {hκin−−11b∗si}, then letc∗ =κni−−11b∗s be the coset representative
ofhci. If{hci} ∈Ci
D, fix any coset representativec∗ofhci.
• Step 2. We will now define Γi : H1(C•Fni−1) →
L
v∈NV
Cn(Riv) on the basis Ci.
Given a basis vector {hc∗i} ∈ Ci, we know from Equation4.23that there exists
someβi ∈ L
v∈NV
Cn(Riv)such that
∂βi =ein−1c∗. (4.37)
If{hc∗i} = {hκin−−11b∗i} ∈ Ci
im, then by Equation4.35and commutativity of Di-
agram 4.30, one can check that ιin−1Γi−1{hb∗i}is a candidate for βi that satisfies
Equation4.37. DefineΓion each{hc∗i} ∈Ciby
Γi{hc∗i}= ιin−1Γi−1{hb∗i} if{hc∗i}={hκin−−11b∗i} ∈Ciim βi if{hc∗i} ∈CiD (4.38) where βi ∈ L v∈NV
Cn(Riv)is any element satisfying Equation 4.37. Note that by
construction, for each{hc∗i} ∈Ci, we definedΓic∗ such that
∂Γi{hc∗i}=ein−1c∗. (4.39)
Extend the mapΓilinearly to the vector spaceH1(C•Fni−1).
• Step 3.Recall from Equation4.25the decomposition
LetBiAbe a basis ofAi, and letBi
kerbe a basis of kerH1(φin−1). Then,
Bi =Bi
A∪Bkeri
is a basis ofH1(C•Fni−1). Each basis vector{hbi} ∈ Bi can be written as a linear
combination of basisCi ={ {hc∗1i}, . . . ,{hc∗li} }as
{hbi}=d1{hc1∗i}+· · ·+dl{hc∗li}.
Then, let
b∗ =d1c∗1+· · ·+dlc∗l (4.40)
be the coset representative ofhbi. We can express the basisBiof H1(C•Fin−1)as
Bi ={ {hb∗
1i}, . . . ,{hb∗ki} }. (4.41)
Note that by construction, for any basis vector{hb∗i} ∈Bi, we have
Γi{hb∗i}=d
1Γi{hc∗1i}+· · ·+dlΓi{hc∗li}
and
∂Γi{hb∗i}=ein−1b∗,
which is a condition we need to pass on to the next inductive step.
• Step 4. We now defineψi : H1(C•Fni−1) → H0(C•Fin+1)by defining ψi on the
basisBi and extending the map linearly. If {hb∗i} ∈ Bi
ker, recall from Equation
4.22that there exists someαi+1 ∈ L
e∈NV
Cn(Rie+1)such that
Defineψion each{hb∗i} ∈Bi by ψi{hb∗i}= {h −einαi+1+ιin−1◦Γi{hb∗i} i} if{hb∗i} ∈Biker 0 if{hb∗i} ∈Bi A , (4.43) whereαi+1 ∈ L e∈NV
Cn(Rie+1)is any element satisfying Equation4.42andΓi is the
map defined in Equation4.38. Define the linear mapψi by extending the above
to the vector spaceH1(C•Fni−1)by
ψi(a1{hb∗1i}+· · ·+al{hb∗li}) =a1ψi{hb∗1i}+· · ·+alψi{hb∗li}. (4.44)
One can check thatψiis well-defined (AppendixB.2).
Once we define the mapsψi : H1(C•Fin−1)→ H0(C•Fin+1)inductively, we can define Ψi : H
0(C•Fin)⊕H1(C•Fni−1)→H0(C•Fin+1)⊕H1(C•Fni+−11)
by
Ψi({hxi},{hyi}) = (H
0(φin){hxi}+ (−1)n+1ψi{hyi}, H1(φin−1){hyi}), (4.45)
whereH0(φin)andH1(φni−1)are the maps defined in Equation4.16.
LetVΨdenote the persistence module
VΨ :H0(C•F1n)⊕H1(C•F1n−1)
Ψ1
−→ · · ·−−−→ΨN−1 H0(C•FnN)⊕H1(C•FnN−1). (4.46)