Skip to content

topology · SimplicialSet

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

Worked example

The complete checked program Canonically label a cycle and compute its automorphism group uses this API directly.

# SPDX-License-Identifier: MIT
# Copyright (c) 2026 Benjamin Antieau and Deven Manam
"""Canonically label a cycle and compute its automorphism group."""

from noether.combin import Graph


def main() -> None:
    cycle = Graph.from_unweighted(
        5,
        [(0, 1), (1, 2), (2, 3), (3, 4), (4, 0)],
        directed=False,
    )
    canonical = cycle.canonical_label()
    assert canonical.verify(cycle)
    assert canonical.automorphism_group.order == 10
    assert cycle.laplacian()[0] == [2, -1, 0, 0, -1]
    print(f"Aut(C5) has order {canonical.automorphism_group.order}")


if __name__ == "__main__":
    main()

Run it with .venv/bin/python examples/21_graph_symmetry.py.

topology.SimplicialSet

A finite simplicial set given by the faces of its non-degenerate simplices.

SimplicialSet(faces: list[list[list[_SimplicialFaceData]]])

noether::topology::SimplicialSet · Direct Rust declaration

pub struct SimplicialSet { /* private fields */ }
Contract Value
Guarantee checked deterministic result
Determinism deterministic
Availability default CPU build
Domain implementation crates noether, geom-core, m4rst, m4rste
GIL attached / bounded
Semantic ID noether/topology/SimplicialSet@1

Executable usage: validation/unit/infra/test_discovery.py:124 · validation/unit/infra/test_discovery.py:125 · validation/unit/infra/test_discovery.py:126 · validation/unit/infra/test_discovery.py:142 · validation/unit/infra/test_discovery.py:143 · validation/unit/infra/test_discovery.py:144

topology.SimplicialSet.__len__

Return len(self).

(self) -> int

noether::topology::SimplicialSet · Python projection

Python projection convenience over this Rust mathematical type
Contract Value
Guarantee checked deterministic result
Determinism deterministic
Availability default CPU build
Domain implementation crates noether, geom-core, m4rst, m4rste
GIL attached / bounded
Semantic ID noether/topology/SimplicialSet@1

Executable usage: validation/unit/topology/test_filtration_builders.py:109 · validation/unit/topology/test_filtration_builders.py:14

topology.SimplicialSet.anodyne_zigzag

Replay and retain a checked zigzag of horn attachments and collapses.

Detailed contract

Replay and retain a checked zigzag of horn attachments and collapses beginning at this simplicial set.

(self, moves: list[SimplicialSetAnodyneMove]) -> SimplicialSetAnodyneZigzag

noether::topology::SimplicialSet::anodyne_zigzag · Direct Rust declaration

pub fn anodyne_zigzag( &self, moves: Vec<SimplicialSetAnodyneMove>, ) -> Result<SimplicialSetAnodyneZigzag, TopologyError>
Contract Value
Guarantee checked deterministic result
Determinism deterministic
Availability default CPU build
Domain implementation crates noether, geom-core, m4rst, m4rste
GIL attached / bounded
Semantic ID noether/topology/SimplicialSet@1

Executable usage: validation/unit/topology/test_simplicial_set_facade.py:112

topology.SimplicialSet.automorphism_group

Exact automorphism group on dimension-major non-degenerate cells.

Detailed contract

Exact automorphism group on all non-degenerate simplices. The permutation domain is the dimension-major order: first all vertices, then all non-degenerate edges, and so on. Every returned permutation preserves each dimensional block.

(self) -> PermutationGroup

noether::topology::SimplicialSet::automorphism_group · Direct Rust declaration

pub fn automorphism_group(&self) -> Result<PermutationGroup, TopologyError>
Contract Value
Guarantee checked deterministic result
Determinism deterministic
Availability default CPU build
Domain implementation crates noether, geom-core, m4rst, m4rste
GIL released
Semantic ID noether/topology/SimplicialSet@1

Executable usage: examples/21_graph_symmetry.py:16 · examples/21_graph_symmetry.py:18 · examples/29_integral_line_configurations.py:10 · validation/unit/category/test_category.py:55 · validation/unit/combin/test_acceptance_workload.py:31 · validation/unit/combin/test_graph_facade.py:91

