Persistent Homology

Cech complex

Let

P \; ≝ \; \lbrace p_1, …, p_n \rbrace

be $n$-points in $ℝ^D$.

The Cech complex of threshold $r ≥ 0$ on $P$:

is the simplicial complex $𝒞^r(P)$ satisfying:

σ = \lbrace p_{i_0}, …, p_{i_d} \rbrace ∈ 𝒞^r(P) \quad \text{ iff } \quad \bigcap\limits_{j=0}^d B^r(p_{i_j}) ≠ ∅

(cf. picture)

Nerve lemma:

The union of balls $\bigcup\limits_{p ∈ P} B^r(p)$ and the domain of the Cech complex $\vert 𝒞^r(P) \vert$ are homotopy equivalent

A filtration:

is a family of simplicial complexes $\lbrace K_i \rbrace_{i ∈ [0, n]}$ such that

K_i ⊆ K_{i+1} \qquad \text{ for all } i=0, …, n-1

In particular, let $K$ be a finite complex and $f: K ⟶ ℝ$ that satisfies

f(τ) ≤ f(σ) \quad \text{ whenever } τ ⊆ σ

then $f$ induces a filtration on $K$, where for all $α ∈ ℝ$:

K_{α_i} = f^{-1} ((-∞; α_i])

Let $K = \lbrace σ_1, …, σ_m\rbrace$ (where subfaces appear before faces) st

f(σ_i) < f(σ_{i+1}) \quad ∀ i

Let $s_0, …, s_n ∈ ℝ$ satisfying

s_0 < f(σ_1) < s_1 < ⋯ < s_{m-1} < f(σ_m) < s_m

The filtration induced by $f$ on $K$ is:

∅ = K_{s_0} \hookrightarrow K_{s_1} \hookrightarrow ⋯ \hookrightarrow K_{s_m} = K

For the $𝒞(P)$, there are finitely many radii $r$ where the topology of

𝒞^{r-ε}(P) \hookrightarrow 𝒞^{r+ε}(P)

changes.

Call these values $r_i, …, r_n$. Consider $s_0, …, s_n$ st

s_0 < r_1 < s_1 < ⋯ < s_{n-1} < r_n < s_n

The Cech filtration is

∅ = 𝒞^{s_0}(P) \hookrightarrow 𝒞^{s_1}(P) \hookrightarrow ⋯ \hookrightarrow 𝒞^{s_n}(P) = \text{ full complex on } n \text{ points}

Look at the homology of this complex ($\ast$ = any dimension):

\underbrace{H_\ast(𝒞^{s_0}(P)) ⟶ H_\ast(𝒞^{s_1}(P)) ⟶ ⋯ ⟶ H_\ast(𝒞^{s_n}(P))}_{\text{Persistence module}}

NB:

  • we use this multi-scale approach to get rid of the noise of small holes/artefacts.
  • if we start from a finite set of points, then these homology vector spaces are finite dimensional.

Persistence Modules

Fix a field $𝔽$. In what follows, all v.s. are $𝔽$-vector spaces.

Homology has $𝔽$ coefficients. Here, let $𝔽 \; ≝ \; ℤ/2ℤ$

For a fixed set of indices $α_0 < α_1 < ⋯ < α_n$ (real numbers).

A persistence module:

is a collection of finite dimensional vector spaces indexed over the $α_i$’s:

\lbrace V_{α_i} \rbrace_{i= 0, …, n}

and linear maps

\lbrace f_i: V_{α_i} ⟶ V_{α_{i+1}}\rbrace_{i = 0, …, n-1}
𝕍 \; ≝ \; V_{α_0} \overset{f_0}{⟶} V_{α_1} \overset{f_1}{⟶} ⋯ \overset{f_{n-1}}{⟶} V_{α_n}

Actually, you look at it as a graded module \bigoplus_i V_{α_i}

and the ring acting on it is $𝔽[t]$:

t^k × (0, …, 0, \underbrace{x}_{∈ V_{α_i}}, 0, …, 0) = (0, …, 0, \underbrace{f_{i+k-1} ⋯ f_{i} (x)}_{∈ V_{α_{i+k}}}, 0, …, 0)

Example: cf. picture

Morphisms on persistence modules

A morphism of persistence modules indexed on the same $α_i$’s

ϕ: \underbrace{𝕍}_{(\lbrace V_{α_i} \rbrace, f_i)} ⟶ \underbrace{𝕎}_{(\lbrace W_{α_i} \rbrace, g_i)}

