Skip to main content

holos_tda/
program.rs

1//! Compositional, change-sensitive H0 and H1 persistence programs.
2//!
3//! A program splits positive-dimensional persistence at articulation
4//! separators. It compiles each cyclic block into a reduction region and
5//! computes H0 on the complete active graph. An update rebuilds only cyclic
6//! blocks touched by changed weights. A topology or threshold-membership
7//! change rebuilds the complete program.
8
9mod composition;
10mod continuation;
11mod diagram;
12mod model;
13mod topology;
14mod update;
15
16#[cfg(test)]
17mod tests;
18
19pub use model::{
20    BasisTransport, ClassContinuation, ContinuationKind, CorrespondenceMode, PersistenceProgram,
21    ProgramAtomInfo, ProgramBranch, ProgramCheckpoint, ProgramDiagramState, ProgramDiagramUpdate,
22    ProgramDiagramUpdateMode, ProgramEvaluation, ProgramEvent, ProgramEventKind, ProgramSummary,
23    ProgramUpdate, ProgramUpdateMode, ProgramWork,
24};
25
26pub(crate) use composition::{atom_infos, compose_result, local_matrix};
27pub(crate) use continuation::class_continuation;
28pub(crate) use model::ProgramAtomState;