topology.SimplicialSet.betti_number

Return one Betti number over Q by default.

Detailed contract

Return one Betti number over an exact field. This ranks only the two adjacent normalized boundary matrices. Use Self::homology when explicit cycle and quotient bases are needed.

(self, degree: int) -> int
(self, degree: int, *, ring: _FieldContext) -> int

noether::topology::SimplicialSet::betti_number · Direct Rust declaration

pub fn betti_number<R: Field>( &self, field: R, degree: usize, ) -> Result<usize, TopologyError>
Contract Value
Guarantee checked deterministic result
Determinism deterministic
Availability default CPU build
Domain implementation crates noether, geom-core, m4rst, m4rste
GIL released
Semantic ID noether/topology/SimplicialSet@1

Executable usage: validation/unit/homalg/test_chain_complex.py:105 · validation/unit/homalg/test_chain_complex.py:106 · validation/unit/homalg/test_chain_complex.py:141 · validation/unit/homalg/test_chain_complex.py:32 · validation/unit/homalg/test_chain_complex.py:33 · validation/unit/homalg/test_chain_complex.py:34

topology.SimplicialSet.bockstein_reduced_power

Odd-primary beta-reduced-power operation on a checked normalized cocycle.

Detailed contract

The odd-primary operation beta P^power of a checked normalized cocycle over a prime field.

(self, power: int, degree: int, cocycle: Vector[FiniteField]) -> Vector[FiniteField]

noether::topology::SimplicialSet::bockstein_reduced_power · Direct Rust declaration

pub fn bockstein_reduced_power( &self, power: usize, degree: usize, cocycle: &Vector<FiniteField>, ) -> Result<Vector<FiniteField>, TopologyError>
Contract Value
Guarantee checked deterministic result
Determinism deterministic
Availability default CPU build
Domain implementation crates noether, geom-core, m4rst, m4rste
GIL released
Semantic ID noether/topology/SimplicialSet@1

Executable usage: validation/unit/infra/test_discovery.py:141 · validation/unit/infra/test_discovery.py:149 · validation/unit/topology/test_simplicial_set_facade.py:186 · validation/unit/topology/test_simplicial_set_facade.py:190 · validation/unit/topology/test_simplicial_set_facade.py:191

topology.SimplicialSet.canonical_form

Canonically number the non-degenerate simplices in every dimension.

Detailed contract

Canonically number the non-degenerate simplices in every dimension. The exact encoding is a directed colored incidence graph. Its nodes record non-degenerate simplices, individual face occurrences, and the ordered entries of degeneracy surjections. Consequently graph isomorphisms are precisely simplicial-set isomorphisms, including all face positions and degeneracy data.

(self) -> SimplicialSet

noether::topology::SimplicialSet::canonical_form · Direct Rust declaration

pub fn canonical_form(&self) -> Result<Self, TopologyError>
Contract Value
Guarantee checked deterministic result
Determinism deterministic
Availability default CPU build
Domain implementation crates noether, geom-core, m4rst, m4rste
GIL released
Semantic ID noether/topology/SimplicialSet@1

Executable usage: validation/unit/category/test_category.py:38 · validation/unit/combin/test_acceptance_workload.py:27 · validation/unit/combin/test_acceptance_workload.py:29 · validation/unit/infra/test_discovery.py:122 · validation/unit/infra/test_discovery.py:125 · validation/unit/infra/test_discovery.py:56

topology.SimplicialSet.chain_complex

Construct the canonical normalized chain complex over ring.

Detailed contract

Construct the canonical normalized chain complex over ring.

(self, ring: _CoefficientContext) -> ChainComplex[_CoefficientContext]

noether::topology::SimplicialSet::chain_complex · Direct Rust declaration

pub fn chain_complex<R: Ring>( &self, ring: R, ) -> Result<ChainComplex<R>, TopologyError>
Contract Value
Guarantee checked deterministic result
Determinism deterministic
Availability default CPU build
Domain implementation crates noether, geom-core, m4rst, m4rste
GIL released
Semantic ID noether/topology/SimplicialSet@1