is a collection of linear maps

ϕ \; ≝ \; \lbrace ϕ_i: V_{α_i} ⟶ W_{α_i}\rbrace

st these diagrams commute:

\begin{xy} \xymatrix{ V_{α_i} \ar[r]^{ f_i } \ar[d]_{ ϕ_i } & V_{α_{i+1}} \ar[d]^{ ψ } \\ W_{α_i} \ar[r]_{ g_i } & W_{α_{i+1}} } \end{xy}

If all $ϕ_i$’s are isomorphisms, we say that $ϕ$ is an iso of persistence modules.

Persistence modules decomposition

A direct sum of persistence modules $𝕍 = (V_{α_i}, f_i)$ and $𝕎 = (W_{α_i}, g_i)$ is

𝕍 ⊕ 𝕎 = V_{α_0} ⊕ W_{α_0} \overset{f_0 ⊕ g_0}{⟶} V_{α_1} ⊕ W_{α_1} \overset{f_1 ⊕ g_1}{⟶} ⋯
A persistence module $𝕍$ is indecomposable:

iff 𝕍 ≅ 𝕍_1 ⊕ 𝕍_2 \quad ⟹ \quad 𝕍_1 \text{ or } 𝕍_2 \text{ is trivial}



Th: Every persistence module $𝕍$ indexed over $α_0, …, α_n$ admits a unique decomposition into indecomposables, called interval modules:

𝕍 ≅ \bigoplus\limits_{j} 𝕀[b_j; d_j]

where ($b$ stands for birth, $d$ stands for death):

𝕀[b; d] = 0 ⟶ ⋯ ⟶ 0 ⟶ \underbrace{𝔽}_{\text{at index } α_i = b} \overset{id}{⟶} ⋯ \overset{id}{⟶} \underbrace{𝔽}_{\text{at index } α_j = d} ⟶ 0 ⟶ ⋯ ⟶ 0

Example:

  • Uniqueness property: Krull-Remak-Schmidt
  • Decomposition: Gabriel
  • cf picture
  • cf second picture. Motto: « you kill the youngest. »

Pesistence Barcode

Let 𝕍 ≅ \bigoplus\limits_j 𝕀[b_j, d_j]

Its persistence barcode:

is the collection of segments \lbrace [b_j, d_j] \rbrace_j

Its persistence diagram:

is the collection of points \underbrace{\lbrace (b_j, d_j) \rbrace_j}_{⊆ ℝ^2} ∪ \underbrace{\lbrace (x, x) \rbrace_{x ∈ ℝ}}_{\text{diagonal } Δ \text{, added for convenience}}

Algorithm to compute persistence (i.e. persistent homology)

Wlog, all filtrations are of the form

∅ = K_0 \overset{σ_1}{\hookrightarrow} K_1 \overset{σ_2}{\hookrightarrow} K_2 ⋯ \overset{σ_n}{\hookrightarrow} K_n

for all $i= 0, …, n-1$:

K_{i+1} = K_i ∪ \lbrace σ_{i+1} \rbrace

NB: if you want to go back to the geometry, it’s enough to do, for any filtration function $f: K_n ⟶ ℝ$ (in cas of Cech: the radius of the smallest ciconscribing ball)

𝕀[i, j] \leadsto [f(σ_i), f(σ_j)]

Proposition: Let $K \hookrightarrow K ∪ \lbrace σ\rbrace$, $\dim σ = d$, then

  • either \dim H_{d-1}(K ∪ \lbrace σ \rbrace) = \dim H_{d-1}(K)-1
  • or \dim H_d(K ∪ \lbrace σ \rbrace) = \dim H_d(K)+1

(cf. picture)

Proof: Note that for all $p$,

Z_p(K) ⊆ Z_p(K ∪ \lbrace σ \rbrace)\\ B_p(K) ⊆ B_p(K ∪ \lbrace σ \rbrace)

because the equations of the form $\partial c = 0$ and $∃d; c = \partial d$ remain true.

Let $d = \dim σ$

Also:

C_d(K ∪ \lbrace σ \rbrace) = C_d(K) ⊕ ⟨σ⟩\\ \dim C_d (K ∪ \lbrace σ \rbrace) = \dim C_d (K) + 1

We know that

\dim C_d (K ∪ \lbrace σ \rbrace) = \dim Z_d(K ∪ \lbrace σ \rbrace) + \dim B_{d-1}(K ∪ \lbrace σ \rbrace)

(kernel and image of the same map)

