Skip to content

Persistent Homology

Engine: crates/aether-core/src/persistence.rs.

Input

A point cloud \(X = \{x_1, \ldots, x_n\}\), each point a ManifoldPoint<D>.

Vietoris-Rips Complex

\[ VR_r(X) = \{\sigma \subseteq X : \max_{u,v \in \sigma} d(u,v) \le r\} \]
  • vertices enter at radius 0;
  • an edge enters when its endpoints are within the radius;
  • a triangle enters when all three edges are within the radius;
  • a tetrahedron enters when all six edges are within the radius.

Homology dimensions 0–2 are supported, so simplexes go up to tetrahedra.

Lazy Witness Mode

Landmarks \(L\), all points as witnesses: a smaller complex for lower-load DSL runs, not exact Rips homology. Theory →

Reduction

Simplexes sorted by filtration value and dimension; boundary columns reduced over \(\mathbb{Z}_2\). Theory →

The output is a PersistenceDiagram of pairs:

pub struct PersistencePair {
    pub dimension: usize,
    pub birth: f64,
    pub death: Option<f64>,
}

Betti Query

Essential intervals have no death value and stay live after birth. Theory →

\[ \beta_k(r) = |\{(b_i,d_i) : b_i \le r < d_i,\ dimension=i=k\}| \]