Skip to content

commalg · PolynomialPrimeLocalMembership

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

Worked example

The complete checked program Split rational primes and factor an ideal in the Gaussian integers uses this API directly.

# SPDX-License-Identifier: MIT
# Copyright (c) 2026 Benjamin Antieau and Deven Manam
"""Split rational primes and factor an ideal in the Gaussian integers."""

from noether import Q
from noether.commalg import PolynomialRing
from noether.numthy import NumberField


def main() -> None:
    polynomials = PolynomialRing(Q, ["x"])
    field = NumberField(polynomials.generator("x") ** 2 + 1, name="i")
    order = field.maximal_order()
    primes = order.prime_ideals_above(5)
    assert len(primes) == 2
    assert all(prime.norm() == 5 for prime in primes)
    ideal = order.fractional_ideal([1 + field.generator])
    assert ideal.norm() == 2
    print(f"(5) splits into norms {[prime.norm() for prime in primes]}; N(1+i)={ideal.norm()}")


if __name__ == "__main__":
    main()

Run it with .venv/bin/python examples/12_number_field_ideals.py.

commalg.PolynomialPrimeLocalMembership

Replayable colon-witness evidence for prime-local ideal membership.

class PolynomialPrimeLocalMembership

noether::commalg::PolynomialPrimeLocalMembership · Direct Rust declaration

pub struct PolynomialPrimeLocalMembership<R: Field> { /* private fields */ }
Contract Value
Guarantee checked deterministic result
Determinism deterministic
Availability default CPU build
Domain implementation crates noether, flint-core, groebner-kernel, module-core, poly-core, resolution-kernel
GIL attached / bounded
Semantic ID noether/commalg/PolynomialPrimeLocalMembership@1

Executable usage: validation/unit/commalg/test_prime_localization.py:11 · validation/unit/commalg/test_prime_localization.py:58

commalg.PolynomialPrimeLocalMembership.colon_ideal

Return the colon ideal recorded by this PolynomialPrimeLocalMembership.

Detailed contract

Canonical ambient colon ideal (I : numerator(value)).

(self) -> Ideal[PolynomialRing[_ProjectedIdealFieldContext]]

noether::commalg::PolynomialPrimeLocalMembership::colon_ideal · Direct Rust declaration

pub fn colon_ideal(&self) -> &Ideal<PolynomialRing<R>>
Contract Value
Guarantee checked deterministic result
Determinism deterministic
Availability default CPU build
Domain implementation crates noether, flint-core, groebner-kernel, module-core, poly-core, resolution-kernel
GIL attached / bounded
Semantic ID noether/commalg/PolynomialPrimeLocalMembership@1

commalg.PolynomialPrimeLocalMembership.from_json

Deserialize and revalidate a PolynomialPrimeLocalMembership from typed JSON.

Detailed contract

Deserialize and independently revalidate membership evidence.

(cls, value: str) -> PolynomialPrimeLocalMembership[CoefficientRing]

noether::commalg::PolynomialPrimeLocalMembership::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, flint-core, groebner-kernel, module-core, poly-core, resolution-kernel
GIL attached / bounded
Semantic ID noether/commalg/PolynomialPrimeLocalMembership@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

commalg.PolynomialPrimeLocalMembership.ideal

Return the ideal recorded by this PolynomialPrimeLocalMembership.

Detailed contract

Local ideal whose membership was tested.

(self) -> PolynomialPrimeLocalIdeal[_ProjectedIdealFieldContext]

noether::commalg::PolynomialPrimeLocalMembership::ideal · Direct Rust declaration

pub fn ideal(&self) -> &PolynomialPrimeLocalIdeal<R>
Contract Value
Guarantee checked deterministic result
Determinism deterministic
Availability default CPU build
Domain implementation crates noether, flint-core, groebner-kernel, module-core, poly-core, resolution-kernel
GIL attached / bounded
Semantic ID noether/commalg/PolynomialPrimeLocalMembership@1

Executable usage: examples/12_number_field_ideals.py:17 · examples/12_number_field_ideals.py:18 · examples/12_number_field_ideals.py:19 · examples/12_number_field_ideals.py:3 · examples/15_groebner_twisted_cubic.py:12 · examples/15_groebner_twisted_cubic.py:13

commalg.PolynomialPrimeLocalMembership.is_member

Test whether this PolynomialPrimeLocalMembership is member.

Detailed contract

Whether the colon ideal contains an element outside the prime.

(self) -> bool

noether::commalg::PolynomialPrimeLocalMembership::is_member · Direct Rust declaration

pub const fn is_member(&self) -> bool
Contract Value
Guarantee checked deterministic result
Determinism deterministic
Availability default CPU build
Domain implementation crates noether, flint-core, groebner-kernel, module-core, poly-core, resolution-kernel
GIL attached / bounded
Semantic ID noether/commalg/PolynomialPrimeLocalMembership@1