Executable usage: validation/unit/topology/test_simplicial_complex_facade.py:135 · validation/unit/topology/test_simplicial_set_facade.py:131 · validation/unit/topology/test_simplicial_set_facade.py:54 · validation/corpus/topology/real-projective-plane-integral-homology.py:28 · validation/corpus/topology/simplicialhomology-basic-betti-numbers.py:36 · validation/corpus/topology/simplicialhomology-basic-betti-numbers.py:37

topology.SimplicialSet.circle

The minimal circle: one vertex and one loop.

Detailed contract

The minimal simplicial circle: one vertex and one loop.

() -> SimplicialSet

noether::topology::SimplicialSet::circle · Direct Rust declaration

pub fn circle() -> Self
Contract Value
Guarantee checked deterministic result
Determinism deterministic
Availability default CPU build
Domain implementation crates noether, geom-core, m4rst, m4rste
GIL attached / bounded
Semantic ID noether/topology/SimplicialSet@1

Executable usage: validation/unit/homalg/test_chain_complex.py:24 · validation/unit/homalg/test_chain_complex.py:26 · validation/unit/homalg/test_chain_complex.py:27 · validation/unit/homalg/test_chain_complex.py:28 · validation/unit/homalg/test_chain_complex.py:29 · validation/unit/homalg/test_chain_complex.py:30

topology.SimplicialSet.cochain_complex

Construct normalized simplicial cochains over ring.

Detailed contract

Construct normalized simplicial cochains over ring.

(self, ring: _CoefficientContext) -> ChainComplex[_CoefficientContext]

noether::topology::SimplicialSet::cochain_complex · Direct Rust declaration

pub fn cochain_complex<R: Ring>( &self, ring: R, ) -> Result<ChainComplex<R>, TopologyError>
Contract Value
Guarantee checked deterministic result
Determinism deterministic
Availability default CPU build
Domain implementation crates noether, geom-core, m4rst, m4rste
GIL released
Semantic ID noether/topology/SimplicialSet@1

Executable usage: validation/unit/infra/test_discovery.py:134 · validation/unit/infra/test_discovery.py:142 · validation/unit/topology/test_simplicial_complex_facade.py:146 · validation/unit/topology/test_simplicial_set_facade.py:145

topology.SimplicialSet.cohomology_ring

Complete normalized cohomology algebra over one exact finite field.

Detailed contract

Compute the complete normalized cohomology algebra over field, including canonical cocycles and every basis product.

(self, field: FiniteField) -> SimplicialSetCohomologyRing

noether::topology::SimplicialSet::cohomology_ring · Direct Rust declaration

pub fn cohomology_ring( &self, field: FiniteField, ) -> Result<SimplicialSetCohomologyRing, TopologyError>
Contract Value
Guarantee checked deterministic result
Determinism deterministic
Availability default CPU build
Domain implementation crates noether, geom-core, m4rst, m4rste
GIL released
Semantic ID noether/topology/SimplicialSet@1

Executable usage: examples/33_simplicial_cohomology_operations.py:24 · validation/unit/infra/test_discovery.py:121 · validation/unit/infra/test_discovery.py:124 · validation/unit/infra/test_public_api_index.py:186 · validation/unit/topology/test_simplicial_complex_facade.py:186 · validation/unit/topology/test_simplicial_set_facade.py:160

topology.SimplicialSet.count

Number of non-degenerate simplices in one dimension.

(self, dimension: int) -> int

noether::topology::SimplicialSet::count · Direct Rust declaration

pub fn count(&self, dimension: usize) -> usize
Contract Value
Guarantee checked deterministic result
Determinism deterministic
Availability default CPU build
Domain implementation crates noether, geom-core, m4rst, m4rste
GIL attached / bounded
Semantic ID noether/topology/SimplicialSet@1

Executable usage: examples/18_finite_field_schemes.py:14 · examples/18_finite_field_schemes.py:16 · examples/18_finite_field_schemes.py:17 · examples/18_finite_field_schemes.py:18 · validation/unit/combin/test_graph_facade.py:34 · validation/unit/combinatorics/test_poset.py:142

topology.SimplicialSet.cup_i

Medina-Mardones cup-i product on normalized characteristic-two cochains.

Detailed contract

Medina-Mardones cup-i product on normalized characteristic-two cochains.

Chain-level cup-i product on normalized cochains in characteristic 2. Degenerate iterated faces evaluate to zero in the normalized complex. Inputs need not be cocycles. The output has degree left_degree + right_degree - i.

