Skip to content

topology · EilenbergMacLaneIntegralCohomologyRelation

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

Worked example

The complete checked program Factor an integer and construct a cyclotomic polynomial uses this API directly.

# SPDX-License-Identifier: MIT
# Copyright (c) 2026 Benjamin Antieau and Deven Manam
"""Factor an integer and construct a cyclotomic polynomial."""

from noether.numthy import cyclotomic_polynomial, factor, is_prime


def main() -> None:
    integer = 2**20 * 3**7 * 101
    factorization = factor(integer)
    assert factorization.verify(integer)
    assert all(is_prime(prime) for prime, _ in factorization.factors)
    phi = cyclotomic_polynomial(12)
    assert phi.terms() == [([4], 1), ([2], -1), ([0], 1)]
    print(f"{integer} = {factorization}; Phi_12 = {phi}")


if __name__ == "__main__":
    main()

Run it with .venv/bin/python examples/07_integer_factorization.py.

topology.EilenbergMacLaneIntegralCohomologyRelation

One homogeneous relation in an integral cohomology presentation.

class EilenbergMacLaneIntegralCohomologyRelation

noether::topology::EilenbergMacLaneIntegralCohomologyRelation · Direct Rust declaration

pub struct EilenbergMacLaneIntegralCohomologyRelation { /* 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

topology.EilenbergMacLaneIntegralCohomologyRelation.terms

Return the terms recorded by this EilenbergMacLaneIntegralCohomologyRelation.

Detailed contract

Sparse terms in canonical monomial order.

(self) -> list[EilenbergMacLaneIntegralCohomologyRelationTerm]

noether::topology::EilenbergMacLaneIntegralCohomologyRelation::terms · Direct Rust declaration

pub fn terms(&self) -> &[EilenbergMacLaneIntegralCohomologyRelationTerm]
Contract Value
Guarantee checked deterministic result
Determinism deterministic
Availability default CPU build
Domain implementation crates noether, geom-core, m4rst, m4rste
GIL attached / bounded

Executable usage: examples/07_integer_factorization.py:14 · examples/40_exterior_algebra.py:43 · validation/unit/combin/test_acceptance_workload.py:45 · validation/unit/combin/test_acceptance_workload.py:81 · validation/unit/combinatorics/test_boundary.py:31 · validation/unit/combinatorics/test_boundary.py:44