Skip to content

groups · StabilizerChainStep

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

Worked example

The complete checked program Decompose a polynomial by a nonstandard positive grading uses this API directly.

# SPDX-License-Identifier: MIT
# Copyright (c) 2026 Benjamin Antieau and Deven Manam
"""Decompose a polynomial by a nonstandard positive grading."""

from noether import Z
from noether.commalg import PolynomialRing, WeightedGrading


def main() -> None:
    ring = PolynomialRing(Z, ["x", "y", "z"], grading=WeightedGrading([1, 2, 3]))
    x, y, z = ring.generators()
    sparse = ring.from_terms([([0, 0, 0], 1), ([2, 0, 0], 1), ([0, 1, 0], 1)])
    polynomial = sparse + z
    assert sparse * (x + y) == (1 + x**2 + y) * (x + y)
    components = polynomial.homogeneous_components()
    assert [degree for degree, _ in components] == [0, 2, 3]
    assert x**2 + y == components[1][1]
    print(f"weighted homogeneous degrees: {[degree for degree, _ in components]}")


if __name__ == "__main__":
    main()

Run it with .venv/bin/python examples/14_weighted_polynomials.py.

groups.StabilizerChainStep

One step of a stabilizer chain — a row of StabilizerChain.steps.

class StabilizerChainStep

noether::groups::StabilizerChainStep · Python projection

Python projection convenience; no separate Rust item
Contract Value
Guarantee checked deterministic result
Determinism deterministic
Availability default CPU build
Domain implementation crates noether, perm-core
GIL attached / bounded

Executable usage: validation/unit/groups/test_acceptance_workload.py:19 · validation/unit/groups/test_acceptance_workload.py:70

groups.StabilizerChainStep.base

Base point at this level.

(self) -> int

noether::groups::StabilizerChainStep · Python projection

Python projection convenience; no separate Rust item
Contract Value
Guarantee checked deterministic result
Determinism deterministic
Availability default CPU build
Domain implementation crates noether, perm-core
GIL attached / bounded

Executable usage: validation/unit/commalg/test_acceptance_workload.py:59 · validation/unit/commalg/test_acceptance_workload.py:60 · validation/unit/commalg/test_base_change.py:112 · validation/unit/commalg/test_base_change.py:113 · validation/unit/commalg/test_polynomial_ideal_facade.py:398 · validation/unit/commalg/test_polynomial_ideal_facade.py:399

groups.StabilizerChainStep.generators

Strong generators at this level — those stabilising every earlier base point.

Detailed contract

Strong generators at this level — those stabilising every earlier base point. list[Permutation].

(self) -> list[Permutation]

noether::groups::StabilizerChainStep · Python projection

Python projection convenience; no separate Rust item
Contract Value
Guarantee checked deterministic result
Determinism deterministic
Availability default CPU build
Domain implementation crates noether, perm-core
GIL attached / bounded

Executable usage: examples/14_weighted_polynomials.py:11 · examples/15_groebner_twisted_cubic.py:11 · examples/15_groebner_twisted_cubic.py:19 · examples/17_weighted_power_series.py:15 · examples/18_finite_field_schemes.py:12 · examples/30_modules_and_resolutions.py:20

groups.StabilizerChainStep.orbit

Orbit of base at this level, BFS order.

Detailed contract

Orbit of base at this level, BFS order. list[int].

(self) -> list[int]

noether::groups::StabilizerChainStep · Python projection

Python projection convenience; no separate Rust item
Contract Value
Guarantee checked deterministic result
Determinism deterministic
Availability default CPU build
Domain implementation crates noether, perm-core
GIL attached / bounded

Executable usage: examples/20_conjugacy_classes.py:3 · validation/unit/groups/test_acceptance_workload.py:125 · validation/unit/groups/test_acceptance_workload.py:126 · validation/unit/groups/test_acceptance_workload.py:127 · validation/unit/groups/test_acceptance_workload.py:128 · validation/unit/groups/test_acceptance_workload.py:129

groups.StabilizerChainStep.transversal

Coset representatives, parallel to orbit.

Detailed contract

Coset representatives, parallel to orbit. list[Permutation].

(self) -> list[Permutation]

noether::groups::StabilizerChainStep · Python projection

Python projection convenience; no separate Rust item
Contract Value
Guarantee checked deterministic result
Determinism deterministic
Availability default CPU build
Domain implementation crates noether, perm-core
GIL attached / bounded

Executable usage: validation/unit/groups/test_acceptance_workload.py:47 · validation/unit/groups/test_acceptance_workload.py:48 · validation/unit/groups/test_acceptance_workload.py:49 · validation/unit/groups/test_acceptance_workload.py:50 · validation/unit/groups/test_acceptance_workload.py:51 · validation/unit/groups/test_acceptance_workload.py:71