(self, cup_index: int, left_degree: int, left: Vector[FiniteField], right_degree: int, right: Vector[FiniteField]) -> Vector[FiniteField]

noether::topology::SimplicialSet::cup_i · Direct Rust declaration

pub fn cup_i( &self, cup_index: usize, left_degree: usize, left: &Vector<FiniteField>, right_degree: usize, right: &Vector<FiniteField>, ) -> Result<Vector<FiniteField>, TopologyError>
Contract Value
Guarantee checked deterministic result
Determinism deterministic
Availability default CPU build
Domain implementation crates noether, geom-core, m4rst, m4rste
GIL released
Semantic ID noether/topology/SimplicialSet@1

Executable usage: validation/unit/infra/test_discovery.py:138 · validation/unit/infra/test_discovery.py:146 · validation/unit/topology/test_simplicial_complex_facade.py:167 · validation/unit/topology/test_simplicial_complex_facade.py:170 · validation/unit/topology/test_simplicial_complex_facade.py:175 · validation/unit/topology/test_simplicial_set_facade.py:148

topology.SimplicialSet.cup_product

Alexander--Whitney cup product on normalized cochains.

Detailed contract

Alexander–Whitney cup product on normalized simplicial cochains. Inputs and output use the nondegenerate simplex bases. A degenerate front or back face contributes zero. Inputs need not be cocycles.

(self, left_degree: int, left: Vector[_CoefficientContext], right_degree: int, right: Vector[_CoefficientContext]) -> Vector[_CoefficientContext]

noether::topology::SimplicialSet::cup_product · Direct Rust declaration

pub fn cup_product<R: Ring>( &self, left_degree: usize, left: &Vector<R>, right_degree: usize, right: &Vector<R>, ) -> Result<Vector<R>, TopologyError>
Contract Value
Guarantee checked deterministic result
Determinism deterministic
Availability default CPU build
Domain implementation crates noether, geom-core, m4rst, m4rste
GIL released
Semantic ID noether/topology/SimplicialSet@1

Executable usage: validation/unit/infra/test_discovery.py:137 · validation/unit/infra/test_discovery.py:145 · validation/unit/topology/test_simplicial_complex_facade.py:152 · validation/unit/topology/test_simplicial_complex_facade.py:153 · validation/unit/topology/test_simplicial_complex_facade.py:159 · validation/unit/topology/test_simplicial_complex_facade.py:167

topology.SimplicialSet.dimension

Top dimension carrying a non-degenerate simplex.

Detailed contract

Top dimension containing a non-degenerate simplex. The empty simplicial set has dimension -1.

(self) -> int

noether::topology::SimplicialSet::dimension · Direct Rust declaration

pub fn dimension(&self) -> i64
Contract Value
Guarantee checked deterministic result
Determinism deterministic
Availability default CPU build
Domain implementation crates noether, geom-core, m4rst, m4rste
GIL attached / bounded
Semantic ID noether/topology/SimplicialSet@1

Executable usage: examples/03_exact_linear_systems.py:15 · examples/03_exact_linear_systems.py:16 · examples/15_groebner_twisted_cubic.py:14 · examples/15_groebner_twisted_cubic.py:28 · examples/27_weight_characters.py:25 · examples/34_finite_group_cohomology.py:13

topology.SimplicialSet.elementary_horn_collapse

Replay one checked elementary horn collapse.

Detailed contract

Replay one proposed elementary horn collapse after checking every nondegenerate and degenerate reference to the removed cells.

(self, step: SimplicialSetElementaryHornCollapse) -> SimplicialSet

noether::topology::SimplicialSet::elementary_horn_collapse · Direct Rust declaration

pub fn elementary_horn_collapse( &self, step: &SimplicialSetElementaryHornCollapse, ) -> Result<Self, TopologyError>
Contract Value
Guarantee checked deterministic result
Determinism deterministic
Availability default CPU build
Domain implementation crates noether, geom-core, m4rst, m4rste
GIL attached / bounded
Semantic ID noether/topology/SimplicialSet@1

Executable usage: validation/unit/topology/test_simplicial_set_facade.py:104 · validation/unit/topology/test_simplicial_set_facade.py:94