So

  • either $\dim Z_d(K ∪ \lbrace σ \rbrace) = \dim Z_d(K) + 1$
  • or $\dim B_{d-1}(K ∪ \lbrace σ \rbrace) = \dim B_{d-1}(K) + 1$

and we conclude with

\dim H_p(K ∪ \lbrace σ\rbrace) = \dim Z_d(K ∪ \lbrace σ \rbrace) - \dim B_d(K ∪ \lbrace σ \rbrace)

Proposition:

K \hookrightarrow K ∪ \lbrace σ\rbrace \qquad \dim σ = d
  • $σ$ is a creator: \dim H_d(K ∪ \lbrace σ\rbrace) = \dim H_d(K) + 1 \quad ⟺ \quad [\partial σ] = 0 \text{ in } H_{d-1}(K)

  • $σ$ is a destructor:

    \dim H_{d-1}(K ∪ \lbrace σ \rbrace) = \dim H_d(K) - 1 \quad ⟺ \quad [\partial σ] ≠ 0 \text{ in } H_{d-1}(K)

Proof:

Proof for the destructor case:

[\partial σ] ≠ 0 \text{ in } H_{d-1}(K) ⟹ \partial σ ∉ B_{d-1}(K)

but $\partial σ ∈ B_{d-1}(K ∪ \lbrace σ\rbrace)$, which implies

\dim B_{d-1} (K ∪ \lbrace σ \rbrace) ≥ \dim B_{d-1}(K) + 1

Creator case:

If $[\partial σ] = 0$ in $K$, then $σ ∈ B_{d-1}(K)$, so there exists a chain $d$ in $K$ st

\partial σ = \partial d

Consequently, $d - σ$ is a cycle in $K ∪ \lbrace σ\rbrace$, because

\partial (d-σ) = \partial d - \partial σ = 0

Additionally, if

⟨c_1, …, c_k⟩ = Z_d(K)

then the family

\lbrace c_1, …, c_k, d-σ \rbrace

is free, because none of the $c_i$’s contains $σ$ in their simplices.

\dim Z_d(K ∪ \lbrace σ\rbrace) ≥ \dim Z_d(K) + 1

Algorithm

Let

K_0 = ∅ \overset{σ_1}{\hookrightarrow} K_1 \overset{σ_2}{\hookrightarrow} K_2 ⋯ \overset{σ_n}{\hookrightarrow} K_n = \lbrace σ_1, …, σ_n\rbrace

We construct a compatible basis

⟨c_1, …, c_n⟩

for $C(K_n)$, where

  • $C(K_n) = \bigoplus_d C_d(K_n)$
  • $Z(K) = \bigoplus_d Z_d(K)$
  • $B(K) = \bigoplus_d B_d(K)$

and a partition

F \sqcup G \sqcup H \text{ with a bijective pairing } 𝒫: G \overset{≅}{⟶} H

of the indices $\lbrace 1, …, n \rbrace$ satisfying

  1. ∀ i ∈ \lbrace 1, …, n\rbrace, \quad ⟨c_1, …, c_i⟩ = C(K_i) \\ ⟺ ∀ i, \quad c_i = ε_1 σ_1 + ⋯ + ε_{i-1} σ_{i-1} + \underbrace{σ_i}_{≠ 0} \qquad \text{ (where } ε_j ∈ 𝔽 \text{)}
  2. ∀ f ∈ F, \quad \partial c_f = 0
  3. for all pairs $(g, h) ∈ 𝒫$, $g ∈ G$ and $h ∈ H$:

    \partial c_h = c_g

∀ i ∈ \lbrace 1, …, n\rbrace, \\ Z(K_i) = ⟨c_j⟩_{j ≤ i, j ∈ F \sqcup G}\\ B(K_i) = ⟨c_g⟩_{g ≤ i, g ∈ G}\\

Finally,

H(K_i) = \Big(⟨c_f⟩_{f ≤ i, f ∈ F} \, ⊕ \, ⟨c_g⟩_{g ≤ i, g ∈ G, (g, h), h > i} \, ⊕ \, ⟨c_g⟩_{g ≤ i, g ∈ G, (g, h), h ≤ i}\Big)/⟨c_g⟩_{g ≤ i, g ∈ G, (g, h), h ≤ i}\\ = ⟨[c_f]⟩_{f ≤ i, f ∈ F} \, ⊕ \, ⟨c_g⟩_{g ≤ i, g ∈ G, (g, h), h > i}

Leave a comment