TDA4j computes persistent homology and related invariants: barcodes with representatives (cocycles or cycles), from point clouds, distance matrices, images, relations and spaces you build yourself, over any prime field or the reals. This guide assumes you know what a filtered complex and a persistence barcode are; it does not assume you know Scala. For how the library is built, see the Developer's Guide; for worked examples on real-looking data, the tutorials.

Every Scala file that uses TDA4j starts with two lines:

import scala.language.experimental.modularity
import org.appliedtopology.tda4j.*

The first accepts the experimental Scala features the library is built with (its typeclasses use them, so Scala asks every file that uses it to opt in); the second brings in the whole library. Simplicial sets and group classifying spaces are an add-on with one more import, import org.appliedtopology.tda4j.sset.*.

Contents

In this article