topology.SimplicialSet.elementary_horn_collapses

All available elementary collapses inverse to horn attachments.

Detailed contract

All elementary horn collapses available in this simplicial set. A returned pair removes exactly one nondegenerate n-simplex and one nondegenerate (n-1)-simplex. The latter occurs as exactly the declared face of the former and neither removed simplex underlies any other face or degeneracy reference.

(self) -> list[SimplicialSetElementaryHornCollapse]

noether::topology::SimplicialSet::elementary_horn_collapses · Direct Rust declaration

pub fn elementary_horn_collapses( &self, ) -> Vec<SimplicialSetElementaryHornCollapse>
Contract Value
Guarantee checked deterministic result
Determinism deterministic
Availability default CPU build
Domain implementation crates noether, geom-core, m4rst, m4rste
GIL attached / bounded
Semantic ID noether/topology/SimplicialSet@1

Executable usage: validation/unit/topology/test_simplicial_set_facade.py:111 · validation/unit/topology/test_simplicial_set_facade.py:90

topology.SimplicialSet.euler_characteristic

Euler characteristic from non-degenerate cell counts.

(self) -> int

noether::topology::SimplicialSet::euler_characteristic · Direct Rust declaration

pub fn euler_characteristic(&self) -> i64
Contract Value
Guarantee checked deterministic result
Determinism deterministic
Availability default CPU build
Domain implementation crates noether, geom-core, m4rst, m4rste
GIL attached / bounded
Semantic ID noether/topology/SimplicialSet@1

Executable usage: validation/unit/combinatorics/test_poset.py:143 · validation/unit/topology/test_simplicial_complex_facade.py:62 · validation/unit/topology/test_simplicial_set_facade.py:262 · validation/unit/topology/test_simplicial_set_facade.py:53 · validation/corpus/topology/bowtie-complex-homology.py:15 · validation/corpus/topology/bowtie-complex-homology.py:25

topology.SimplicialSet.faces

Complete canonical non-degenerate face data.

(self) -> list[list[list[_SimplicialFaceData]]]

noether::topology::SimplicialSet · Python projection

Python projection convenience over this Rust mathematical type
Contract Value
Guarantee checked deterministic result
Determinism deterministic
Availability default CPU build
Domain implementation crates noether, geom-core, m4rst, m4rste
GIL attached / bounded
Semantic ID noether/topology/SimplicialSet@1

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

topology.SimplicialSet.faces_of

Faces of one non-degenerate simplex.

Detailed contract

Faces of one non-degenerate simplex, or None when it does not exist.

(self, dimension: int, simplex: int) -> list[_SimplicialFaceData]

noether::topology::SimplicialSet::faces_of · Direct Rust declaration

pub fn faces_of( &self, dimension: usize, simplex: usize, ) -> Option<&[SimplicialFace]>
Contract Value
Guarantee checked deterministic result
Determinism deterministic
Availability default CPU build
Domain implementation crates noether, geom-core, m4rst, m4rste
GIL attached / bounded
Semantic ID noether/topology/SimplicialSet@1

Executable usage: validation/unit/topology/test_simplicial_set_facade.py:79 · validation/unit/topology/test_simplicial_set_facade.py:85

topology.SimplicialSet.from_json

Deserialize and revalidate a SimplicialSet from typed JSON.

Detailed contract

Deserialize and reverify a complete non-degenerate presentation.

(cls, value: str) -> SimplicialSet

noether::topology::SimplicialSet::from_json · Direct Rust declaration

pub fn from_json(value: &str) -> Result<Self, NoetherError>
Contract Value
Guarantee checked deterministic result
Determinism deterministic
Availability default CPU build
Domain implementation crates noether, geom-core, m4rst, m4rste
GIL attached / bounded
Semantic ID noether/topology/SimplicialSet@1

Executable usage: validation/unit/category/test_category.py:14 · validation/unit/combin/test_acceptance_workload.py:65 · validation/unit/combin/test_acceptance_workload.py:86 · validation/unit/combin/test_graph_facade.py:106 · validation/unit/combin/test_graph_facade.py:25 · validation/unit/combinatorics/test_kashiwara_crystal.py:32

topology.SimplicialSet.graded_homology

Compute checked homology in every degree, over Z by default.

