/teia

Primary LanguageRust

Teia

A persistent homology library and its command line interface.

This crate provides

  • Simplicial complex
  • Column reduction algorithm
  • Persistence pairing algorithm

How to build

First, if you not have Rust environment, you get it from https://rustup.rs/ and install it. Then you clone this repository with git clone https://github.com/ShotaroTsuji/teia and build it with cargo build --release.

Command line interface

The CLI program has two subcommands: homology and persistence. The program can be launched with cargo run -- homology <INPUT> in the repository directory.

Subcommands

  • homology : computes the generators of the homology groups of the given complex.
  • persistence : computes the persistent homology groups of the given complex.

Input file format

  • Simplicial complex (text file) : A simplex is represented as numbers separated with whitespace. Each simplex is written in each line.

There is the example files examples/torus.txt and examples/cube.txt.

Future work

  • Construction of the filtration from given filtration values.
  • Persistent cohomology algorithm.
  • Lower-star complex.
  • Vietoris-Rips complex.

License

Licensed under either of

at your option.

Contribution

Unless you explicitly state otherwise, any contribution intentionally submitted for inclusion in the work by you, as defined in the Apache-2.0 license, shall be dual licensed as above, without any additional terms or conditions.