Executable usage: examples/30_modules_and_resolutions.py:31 · validation/unit/commalg/test_local_algebra.py:58 · validation/unit/commalg/test_polynomial_ideal_facade.py:274 · validation/unit/commalg/test_polynomial_ideal_facade.py:305 · validation/unit/commalg/test_prime_localization.py:45 · validation/unit/commalg/test_prime_localization.py:51

commalg.PolynomialPrimeLocalMembership.multiplier

Return the multiplier recorded by this PolynomialPrimeLocalMembership.

Detailed contract

Unit membership multiplier, present exactly in the member case.

(self) -> PolynomialPrimeLocalElement[_ProjectedIdealFieldContext] | None

noether::commalg::PolynomialPrimeLocalMembership::multiplier · Direct Rust declaration

pub fn multiplier(&self) -> Option<&PolynomialPrimeLocalElement<R>>
Contract Value
Guarantee checked deterministic result
Determinism deterministic
Availability default CPU build
Domain implementation crates noether, flint-core, groebner-kernel, module-core, poly-core, resolution-kernel
GIL attached / bounded
Semantic ID noether/commalg/PolynomialPrimeLocalMembership@1

Executable usage: validation/unit/commalg/test_local_algebra.py:59 · validation/unit/commalg/test_polynomial_ideal_facade.py:328 · validation/unit/commalg/test_prime_localization.py:46 · validation/unit/commalg/test_prime_localization.py:47 · validation/unit/commalg/test_prime_localization.py:52 · validation/unit/homalg/test_local_module.py:34

commalg.PolynomialPrimeLocalMembership.quotients

Return the quotients recorded by this PolynomialPrimeLocalMembership.

Detailed contract

Coefficients against the canonical local generators.

(self) -> list[PolynomialPrimeLocalElement[_ProjectedIdealFieldContext]]

noether::commalg::PolynomialPrimeLocalMembership::quotients · Direct Rust declaration

pub fn quotients(&self) -> &[PolynomialPrimeLocalElement<R>]
Contract Value
Guarantee checked deterministic result
Determinism deterministic
Availability default CPU build
Domain implementation crates noether, flint-core, groebner-kernel, module-core, poly-core, resolution-kernel
GIL attached / bounded
Semantic ID noether/commalg/PolynomialPrimeLocalMembership@1

Executable usage: validation/unit/commalg/test_local_algebra.py:60 · validation/unit/commalg/test_prime_localization.py:48 · validation/unit/commalg/test_prime_localization.py:53 · validation/unit/commalg/test_quotient_facade.py:3 · validation/unit/homalg/test_local_module.py:36

commalg.PolynomialPrimeLocalMembership.to_json

Serialize this PolynomialPrimeLocalMembership to its canonical typed JSON representation.

Detailed contract

Serialize exact local-membership evidence.

(self) -> str

noether::commalg::PolynomialPrimeLocalMembership::to_json · Direct Rust declaration

pub fn to_json(&self) -> Result<String, NoetherError>where R: Serialize, R::Element: Serialize, Ideal<PolynomialRing<R>>: Serialize,
Contract Value
Guarantee checked deterministic result
Determinism deterministic
Availability default CPU build
Domain implementation crates noether, flint-core, groebner-kernel, module-core, poly-core, resolution-kernel
GIL attached / bounded
Semantic ID noether/commalg/PolynomialPrimeLocalMembership@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

commalg.PolynomialPrimeLocalMembership.value

Return the value recorded by this PolynomialPrimeLocalMembership.

Detailed contract

Exact tested value.

(self) -> PolynomialPrimeLocalElement[_ProjectedIdealFieldContext]

noether::commalg::PolynomialPrimeLocalMembership::value · Direct Rust declaration

pub fn value(&self) -> &PolynomialPrimeLocalElement<R>
Contract Value
Guarantee checked deterministic result
Determinism deterministic
Availability default CPU build
Domain implementation crates noether, flint-core, groebner-kernel, module-core, poly-core, resolution-kernel
GIL attached / bounded
Semantic ID noether/commalg/PolynomialPrimeLocalMembership@1

Executable usage: examples/09_finite_field_isomorphisms.py:13 · examples/09_finite_field_isomorphisms.py:14 · examples/13_chinese_remainder_theorem.py:12 · examples/13_chinese_remainder_theorem.py:13 · examples/13_chinese_remainder_theorem.py:14 · examples/17_weighted_power_series.py:18

commalg.PolynomialPrimeLocalMembership.verify

Replay and verify the mathematical evidence carried by this PolynomialPrimeLocalMembership.

Detailed contract

Recompute the colon criterion and the canonical evidence.

(self) -> None

noether::commalg::PolynomialPrimeLocalMembership::verify · Direct Rust declaration

pub fn verify(&self) -> Result<(), PrimeLocalizationError>
Contract Value
Guarantee checked deterministic result
Determinism deterministic
Availability default CPU build
Domain implementation crates noether, flint-core, groebner-kernel, module-core, poly-core, resolution-kernel
GIL attached / bounded
Semantic ID noether/commalg/PolynomialPrimeLocalMembership@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