Detailed contract

Compute field homology in every nonzero normalized chain degree.

(self) -> GradedHomology[IntegerRing]
(self, *, ring: _CoefficientContext) -> GradedHomology[_CoefficientContext]

noether::topology::SimplicialSet::graded_homology · Direct Rust declaration

pub fn graded_homology<R: Field>( &self, field: R, ) -> Result<GradedHomology<R>, TopologyError>
Contract Value
Guarantee checked deterministic result
Determinism deterministic
Availability default CPU build
Domain implementation crates noether, geom-core, m4rst, m4rste
GIL released
Semantic ID noether/topology/SimplicialSet@1

Executable usage: validation/unit/homalg/test_acceptance_workload.py:56 · validation/unit/homalg/test_acceptance_workload.py:61 · validation/unit/homalg/test_chain_complex.py:64 · validation/unit/infra/test_discovery.py:63 · validation/unit/topology/test_simplicial_complex_facade.py:256 · validation/unit/topology/test_simplicial_set_facade.py:212

topology.SimplicialSet.greedy_horn_collapse_reduction

Deterministically collapse the least available horn pair to a terminal target.

Detailed contract

Deterministically collapse the least available horn pair to a terminal target.

Deterministically remove the least available free horn pair until no elementary horn collapse remains. The reverse of every step is a pushout of a horn inclusion and hence an anodyne extension. The terminal target is evidence for this particular zigzag; it is not asserted to be a canonical homotopy representative.

(self) -> SimplicialSetHornCollapseSequence

noether::topology::SimplicialSet::greedy_horn_collapse_reduction · Direct Rust declaration

pub fn greedy_horn_collapse_reduction( &self, ) -> Result<SimplicialSetHornCollapseSequence, TopologyError>
Contract Value
Guarantee checked deterministic result
Determinism deterministic
Availability default CPU build
Domain implementation crates noether, geom-core, m4rst, m4rste
GIL released
Semantic ID noether/topology/SimplicialSet@1

Executable usage: validation/unit/infra/test_discovery.py:144 · validation/unit/topology/test_simplicial_set_facade.py:96

topology.SimplicialSet.homology

Compute one checked homology group, over Z by default.

Detailed contract

Compute one field-homology group through normalized chains.

(self, degree: int) -> HomologyGroup[IntegerRing]
(self, degree: int, *, ring: _CoefficientContext) -> HomologyGroup[_CoefficientContext]

noether::topology::SimplicialSet::homology · Direct Rust declaration

pub fn homology<R: Field>( &self, field: R, degree: usize, ) -> Result<HomologyGroup<R>, TopologyError>
Contract Value
Guarantee checked deterministic result
Determinism deterministic
Availability default CPU build
Domain implementation crates noether, geom-core, m4rst, m4rste
GIL released
Semantic ID noether/topology/SimplicialSet@1

Executable usage: examples/28_steiner_categories.py:3 · examples/35_eilenberg_maclane_spaces.py:12 · examples/35_eilenberg_maclane_spaces.py:13 · examples/35_eilenberg_maclane_spaces.py:14 · examples/35_eilenberg_maclane_spaces.py:21 · validation/unit/homalg/test_chain_complex.py:111

topology.SimplicialSet.homology_invariants

Compute lean integral homology invariants without retaining boundaries.

Detailed contract

Compute integral normalized homology as a lean finitely generated abelian group. Only sparse ranks and Smith invariant factors are retained. Use Self::integral_homology when the result must carry adjacent dense boundary matrices for an independent later verification.

(self, degree: int) -> FinitelyGeneratedAbelianGroup

noether::topology::SimplicialSet::homology_invariants · Direct Rust declaration

pub fn homology_invariants( &self, degree: usize, ) -> Result<FinitelyGeneratedAbelianGroup, TopologyError>
Contract Value
Guarantee checked deterministic result
Determinism deterministic
Availability default CPU build
Domain implementation crates noether, geom-core, m4rst, m4rste
GIL released
Semantic ID noether/topology/SimplicialSet@1

Executable usage: examples/32_poset_core_and_morse.py:19 · validation/unit/combinatorics/test_poset.py:144 · validation/unit/homalg/test_chain_complex.py:148 · validation/unit/homalg/test_chain_complex.py:175 · validation/unit/homalg/test_chain_complex.py:189 · validation/unit/homalg/test_padic_homology_facade.py:105

