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]^{ ϕ_{i+1} } \\ 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 $H_{d-1}(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