C
k
B
k−1
Z
k−1
C
k−1
δ
k+1
δ
k
C
k+1
Z
k k
B Z
k+1 k+1
B
Fig. 7.10. A chain complex with its internals: chain, cycle, and boundary groups, and their images under the boundary operators.
7.3.1 Reduction
The standard method for computing homology is the reduction algorithm. We describe this method for integer coefficients as it is the more familiar ring. The
method extends to modules over arbitrary PIDs, however.
Recall the chain complex and its related groups, as shown in Figure 7.10 for a complex in an arbitrary dimension. As
C
k
is free, the oriented k-simplices form the standard basis for it. We represent the boundary operator
∂
k
:
C
k
→
C
k
−
1
relative to the standard bases of the chain groups as an integer matrix M
k
with entries in {−1, 0, 1}. The matrix M
k
is called the standard matrix representation
of ∂
k
. It has m
k
columns and m
k
−
1
rows the number of k- and k − 1-simplices, respectively. The null-space of M
k
corresponds to
Z
k
and its range-space to
B
k
−
1
, as manifested in Figure 7.10. The reduction algorithm derives alternate bases for the chain groups, relative to which the matrix for
∂
k
is diagonal. The algorithm utilizes the following elementary row operations on M
k
: 1. exchange row i and row j;
2. multiply row i by −1;
3. replace row i by row i + qrow j, where q is an integer and j = i.
The algorithm also uses elementary column operations that are similarly de- fined. Each column row operation corresponds to a change in the basis for
C
k
C
k
−
1
. For example, if e
i
and e
j
are the ith and jth basis elements for
C
k
, respectively, a column operation of type 3 amounts to replacing e
i
with e
i
+ qe
j
. A similar row operation on basis elements ˆe
i
and ˆe
j
for
C
k
−
1
, how- ever, replaces ˆe
j
by ˆe
j
− q ˆe
i
. We shall make use of this fact in Section 7.3.3. The algorithm systematically modifies the bases of
C
k
and
C
k
−
1
using elemen-
d a
b c
2 cd, ad
d a
b c
d a
b c
d a
b c
3 ac
4 abc
5 acd
a b
d a
b c
1
c, d,
a, b
ab, bc
Fig. 7.11. A filtered complex with newly added simplices highlighted.
tary operations to reduce M
k
to its Smith normal form:
˜ M
k
=
b
1
. .. b
l
k
,
where l
k
= rank M
k
= rank ˜ M
k
, b
i
≥ 1, and b
i
|b
i +1
for all 1 ≤ i l
k
. The algo- rithm can also compute corresponding bases
{e
j
} and { ˆe
i
} for
C
k
and
C
k
−
1
, re- spectively, although this is unnecessary if a decomposition is all that is needed.
Computing the normal form in all dimensions, we get a full characterization of
H
k
: i The torsion coefficients of
H
k
−
1
d
i
in Equation 3.1 are precisely the diagonal entries b
i
greater than 1. ii
{e
i
| l
k
+ 1 ≤ i ≤ m
k
} is a basis for
Z
k
. Therefore, rank
Z
k
= m
k
− l
k
. iii
{b
i
ˆe
i
| 1 ≤ i ≤ l
k
} is a basis for
B
k
−
1
. Equivalently, rank
B
k
= rank M
k +1
= l
k +1
. Combining ii and iii, we have
β
k
= rank
Z
k
− rank
B
k
= m
k
− l
k
− l
k +1
. 7.3
Example 7.1 We illustrate the reduction method using the filtration in Fig- ure 7.11. We use a smaller filtration than the one we used in the previous
section so the matrices are smaller. However, this example is more general as we allow multiple simplices to be added at the same time. For this complex,
the standard matrix representation of ∂
1
is
M
1
=
ab bc
cd ad
ac a
−1 −1 −1
b 1
−1 c
1 −1
1 d
1 1
,
where we show the bases within the matrix. Reducing the matrix, we get the normal form
˜ M
1
=
cd bc
ab z
1
z
2
d − c
1 c
− b 1
b − a
1 a
,
where z
1
= ad − bc − cd − ab and z
2
= ac − bc − ab form a basis for
Z
1
and {d − c, c − b, b − a} is a basis for
B
. We may use a similar procedure to compute homology over graded PIDs.
A homogeneous basis is a basis of homogeneous elements. We begin by rep- resenting
∂
k
relative to the standard basis of
C
k
which is homogeneous and a homogeneous basis for
Z
k
−
1
. Reducing to normal form, we read off the de- scription provided by the direct sum Equation 3.2 using the new basis
{ ˆe
j
} for
Z
k
−
1
: i Zero row i contributes a free term with shift
α
i
= deg ˆe
i
. ii Row with diagonal term b
i
contributes a torsional term with homoge- neous d
j
= b
j
and shift γ
j
= deg ˆe
j
. The reduction algorithm requires O
m
3
elementary operations, where m is the number of simplices in K. The operations, however, must be performed in
exact integer arithmetic. This is problematic in practice, as the entries of the intermediate matrices may become extremely large.
7.3.2 Derivation
We use the small filtration in Figure 7.11 as a running example and compute over R, although any field will do. The persistence module corresponds to a
R [t]-module by the correspondence established in Theorem 3.19. Table 7.1
reviews the degrees of the simplices of our filtration as homogeneous elements of this module.
Throughout this section, we use {e
j
} and { ˆe
i
} to represent homogeneous
Table 7.1. Degree of simplices of filtration in Figure 7.11
a b
c d
ab bc
cd ad
ac abc
acd 1
1 1
1 2
2 3
4 5
bases for
C
k
and
C
k
−
1
, respectively. Relative to homogeneous bases, any rep- resentation M
k
of ∂
k
has the following basic property: deg ˆe
i
+ deg M
k
i, j = deg e
j
, 7.4
where M
k
i, j denotes the element at location i, j. We get
M
1
=
ab bc
cd ad
ac d
t t
c 1
t t
2
b t
t a
t t
2
t
3
,
7.5
for ∂
1
in our example. The reader may verify Equation 7.4 using this example for intuition, e.g., M
1
4, 4 = t
2
as deg ad − deg a = 2 − 0 = 2, according to
Table 7.1. Clearly, the standard bases for chain groups are homogeneous. We need to
represent ∂
k
:
C
k
→
C
k
−
1
relative to the standard basis for
C
k
and a homoge- neous basis for
Z
k
−
1
. We then reduce the matrix and read off the description of
H
k
according to our discussion in Section 7.3.1. We compute these represen- tations inductively in dimension. The base case is trivial. As
∂ ≡ 0,
Z
=
C
and the standard basis may be used for representing ∂
1
. Now, assume we have a matrix representation M
k
of ∂
k
relative to the standard basis {e
j
} for
C
k
and a homogeneous basis
{ ˆe
i
} for
Z
k
−
1
. For induction, we need to compute a ho- mogeneous basis for
Z
k
and represent ∂
k +1
relative to
C
k +1
and the computed basis. We begin by sorting basis ˆe
i
in reverse degree order, as already done in the matrix in Equation 7.5. We next transform M
k
into the column-echelon form ˜
M
k
, a lower staircase form shown in Figure 7.12 Uhlig, 2002. The steps have variable height, all landings have width equal to 1, and nonzero elements
may only occur beneath the staircase. A boxed value in the figure is a pivot and a row column with a pivot is called a pivot row column. From linear al-
gebra, we know that rank M
k
= rank
B
k
−
1
is the number of pivots in an echelon form. The basis elements corresponding to nonpivot columns form the desired