topology.SimplicialSet.horn_collapse_sequence

Replay and retain a checked sequence of horn collapses.

Detailed contract

Replay and retain a checked sequence of elementary horn collapses.

(self, steps: list[SimplicialSetElementaryHornCollapse]) -> SimplicialSetHornCollapseSequence

noether::topology::SimplicialSet::horn_collapse_sequence · Direct Rust declaration

pub fn horn_collapse_sequence( &self, steps: Vec<SimplicialSetElementaryHornCollapse>, ) -> Result<SimplicialSetHornCollapseSequence, TopologyError>
Contract Value
Guarantee checked deterministic result
Determinism deterministic
Availability default CPU build
Domain implementation crates noether, geom-core, m4rst, m4rste
GIL attached / bounded
Semantic ID noether/topology/SimplicialSet@1

topology.SimplicialSet.is_empty

Whether there are no non-degenerate simplices.

(self) -> bool

noether::topology::SimplicialSet::is_empty · Direct Rust declaration

pub fn is_empty(&self) -> bool
Contract Value
Guarantee checked deterministic result
Determinism deterministic
Availability default CPU build
Domain implementation crates noether, geom-core, m4rst, m4rste
GIL attached / bounded
Semantic ID noether/topology/SimplicialSet@1

Executable usage: validation/unit/combinatorics/test_poset.py:113 · validation/unit/topology/test_filtration_builders.py:119 · validation/unit/topology/test_persistence_facade.py:45 · validation/unit/topology/test_persistence_facade.py:47 · validation/unit/topology/test_simplicial_complex_facade.py:47 · validation/unit/topology/test_simplicial_complex_facade.py:49

topology.SimplicialSet.non_degenerate_counts

Non-degenerate simplex counts by dimension.

(self) -> list[int]

noether::topology::SimplicialSet · Python projection

Python projection convenience over this Rust mathematical type
Contract Value
Guarantee checked deterministic result
Determinism deterministic
Availability default CPU build
Domain implementation crates noether, geom-core, m4rst, m4rste
GIL attached / bounded
Semantic ID noether/topology/SimplicialSet@1

Executable usage: validation/unit/topology/test_simplicial_set_facade.py:211 · validation/unit/topology/test_simplicial_set_facade.py:260 · validation/unit/topology/test_simplicial_set_facade.py:33 · validation/unit/topology/test_simplicial_set_facade.py:51 · validation/unit/topology/test_simplicial_set_facade.py:95

topology.SimplicialSet.normalized_chain_reduction

Deterministically reduce normalized chains by replayable 1 and -1 cancellations.

Detailed contract

Deterministically reduce normalized chains by replayable 1 and -1 cancellations.

Reduce normalized chains by deterministic universal-unit cancellation. The returned homological-algebra witness records each 1 or -1 pivot and can be replayed over the supplied coefficient ring. This is deliberately a reduction of normalized chains rather than a second, simplicial-set-specific Morse implementation.

(self, ring: _CoefficientContext) -> ChainReduction[_CoefficientContext]

noether::topology::SimplicialSet::normalized_chain_reduction · Direct Rust declaration

pub fn normalized_chain_reduction<R: Ring>( &self, ring: R, ) -> Result<ChainReduction<R>, TopologyError>
Contract Value
Guarantee checked deterministic result
Determinism deterministic
Availability default CPU build
Domain implementation crates noether, geom-core, m4rst, m4rste
GIL released
Semantic ID noether/topology/SimplicialSet@1

Executable usage: validation/unit/infra/test_discovery.py:143 · validation/unit/topology/test_simplicial_set_facade.py:128

topology.SimplicialSet.sphere

The minimal dimension-sphere.

Detailed contract

The minimal simplicial n-sphere. For positive n, this is the quotient of the standard n-simplex by its boundary: one vertex and one non-degenerate n-simplex.

(dimension: int) -> SimplicialSet

noether::topology::SimplicialSet::sphere · Direct Rust declaration

pub fn sphere(dimension: usize) -> Self
Contract Value
Guarantee checked deterministic result
Determinism deterministic
Availability default CPU build
Domain implementation crates noether, geom-core, m4rst, m4rste
GIL attached / bounded
Semantic ID noether/topology/SimplicialSet@1

