This is not yet registered, and a very early version anyway. So you will need to install it by
(v1.0) pkg> add https://github.com/bbrehm/Sparips.jl (v1.0) pkg> build Sparips
The use and rationale is explained at length in the tutorial and the algorithm is linked in the readme. The gist of it is that we can compute persistent homology for Rips complexes, up to any given precision, in a better complexity class by using a sparsified approximate complex instead (formally: asymptotically exponential -> loglinear; more realistically: bad polynomial -> linear / subquadratic, depending on tradeoffs; this practically speeds up the computation enormously, but we still won’t reach the asymptotic regime for large dimensions or very tight desired precisions).
The package wraps Ulrich Bauer’s
ripser for the linear algebra;
Sparips.jl does the geometry and plotting only.
Second feature is a sensible visualization of approximate persistence diagrams (because bottleneck distance is not the right concept: an interleaving is characterized by a monotone function, not a number).
People doing manifold learning might be interested in the underlying metric tree (modified cover tree; too slow to be competitive for nearest neighbor search, but much tighter estimates when we need to do expensive operations).
Afaik there is no reasonable alternative software doing this (unsurprising, since the algorithm is new).
Feel free to ask any questions here or on github. I think I will register this in a couple of weeks, once I got some more feedback and cleaned up some internal code.
PS. Any eirene devs hanging out here? Eirene is a pure julia solver for the homology computation, as a possible replacement for the c++
ripser. But I understand neither code nor algorithm, and
ripser is at least relatively simple (and fast).