Expand description
Vietoris-Rips persistent homology and finite H1 degree-Rips modules over a prime field.
The scalar engine uses implicit persistent cohomology. Its tie-breaking and output conventions match Ripser. The degree-Rips path constructs every node and cover map on a declared finite grid.
Re-exports§
pub use atlas::AtlasEvaluation;pub use atlas::AtlasUpdate;pub use atlas::ClassSensitivity;pub use atlas::CoordinateDerivative;pub use atlas::EdgeKey;pub use atlas::EndpointGradient;pub use atlas::EvaluatedClassSpace;pub use atlas::LineageId;pub use atlas::PersistenceAtlas;pub use atlas::PointAtlasUpdate;pub use atlas::PointClassSensitivity;pub use atlas::PointEndpointGradient;pub use atlas::PointPersistenceAtlas;pub use atlas::TopologyEvent;pub use atlas::TopologyEventKind;pub use atlas::UpdateMode;pub use atlas_wire::AtlasArtifact;pub use atlas_wire::AtlasArtifactError;pub use atlas_wire::AtlasArtifactRepair;pub use atlas_wire::AtlasDecodeLimits;pub use bifiltration::BifiltrationLimits;pub use bifiltration::BifiltrationSlice;pub use bifiltration::Bigrade;pub use bifiltration::BirthAntichain;pub use bifiltration::DegreeRipsBifiltration;pub use bifiltration::DegreeRipsParams;pub use bifiltration::MulticriticalBifiltration;pub use bifiltration::MulticriticalSimplex;pub use bipersistence::BipersistenceLimits;pub use bipersistence::BipersistenceMap;pub use bipersistence::BipersistenceMapColumn;pub use bipersistence::BipersistenceModule;pub use bipersistence::BipersistenceNode;pub use bipersistence::BipersistenceRectangle;pub use bipersistence::BipersistenceRegion;pub use bipersistence::BipersistenceTerm;pub use bipersistence::CircularCoordinateFamily;pub use bipersistence::CircularCoordinateFamilyEntry;pub use bipersistence::CircularCoordinateFamilyStatus;pub use bipersistence::ClassExtension;pub use bipersistence::ClassExtensionKind;pub use bipersistence::ClassExtensionRegion;pub use bipersistence::CohomologyClassAtlas;pub use bipersistence_artifact::BipersistenceArtifact;pub use bipersistence_artifact::BipersistenceArtifactLimits;pub use bipersistence_artifact::BipersistenceArtifactSummary;pub use bipersistence_artifact::BipersistenceRectangleClaim;pub use bipersistence_artifact::BipersistenceRegionClaim;pub use certificate::CertificateError;pub use certificate::CertificateLimits;pub use certificate::CertificateTerm;pub use certificate::CertifiedReductionRegion;pub use certificate::CertifiedRegionEvaluation;pub use certificate::ChangeColumn;pub use certificate::FiltrationSimplex;pub use certificate::ReductionCertificate;pub use certificate::ReductionGuard;pub use certificate::ReductionGuardKind;pub use certificate::ReductionRepair;pub use certificate::ReductionRepairMode;pub use certificate::ReductionRepairWork;pub use certificate::RegionViolation;pub use certificate::RegionViolationKind;pub use circular::CircularClassTerm;pub use circular::CircularCoordinate;pub use circular::CircularCoordinateContinuation;pub use circular::CircularCoordinateParams;pub use circular::IntegralCocycleTerm;pub use circular::circular_coordinate;pub use circular::circular_coordinate_for_class;pub use circular::circular_coordinate_with_integral_lift;pub use circular::cocycle_from_ripser_terms;pub use circular::continue_circular_coordinate;pub use circular_artifact::CircularArtifactError;pub use circular_artifact::CircularArtifactSummary;pub use circular_artifact::CircularCoordinateArtifact;pub use classes::BasisClassId;pub use classes::Cocycle;pub use classes::CocycleTerm;pub use classes::CriticalPair;pub use classes::CriticalSimplex;pub use classes::ExplainedDiagram;pub use classes::IntervalGroupId;pub use classes::PersistentClass;pub use classes::PersistentClassProvenance;pub use classes::PersistentClassSpace;pub use classes::lift_h1_classes;pub use classes::rips_persistence_with_classes_sparse;pub use cohomology::CochainTerm;pub use cohomology::CohomologyClass;pub use cohomology::CohomologyClassId;pub use cohomology::CohomologyContinuation;pub use cohomology::CohomologyContinuationKind;pub use cohomology::CohomologyLimits;pub use cohomology::CohomologyMapColumn;pub use cohomology::CohomologyMapTerm;pub use cohomology::CohomologyRelation;pub use cohomology::CohomologyRelationTerm;pub use cohomology::CohomologyRelationVector;pub use cohomology::CohomologyRestriction;pub use cohomology::CohomologySpace;pub use cohomology::CohomologySpaceId;pub use cohomology::CohomologySubspace;pub use cohomology::CohomologySubspaceGenerator;pub use cohomology::CohomologySubspaceTerm;pub use cohomology::cohomology_continuation;pub use cohomology::cohomology_relation;pub use cohomology::cohomology_restriction;pub use cohomology::cohomology_space;pub use cohomology_intervention::CohomologyInterventionArtifact;pub use cohomology_intervention::CohomologyInterventionCandidate;pub use cohomology_intervention::CohomologyInterventionLimits;pub use cohomology_intervention::CohomologyInterventionScenario;pub use cohomology_intervention::CohomologyInterventionStatus;pub use correspondence::ClassCorrespondence;pub use correspondence::CorrespondenceTerm;pub use correspondence::CorrespondenceVector;pub use correspondence::class_correspondences;pub use coverage::CoverageEvaluation;pub use coverage::CoverageFence;pub use coverage::CoverageLimits;pub use coverage::CoverageTriangleTerm;pub use coverage::PlanarCoverageModel;pub use coverage::evaluate_planar_coverage;pub use coverage_frontier::CoverageComponentFrontier;pub use coverage_frontier::CoverageComposition;pub use coverage_frontier::CoverageCompositionStatus;pub use coverage_frontier::CoverageFrontierEntry;pub use coverage_frontier::compose_coverage_frontiers;pub use coverage_geometry::CoverageGeometry;pub use coverage_geometry::CoverageGeometryLimits;pub use coverage_geometry::GeometryBoundCoverageArtifact;pub use coverage_geometry::GeometryBoundCoverageDecodeLimits;pub use coverage_geometry::PlanarPoint;pub use coverage_synthesis::CoverageAction;pub use coverage_synthesis::CoverageComponent;pub use coverage_synthesis::CoverageCounterexample;pub use coverage_synthesis::CoveragePlanEvaluation;pub use coverage_synthesis::CoverageSource;pub use coverage_synthesis::CoverageSpecification;pub use coverage_synthesis::CoverageState;pub use coverage_synthesis::CoverageSynthesisArtifact;pub use coverage_synthesis::CoverageSynthesisLimits;pub use coverage_synthesis::CoverageSynthesisStatus;pub use coverage_synthesis::evaluate_coverage_plan;pub use distances::DistanceMatrix;pub use distances::PointCloudGraph;pub use distances::PointCloudParams;pub use distances::PointCloudStats;pub use distances::PointCloudStrategy;pub use distances::SparseDistanceMatrix;pub use distributed::ArtifactId;pub use distributed::DistributedInterfaceCommit;pub use distributed::DistributedInterfaceError;pub use distributed::DistributedInterfaceManifest;pub use distributed::DistributedInterfaceWork;pub use distributed::DurableInterfaceStore;pub use explicit_certificate::ExplicitReductionCertificate;pub use filtration::ComplexLimits;pub use filtration::CoordinateProjection;pub use filtration::FilteredSimplex;pub use filtration::FilteredSimplicialComplex;pub use filtration::FiltrationError;pub use filtration::FiltrationGrade;pub use filtration::FlagComplexParams;pub use filtration::LinearFiltrationGrade;pub use filtration::ProductGrade;pub use filtration::ScalarGrade;pub use filtration::ScalarProjection;pub use graded_certificate::GradedDimensionWork;pub use graded_certificate::GradedReductionCertificate;pub use graded_certificate::GradedReductionRepair;pub use graded_certificate::GradedReductionRepairWork;pub use index::DiagramDelta;pub use index::IndexBranch;pub use index::IndexDiff;pub use index::IndexEdit;pub use index::IndexEvent;pub use index::IndexEventKind;pub use index::IndexParams;pub use index::IndexSummary;pub use index::IndexTransition;pub use index::IndexUpdateMode;pub use index::IndexWork;pub use index::InterfaceMode;pub use index::InterfacePolicy;pub use index::InterfaceSummary;pub use index::PersistenceIndex;pub use index::TopologyPatch;pub use index_proof::IndexDeltaProof;pub use index_proof::IndexProofError;pub use index_proof::IndexProofSummary;pub use index_proof::IndexSnapshotProof;pub use index_stream::IndexStream;pub use index_stream::IndexStreamProof;pub use index_stream::IndexStreamStep;pub use intervention::EdgeWeightEdit;pub use intervention::H1Intervention;pub use intervention::InterventionArtifact;pub use intervention::InterventionBudget;pub use intervention::InterventionDecodeLimits;pub use intervention::InterventionError;pub use intervention::InterventionStatus;pub use intervention::VerifiedIntervention;pub use kinetic::KineticCohomologyEvent;pub use kinetic::KineticEdge;pub use kinetic::KineticEdgeKey;pub use kinetic::KineticEvent;pub use kinetic::KineticEventKind;pub use kinetic::KineticFiltration;pub use kinetic::KineticGraphState;pub use kinetic::KineticGraphStateKind;pub use kinetic::KineticLimits;pub use kinetic::KineticSchedule;pub use kinetic::KineticZigzag;pub use kinetic::KineticZigzagArrow;pub use kinetic::KineticZigzagNode;pub use kinetic::KineticZigzagNodeKind;pub use kinetic_zigzag_artifact::KineticZigzagArtifact;pub use kinetic_zigzag_artifact::KineticZigzagArtifactLimits;pub use kinetic_zigzag_artifact::KineticZigzagArtifactSummary;pub use kinetic_zigzag_artifact::KineticZigzagIntervalClaim;pub use persistent_class_artifact::PersistenceCycleTerm;pub use persistent_class_artifact::PersistenceTriangleTerm;pub use persistent_class_artifact::PersistentClassArtifact;pub use persistent_coordinate_artifact::PersistentCoordinateArtifact;pub use persistent_coordinate_artifact::PersistentCoordinateArtifactError;pub use persistent_coordinate_artifact::PersistentCoordinateArtifactSummary;pub use program::BasisTransport;pub use program::ClassContinuation;pub use program::ContinuationKind;pub use program::CorrespondenceMode;pub use program::PersistenceProgram;pub use program::ProgramAtomInfo;pub use program::ProgramBranch;pub use program::ProgramCheckpoint;pub use program::ProgramDiagramState;pub use program::ProgramDiagramUpdate;pub use program::ProgramDiagramUpdateMode;pub use program::ProgramEvaluation;pub use program::ProgramEvent;pub use program::ProgramEventKind;pub use program::ProgramSummary;pub use program::ProgramUpdate;pub use program::ProgramUpdateMode;pub use program::ProgramWork;pub use program_trace::ProgramTraceArtifact;pub use program_trace::ProgramTraceDecodeLimits;pub use program_trace::ProgramTraceError;pub use program_trace::ProgramTraceStep;pub use program_trace::VerifiedProgramTrace;pub use program_trace::VerifiedProgramTraceStep;pub use program_wire::ProgramArtifact;pub use program_wire::ProgramArtifactError;pub use program_wire::ProgramAtomArtifact;pub use program_wire::ProgramDecodeLimits;pub use proof::ProofArtifact;pub use proof::ProofArtifactError;pub use proof::ProofArtifactSummary;pub use relative_interface::InterfaceCancellation;pub use relative_interface::InterfaceCell;pub use relative_interface::InterfaceChainTerm;pub use relative_interface::RelativeInterfaceCertificate;pub use relative_interface::RelativeInterfaceWork;pub use synthesis::SynthesisAction;pub use synthesis::SynthesisArtifact;pub use synthesis::SynthesisComponent;pub use synthesis::SynthesisCoordinate;pub use synthesis::SynthesisLimits;pub use synthesis::SynthesisSource;pub use synthesis::SynthesisState;pub use synthesis::SynthesisStatus;pub use synthesis::TopologicalSpecification;pub use trajectory::TrajectoryArtifact;pub use trajectory::TrajectoryDecodeLimits;pub use trajectory::TrajectoryError;pub use trajectory::TrajectoryStep;pub use trajectory::VerifiedTrajectory;pub use trajectory::VerifiedTrajectoryStep;pub use zigzag::ZigzagBarcode;pub use zigzag::ZigzagDirection;pub use zigzag::ZigzagInterval;pub use zigzag::ZigzagIntervalId;pub use zigzag::ZigzagLimits;pub use zigzag::ZigzagMap;pub use zigzag::ZigzagModule;pub use zigzag::ZigzagModuleId;pub use zigzag::ZigzagTerm;
Modules§
- atlas
- Certified local models of H1 persistence under changing inputs. Certified local models of H1 persistence under changing edge weights.
- atlas_
wire - Wire format for persistence atlases. Wire format for persistence atlases.
- bifiltration
- Finite multicritical bifiltrations and exact degree-Rips construction. Finite multicritical bifiltrations and exact degree-Rips construction.
- bipersistence
- Exact finite H1 modules over degree-Rips parameter grids. Exact finite H1 modules over a degree-Rips parameter grid.
- bipersistence_
artifact - Wire format for checked finite degree-Rips bipersistence modules. Wire format for checked finite degree-Rips bipersistence modules.
- certificate
- Algebraic reduction certificates. Algebraic certificates for exact H0 and H1 persistence.
- circular
- Checked circular coordinates and conservative continuation. Checked circular coordinates from canonical fixed-scale H1 classes.
- circular_
artifact - Wire format for checked circular coordinates and continuation. Wire format for checked circular coordinates and continuation.
- classes
- Stable H1 classes and cocycle validation. Stable H1 classes and cocycles on the caller’s graph.
- cli
- The
holosCLI as a library function (shared with the Python bindings). Theholoscommand-line interface, callable as a library function. - cohomology
- Canonical cohomology and exact relations in any bounded dimension. Canonical cohomology spaces and exact relations in any bounded dimension.
- cohomology_
intervention - Weighted fixed-scale interventions across declared graph scenarios. Weighted fixed-scale class interventions across declared scenarios.
- collapse
- Filtered edge collapse for flag filtrations.
- correspondence
- Exact class-space correspondences across persistence updates. Exact class-space correspondences across persistence updates.
- coverage
- Relative topological coverage criteria for fenced planar sensor networks. Exact relative coverage witnesses for fenced planar Rips complexes.
- coverage_
frontier - Exact component frontiers for failure-tolerant coverage synthesis. Exact component frontiers for failure-tolerant coverage synthesis.
- coverage_
geometry - Exact planar geometry bindings for finite coverage specifications. Exact planar geometry bindings for finite coverage specifications.
- coverage_
synthesis - Failure-tolerant finite and kinetic relative coverage specifications. Failure-tolerant specifications for exact relative coverage.
- distances
- Distance-matrix construction and storage. Distance-matrix storage and exact point-cloud graph construction.
- distributed
- Durable content-addressed execution for relative interfaces. Durable content-addressed execution for relative interfaces.
- explicit_
certificate - Proof-carrying persistence for explicit scalar filtered complexes. Proof-carrying persistence for explicit scalar filtered complexes.
- factorization
- Vertex-biconnected factorization of sparse flag filtrations. Vertex-biconnected factorization of sparse flag filtrations.
- filtration
- Explicit filtered simplicial complexes and filtration grades. Explicit filtered simplicial complexes and filtration grades.
- graded_
certificate - Dimension-generic algebraic certificates for separator indexes. Dimension-generic algebraic certificates for separator interfaces.
- index
- Versioned exact persistence over checked separator interfaces. Versioned exact persistence over checked separator interfaces.
- index_
proof - Cold snapshots and warm deltas for persistence indexes. Cold snapshots and warm deltas for versioned persistence indexes.
- index_
stream - Stateful exact index streams with proof output. Stateful index streams with proof output.
- intervention
- Certified finite H1 lifetime interventions. Finite H1 lifetime interventions.
- io
- File formats and diagram output. Readers for point clouds and for dense or sparse distance matrices. Writers for the diagram output formats.
- kinetic
- Exact events for affine edge-weight trajectories. Exact event schedules for affine edge-weight trajectories.
- kinetic_
zigzag_ artifact - Certificates for kinetic cohomology zigzags. Certificates for exact kinetic cohomology zigzags.
- oracle
- Brute-force reference implementation used by the test gates. Independent correctness oracle: explicit simplex enumeration and textbook boundary-matrix reduction over a prime field. Deliberately naive. It shares nothing with the solver path except the input and output types, down to the modular inverses (Fermat exponentiation here, a Euclid-style table there).
- persistent_
class_ artifact - Source-bound persistent H1 class and cycle artifacts. Wire format and producer for one source-bound persistent H1 class.
- persistent_
coordinate_ artifact - Harmonic coordinates bound to persistent H1 class artifacts. Wire format for one selected persistent circular coordinate.
- program
- Compositional H0 and H1 persistence programs. Compositional, change-sensitive H0 and H1 persistence programs.
- program_
trace - Update traces for persistence programs. Update traces for persistence programs.
- program_
wire - Wire format for persistence programs. Wire format for persistence programs.
- proof
- Unified proof DAGs for checked persistence trajectories. Unified proof DAGs for checked persistence trajectories.
- relative_
interface - Exact filtered chain cores relative to separator subcomplexes. Exact filtered chain cores relative to separator subcomplexes.
- synthesis
- Proof-carrying synthesis for finite temporal topology specifications. Proof-carrying synthesis for finite temporal cohomology specifications.
- trajectory
- Trajectories across atlas regions. Persistence trajectories across atlas regions.
- zigzag
- Exact interval decomposition of finite zigzag modules. Exact interval decomposition of finite zigzag vector-space modules.
Structs§
- Bar
- One persistence interval.
deathisf64::INFINITYfor essential classes. - Diagram
- A persistence diagram: the multiset of bars across dimensions.
- Rips
Params - Parameters for
crate::rips_persistence.
Enums§
- Collapse
Schedule - The collapse the pipeline runs with
RipsParams::collapse_edgesset. - Dense
Storage - Which storage form the dense engine reduces from.
- Engine
- Which engine reduces a dense input.
- Error
- Errors from construction, validation, and IO.
- Graph
Factorization - Structural routing for positive-dimensional sparse persistence.
Constants§
- BUILD_
PROFILE - Cargo build profile recorded at build time.
- GIT_
HASH - Short git commit hash recorded at build time (“unknown” outside a repo).
- VERSION
- Crate version.
Functions§
- rips_
persistence - Compute the Rips persistence diagram of a distance matrix.
- rips_
persistence_ sparse - Compute the Rips persistence diagram of a sparse distance matrix.
- rips_
persistence_ with_ classes - Compute a diagram and stable H1 classes from a dense distance matrix.
Type Aliases§
- Result
- Crate-wide result alias.