Executable usage: validation/unit/topology/test_simplicial_set_facade.py:143 · validation/unit/topology/test_simplicial_set_facade.py:145 · validation/unit/topology/test_simplicial_set_facade.py:148 · validation/unit/topology/test_simplicial_set_facade.py:149 · validation/unit/topology/test_simplicial_set_facade.py:150 · validation/unit/topology/test_simplicial_set_facade.py:201

topology.SimplicialSet.steenrod_reduced_power

Odd-primary Steenrod reduced power of a checked normalized cocycle.

Detailed contract

The odd-primary Steenrod reduced power P^power of a checked normalized cocycle over a prime field.

(self, power: int, degree: int, cocycle: Vector[FiniteField]) -> Vector[FiniteField]

noether::topology::SimplicialSet::steenrod_reduced_power · Direct Rust declaration

pub fn steenrod_reduced_power( &self, power: usize, degree: usize, cocycle: &Vector<FiniteField>, ) -> Result<Vector<FiniteField>, TopologyError>
Contract Value
Guarantee checked deterministic result
Determinism deterministic
Availability default CPU build
Domain implementation crates noether, geom-core, m4rst, m4rste
GIL released
Semantic ID noether/topology/SimplicialSet@1

Executable usage: validation/unit/infra/test_discovery.py:140 · validation/unit/infra/test_discovery.py:148 · validation/unit/topology/test_simplicial_set_facade.py:185 · validation/unit/topology/test_simplicial_set_facade.py:189

topology.SimplicialSet.steenrod_square

Steenrod square of a checked characteristic-two cocycle.

Detailed contract

Steenrod square of a checked normalized cocycle over a field of characteristic 2.

(self, square: int, degree: int, cocycle: Vector[FiniteField]) -> Vector[FiniteField]

noether::topology::SimplicialSet::steenrod_square · Direct Rust declaration

pub fn steenrod_square( &self, square: usize, degree: usize, cocycle: &Vector<FiniteField>, ) -> Result<Vector<FiniteField>, TopologyError>
Contract Value
Guarantee checked deterministic result
Determinism deterministic
Availability default CPU build
Domain implementation crates noether, geom-core, m4rst, m4rste
GIL released
Semantic ID noether/topology/SimplicialSet@1

Executable usage: examples/33_simplicial_cohomology_operations.py:29 · validation/unit/infra/test_discovery.py:139 · validation/unit/infra/test_discovery.py:147 · validation/unit/topology/test_simplicial_complex_facade.py:171 · validation/unit/topology/test_simplicial_complex_facade.py:192 · validation/unit/topology/test_simplicial_complex_facade.py:193

topology.SimplicialSet.to_json

Serialize this SimplicialSet to its canonical typed JSON representation.

Detailed contract

Serialize the complete non-degenerate presentation as typed JSON.

(self) -> str

noether::topology::SimplicialSet::to_json · Direct Rust declaration

pub fn to_json(&self) -> Result<String, NoetherError>
Contract Value
Guarantee checked deterministic result
Determinism deterministic
Availability default CPU build
Domain implementation crates noether, geom-core, m4rst, m4rste
GIL attached / bounded
Semantic ID noether/topology/SimplicialSet@1

Executable usage: validation/unit/category/test_category.py:14 · validation/unit/category/test_category.py:15 · validation/unit/combin/test_acceptance_workload.py:30 · validation/unit/combin/test_acceptance_workload.py:65 · validation/unit/combin/test_acceptance_workload.py:86 · validation/unit/combin/test_graph_facade.py:106

topology.SimplicialSet.verify

Recheck the simplicial identities and normalized signed boundary.

Detailed contract

Verify all references, degeneracy maps, and generating simplicial identities.

(self) -> None

noether::topology::SimplicialSet::verify · Direct Rust declaration

pub fn verify(&self) -> Result<(), SimplicialSetError>
Contract Value
Guarantee checked deterministic result
Determinism deterministic
Availability default CPU build
Domain implementation crates noether, geom-core, m4rst, m4rste
GIL attached / bounded
Semantic ID noether/topology/SimplicialSet@1

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