Crate cova_space

Source
Expand description

Cova Banner

§Cova Space

A comprehensive Rust library for computational topology and geometric analysis, providing rigorous implementations of topological spaces, simplicial complexes, homology computation, and topological data analysis.

Crates.io - cova-space docs.rs - cova-space License: AGPLv3

§Overview

Cova Space implements fundamental structures and algorithms from computational topology with a focus on mathematical rigor, type safety, and performance. The crate provides a comprehensive toolkit for topological computation, from basic set operations to advanced persistent homology and sheaf-theoretic constructions.

§Architecture

The library is organized around core topological concepts, building from foundational structures to sophisticated computational tools:

§Core Foundations

§set

Foundation layer providing collection abstractions and partially ordered sets (posets). Implements basic set operations, ordering relationships, and the mathematical framework for more complex topological structures.

§definitions

Fundamental trait hierarchy for mathematical spaces including topological spaces, metric spaces, normed spaces, and inner product spaces. Establishes the interface for geometric and topological operations with proper mathematical abstractions.

§Topological Complexes

§complexes

Comprehensive implementation of cell complexes including simplicial and cubical complexes. Provides generic complex containers, automatic face relation management, and efficient storage with ID-based lattice structures for computational topology applications.

Submodules:

  • simplicial: Simplex definitions and simplicial complex operations
  • cubical: Cube definitions and cubical complex operations
§graph

Flexible graph data structures supporting both directed and undirected graphs with comprehensive operations for vertices, edges, and topological relationships. Designed for integration with complex and homological computations.

§Computational Topology

§homology

Complete homology computation framework including chain complexes, boundary operators, and Betti number calculations. Implements formal chains with ring coefficients and supports homology computation over arbitrary fields for topological analysis.

§sheaf

Advanced sheaf theory implementations providing categorical constructions over topological spaces. Includes restriction morphisms, global section verification, and coboundary operators for sophisticated topological data analysis.

§Topological Data Analysis

§filtration

Filtration frameworks for persistent homology including Vietoris-Rips constructions. Supports both serial and parallel computation of filtered complexes for analyzing multi-scale topological features in data.

§cloud

Point cloud analysis tools designed for topological data analysis applications. Provides the foundation for building filtered complexes from geometric data sets.

§lattice

Sophisticated lattice structures for efficient representation of partial orders and face relationships in complexes. Implements join/meet operations and provides the computational backbone for complex operations.

§Design Principles

  • Mathematical Rigor: All implementations follow strict topological definitions and maintain structural invariants
  • Type Safety: Leverages Rust’s type system to encode topological properties and prevent invalid operations
  • Computational Efficiency: Optimized data structures and algorithms for large-scale topological computations
  • Composability: Modular design allows complex topological constructions from fundamental building blocks

§Usage

Add to your Cargo.toml:

[dependencies]
cova-space = "*"

The crate provides a comprehensive prelude for convenient importing:

use cova_space::prelude::*;

§Feature Highlights

  • Generic Complex Framework: Unified interface for simplicial, cubical, and general cell complexes
  • Homology Computation: Full chain complex machinery with boundary operators and Betti number calculation
  • Persistent Homology: Filtration frameworks for multi-scale topological analysis
  • Sheaf Theory: Advanced categorical constructions for topological data analysis
  • High Performance: Efficient lattice-based storage and optional parallel computation support

§Optional Features

  • parallel: Enables parallel computation for filtrations and large-scale operations using Rayon

§Mathematical Scope

The library covers essential areas of computational topology:

Set Theory & Posets
    ├── Topological Spaces (metric, normed, inner product)
    ├── Cell Complexes (simplicial, cubical, general)
    ├── Homological Algebra (chains, boundaries, homology)
    ├── Sheaf Theory (categorical constructions)
    └── Topological Data Analysis (filtrations, persistence)

§Documentation

Complete API documentation is available on docs.rs.

§Contributing

Contributions are welcome! Please ensure mathematical correctness and include appropriate documentation for topological algorithms and data structures.

§License

This project is licensed under the AGPLv3 License - see the LICENSE file for details.

Modules§

cloud
Cloud - Vector Set in N-dimensional Space
complexes
Complexes Module
definitions
Core Definitions for Mathematical Spaces
filtration
Defines traits for building filtered topological spaces.
graph
Graph implementation with support for both directed and undirected graphs.
homology
Homology Module
lattice
Lattice Module
prelude
The prelude for the space crate.
set
Set Module
sheaf
Sheaf Module