Skip to content

category · StreetNerveSkeleton

9 accepted declarations. Python and Rust forms, contracts, evidence, failure boundaries, and checked usages are kept together below.

Worked example

The complete checked program Compose cells, compute polygraphic homology, and inspect the Street model uses this API directly.

# SPDX-License-Identifier: MIT
# Copyright (c) 2026 Benjamin Antieau and Deven Manam
"""Compose cells, compute polygraphic homology, and inspect the Street model."""

from noether.category import AtomId, SteinerCategory


def main() -> None:
    triangle = SteinerCategory.oriental(2)
    first = triangle.atom(AtomId(1, 0))
    second = triangle.atom(AtomId(1, 2))
    long_path = first.compose_at(second, 0)

    assert long_path.top_atoms == [0, 2]
    assert triangle.exact_cell_counts() == [3, 4, 1]
    assert triangle.polygraphic_homology_invariants()[0].free_rank == 1

    categorical = triangle.categorical_homology()
    nerve = categorical.skeleton(2)
    assert nerve.verify()
    assert categorical.component_poset_slice(2).poset.order == 6
    print(
        "2-oriental:",
        f"cells={triangle.exact_cell_counts()}",
        f"Street simplices={nerve.simplex_counts}",
        "stable hPos_0 weight 2 has 6 elements",
    )


if __name__ == "__main__":
    main()

Run it with .venv/bin/python examples/28_steiner_categories.py.

category.StreetNerveSkeleton

Certified finite Street-nerve skeleton.

class StreetNerveSkeleton

noether::category::StreetNerveSkeleton · Direct Rust declaration

pub struct StreetNerveSkeleton { /* private fields */ }
Contract Value
Guarantee checked deterministic result
Determinism deterministic
Availability default CPU build
Domain implementation crates noether
GIL attached / bounded

category.StreetNerveSkeleton.degeneracies

Compute degeneracies for this StreetNerveSkeleton.

Detailed contract

Degeneracy indices of one simplex, ordered by the repeated vertex.

(self, degree: int, simplex: int) -> list[int] | None

noether::category::StreetNerveSkeleton::degeneracies · Direct Rust declaration

pub fn degeneracies(&self, degree: usize, simplex: usize) -> Option<&[usize]>
Contract Value
Guarantee checked deterministic result
Determinism deterministic
Availability default CPU build
Domain implementation crates noether
GIL attached / bounded

category.StreetNerveSkeleton.faces

Compute faces for this StreetNerveSkeleton.

Detailed contract

Face indices of one simplex, ordered by the omitted vertex.

(self, degree: int, simplex: int) -> list[int] | None

noether::category::StreetNerveSkeleton::faces · Direct Rust declaration

pub fn faces(&self, degree: usize, simplex: usize) -> Option<&[usize]>
Contract Value
Guarantee checked deterministic result
Determinism deterministic
Availability default CPU build
Domain implementation crates noether
GIL attached / bounded

Executable usage: validation/unit/topology/test_simplicial_set_facade.py:210 · validation/unit/topology/test_simplicial_set_facade.py:52 · validation/parity/polyhedral/test_convex_hull_parity.py:224 · validation/parity/polyhedral/test_convex_hull_parity.py:226 · validation/parity/polyhedral/test_convex_hull_parity.py:235 · validation/bench/sage_homology.py:68

category.StreetNerveSkeleton.max_simplicial_degree

Return the max simplicial degree recorded by this StreetNerveSkeleton.

Detailed contract

Largest materialized simplicial degree.

(self) -> int

noether::category::StreetNerveSkeleton::max_simplicial_degree · Direct Rust declaration

pub fn max_simplicial_degree(&self) -> usize
Contract Value
Guarantee checked deterministic result
Determinism deterministic
Availability default CPU build
Domain implementation crates noether
GIL attached / bounded

category.StreetNerveSkeleton.simplex_counts

Return the simplex counts recorded by this StreetNerveSkeleton.

Detailed contract

Numbers of simplices by degree.

(self) -> list[int]

noether::category::StreetNerveSkeleton::simplex_counts · Direct Rust declaration

pub fn simplex_counts(&self) -> Vec<usize>
Contract Value
Guarantee checked deterministic result
Determinism deterministic
Availability default CPU build
Domain implementation crates noether
GIL attached / bounded

Executable usage: examples/28_steiner_categories.py:25

category.StreetNerveSkeleton.simplices

Compute simplices for this StreetNerveSkeleton.

Detailed contract

Street simplices in one materialized degree.

(self, degree: int) -> list[StreetSimplex] | None

noether::category::StreetNerveSkeleton::simplices · Direct Rust declaration

pub fn simplices(&self, degree: usize) -> Option<&[StreetSimplex]>
Contract Value
Guarantee checked deterministic result
Determinism deterministic
Availability default CPU build
Domain implementation crates noether
GIL attached / bounded

Executable usage: examples/28_steiner_categories.py:25 · validation/unit/geometry/test_acceptance_workload.py:42 · validation/unit/geometry/test_geometry_facade.py:60 · validation/unit/geometry/test_geometry_facade.py:64 · validation/unit/geometry/test_geometry_facade.py:82 · validation/unit/topology/test_persistence_facade.py:60

category.StreetNerveSkeleton.source

Return the source recorded by this StreetNerveSkeleton.

Detailed contract

Source category.

(self) -> SteinerCategory

noether::category::StreetNerveSkeleton::source · Direct Rust declaration

pub fn source(&self) -> &SteinerCategory
Contract Value
Guarantee checked deterministic result
Determinism deterministic
Availability default CPU build
Domain implementation crates noether
GIL attached / bounded

Executable usage: examples/09_finite_field_isomorphisms.py:11 · examples/09_finite_field_isomorphisms.py:13 · examples/09_finite_field_isomorphisms.py:9 · examples/30_modules_and_resolutions.py:34 · examples/30_modules_and_resolutions.py:37 · validation/unit/category/test_acceptance_workload.py:25

category.StreetNerveSkeleton.thin_simplex_counts

Return the thin simplex counts recorded by this StreetNerveSkeleton.

Detailed contract

Numbers of thin simplices by degree.

(self) -> list[int]

noether::category::StreetNerveSkeleton::thin_simplex_counts · Direct Rust declaration

pub fn thin_simplex_counts(&self) -> Vec<usize>
Contract Value
Guarantee checked deterministic result
Determinism deterministic
Availability default CPU build
Domain implementation crates noether
GIL attached / bounded

category.StreetNerveSkeleton.verify

Replay and verify the mathematical evidence carried by this StreetNerveSkeleton.

Detailed contract

Verify the elementary simplicial identities within the stored range.

(self) -> bool

noether::category::StreetNerveSkeleton::verify · Direct Rust declaration

pub fn verify(&self) -> bool
Contract Value
Guarantee checked deterministic result
Determinism deterministic
Availability default CPU build
Domain implementation crates noether
GIL attached / bounded

Executable usage: examples/01_bezout_certificates.py:10 · examples/01_bezout_certificates.py:3 · examples/03_exact_linear_systems.py:13 · examples/03_exact_linear_systems.py:3 · examples/04_smith_normal_form.py:12 · examples/06_shortest_lattice_vectors.py:12