Skip to content

category · OrientedBasepoint

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

Worked example

The complete checked program Solve an underdetermined rational system and verify its affine space uses this API directly.

# SPDX-License-Identifier: MIT
# Copyright (c) 2026 Benjamin Antieau and Deven Manam
"""Solve an underdetermined rational system and verify its affine space."""

from noether import Q
from noether.linalg import Matrix, Vector


def main() -> None:
    matrix = Matrix.from_rows(Q, [[1, 2, 3], [2, 4, 6]])
    right_hand_side = Vector.from_values(Q, [1, 2])
    solutions = matrix.solve(right_hand_side)
    solutions.verify()
    assert matrix @ solutions.particular == right_hand_side
    assert solutions.dimension == 2
    print(f"particular={solutions.particular}; nullity={solutions.dimension}")


if __name__ == "__main__":
    main()

Run it with .venv/bin/python examples/03_exact_linear_systems.py.

category.OrientedBasepoint

One oriented globe-boundary basepoint.

class OrientedBasepoint

noether::category::OrientedBasepoint · Direct Rust declaration

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

Executable usage: validation/unit/infra/test_discovery.py:190 · validation/unit/infra/test_discovery.py:191

category.OrientedBasepoint.dimension

Return the dimension recorded by this OrientedBasepoint.

Detailed contract

Basepoint dimension.

(self) -> int

noether::category::OrientedBasepoint::dimension · Direct Rust declaration

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

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

category.OrientedBasepoint.from_pairs

Construct a OrientedBasepoint using pairs.

(category: SteinerCategory, pairs: Sequence[tuple[SteinerCell, SteinerCell]]) -> OrientedBasepoint

noether::category::OrientedBasepoint · 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
GIL attached / bounded

category.OrientedBasepoint.homotopy_degree

Return the homotopy degree recorded by this OrientedBasepoint.

Detailed contract

Homotopy-Poset degree associated to this basepoint.

(self) -> int

noether::category::OrientedBasepoint::homotopy_degree · Direct Rust declaration

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

category.OrientedBasepoint.homotopy_poset

Compute homotopy poset for this OrientedBasepoint.

Detailed contract

Gepner–Heine homotopy Poset at this basepoint.

(self, category: SteinerCategory) -> Poset

noether::category::OrientedBasepoint::homotopy_poset · Direct Rust declaration

pub fn homotopy_poset( &self, category: &SteinerCategory, ) -> Result<Poset, CategoryError>
Contract Value
Guarantee checked deterministic result
Determinism deterministic
Availability default CPU build
Domain implementation crates noether
GIL released

Executable usage: validation/unit/infra/test_discovery.py:191

category.OrientedBasepoint.is_monomorphic

Test whether this OrientedBasepoint is monomorphic.

Detailed contract

Whether the globe-boundary functor is monomorphic. In the finite gaunt strict setting, recursive cell injectivity is equivalent to requiring the two globe faces to remain distinct in every dimension.

(self) -> bool

noether::category::OrientedBasepoint::is_monomorphic · Direct Rust declaration

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

category.OrientedBasepoint.iterated_mapping_category

Compute iterated mapping category for this OrientedBasepoint.

Detailed contract

Iterated mapping category selected by this basepoint.

(self, category: SteinerCategory) -> FiniteOmegaCategory

noether::category::OrientedBasepoint::iterated_mapping_category · Direct Rust declaration

pub fn iterated_mapping_category( &self, category: &SteinerCategory, ) -> Result<FiniteOmegaCategory, CategoryError>
Contract Value
Guarantee checked deterministic result
Determinism deterministic
Availability default CPU build
Domain implementation crates noether
GIL released

Executable usage: validation/unit/infra/test_discovery.py:190

category.OrientedBasepoint.pairs

Return the pairs recorded by this OrientedBasepoint.

Detailed contract

Recursive pairs defining the globe-boundary map.

(self) -> list[tuple[SteinerCell, SteinerCell]]

noether::category::OrientedBasepoint::pairs · Direct Rust declaration

pub fn pairs(&self) -> &[(SteinerCell, SteinerCell)]
Contract Value
Guarantee checked deterministic result
Determinism deterministic
Availability default CPU build
Domain implementation crates noether
GIL attached / bounded

Executable usage: validation/parity/combinatorics/test_tree_pyo3.py:209 · validation/parity/combinatorics/test_tree_pyo3.py:212 · validation/parity/combinatorics/test_tree_pyo3.py:8 · validation/parity/u1_graph_core.py:219 · validation/backends/graph/invariants.py:19 · validation/backends/graph/invariants.py:64