Skip to content

commalg · LocalPolynomialRing

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

Worked example

The complete checked program Certify symmetries, realizations, and completions of integral lines uses this API directly.

# SPDX-License-Identifier: MIT
# Copyright (c) 2026 Benjamin Antieau and Deven Manam
"""Certify symmetries, realizations, and completions of integral lines."""

from noether.linalg import IntegralLineConfiguration


def main() -> None:
    axes = IntegralLineConfiguration(2, [[1, 0], [0, 1]])
    symmetries = axes.automorphism_group()
    symmetries.verify()
    assert symmetries.order == 8

    a2_lines = IntegralLineConfiguration(2, [[1, 0], [0, 1], [1, -1]])
    realization = a2_lines.realize_minimum(max_iterations=20)
    realization.verify()
    assert realization.status == "realized"
    assert realization.realization is not None

    completion = axes.complete_minimum(max_iterations=20)
    completion.verify()
    assert completion.status == "completed"
    assert completion.realization is not None

    print(
        "integral lines:",
        f"axis symmetry order={symmetries.order}",
        f"A2 Gram matrix={realization.realization.gram_matrix}",
        f"axis completion={completion.realization.configuration.vectors}",
    )


if __name__ == "__main__":
    main()

Run it with .venv/bin/python examples/29_integral_line_configurations.py.

commalg.LocalPolynomialRing

A polynomial ring localized at one rational maximal ideal.

LocalPolynomialRing(ambient_ring: PolynomialRing[_ProjectedIdealFieldContext], point: Iterable[Coefficient], *, order: LocalMonomialOrder | None=None)

noether::commalg::LocalPolynomialRing · Direct Rust declaration

pub struct LocalPolynomialRing<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/LocalPolynomialRing@1

Executable usage: validation/unit/commalg/test_local_algebra.py:12 · validation/unit/commalg/test_local_algebra.py:24 · validation/unit/commalg/test_local_algebra.py:34 · validation/unit/commalg/test_local_algebra.py:40 · validation/unit/commalg/test_local_algebra.py:53 · validation/unit/commalg/test_local_algebra.py:77

commalg.LocalPolynomialRing.ambient_ring

Return the ambient ring recorded by this LocalPolynomialRing.

Detailed contract

Ambient global polynomial context.

(self) -> PolynomialRing[_ProjectedIdealFieldContext]

noether::commalg::LocalPolynomialRing::ambient_ring · Direct Rust declaration

pub fn ambient_ring(&self) -> &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/LocalPolynomialRing@1

Executable usage: validation/unit/commalg/test_acceptance_workload.py:120 · validation/unit/commalg/test_construction_algebras.py:36 · validation/unit/commalg/test_construction_algebras.py:37 · validation/unit/commalg/test_construction_algebras.py:44 · validation/unit/commalg/test_scheme_facade.py:262

commalg.LocalPolynomialRing.at_origin

Construct a LocalPolynomialRing using at origin.

Detailed contract

Localize at the origin.

(cls, ambient_ring: PolynomialRing[_ProjectedIdealFieldContext], *, order: LocalMonomialOrder | None=None) -> LocalPolynomialRing[_ProjectedIdealFieldContext]

noether::commalg::LocalPolynomialRing::at_origin · Direct Rust declaration

pub fn at_origin( ambient_ring: PolynomialRing<R>, order: LocalMonomialOrder, ) -> Result<Self, LocalAlgebraError>
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/LocalPolynomialRing@1

Executable usage: validation/unit/commalg/test_local_algebra.py:40 · validation/unit/commalg/test_local_algebra.py:53 · validation/unit/commalg/test_local_algebra.py:77 · validation/unit/commalg/test_local_algebra.py:89 · validation/unit/homalg/test_local_module.py:17 · validation/unit/homalg/test_local_module.py:48

commalg.LocalPolynomialRing.completion

Compute completion for this LocalPolynomialRing.

Detailed contract

Explicit map to the total-degree completion truncated in degrees strictly below precision. This is a finite jet, not an identification of the localization with its completion. Restrictions to lower precision remain explicit on the returned map.

(self, precision: int) -> LocalCompletionMap[_ProjectedIdealFieldContext]

noether::commalg::LocalPolynomialRing::completion · Direct Rust declaration

pub fn completion( &self, precision: u64, ) -> Result<LocalCompletionMap<R>, LocalAlgebraError>
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/LocalPolynomialRing@1

Executable usage: examples/29_integral_line_configurations.py:20 · examples/29_integral_line_configurations.py:21 · examples/29_integral_line_configurations.py:22 · examples/29_integral_line_configurations.py:23 · examples/29_integral_line_configurations.py:29 · examples/34_finite_group_cohomology.py:21

commalg.LocalPolynomialRing.coordinate_ring

Return the coordinate ring recorded by this LocalPolynomialRing.

Detailed contract

Polynomial storage context in translated local coordinates.

(self) -> PolynomialRing[_ProjectedIdealFieldContext]

noether::commalg::LocalPolynomialRing::coordinate_ring · Direct Rust declaration

pub fn coordinate_ring(&self) -> &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/LocalPolynomialRing@1

Executable usage: examples/18_finite_field_schemes.py:12 · examples/18_finite_field_schemes.py:13 · validation/unit/commalg/test_acceptance_workload.py:106 · validation/unit/commalg/test_acceptance_workload.py:107 · validation/unit/commalg/test_acceptance_workload.py:113 · validation/unit/commalg/test_acceptance_workload.py:114

commalg.LocalPolynomialRing.fraction

Compute fraction for this LocalPolynomialRing.

Detailed contract

Construct a fraction in translated coordinates.

(self, numerator: Polynomial[_ProjectedIdealFieldContext], denominator: Polynomial[_ProjectedIdealFieldContext]) -> LocalPolynomial[_ProjectedIdealFieldContext]

noether::commalg::LocalPolynomialRing::fraction · Direct Rust declaration

pub fn fraction( &self, numerator: Polynomial<R>, denominator: Polynomial<R>, ) -> Result<LocalPolynomial<R>, LocalAlgebraError>
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/LocalPolynomialRing@1

Executable usage: examples/16_rational_functions.py:14 · validation/unit/commalg/test_curve_facade.py:102 · validation/unit/commalg/test_local_algebra.py:42 · validation/unit/commalg/test_local_algebra.py:47 · validation/unit/commalg/test_local_algebra.py:91 · validation/unit/commalg/test_prime_localization.py:23

commalg.LocalPolynomialRing.from_ambient_fraction

Construct a LocalPolynomialRing using ambient fraction.

Detailed contract

Construct a fraction from ambient-coordinate polynomials.

(self, numerator: Polynomial[_ProjectedIdealFieldContext], denominator: Polynomial[_ProjectedIdealFieldContext]) -> LocalPolynomial[_ProjectedIdealFieldContext]

noether::commalg::LocalPolynomialRing::from_ambient_fraction · Direct Rust declaration

pub fn from_ambient_fraction( &self, numerator: &Polynomial<R>, denominator: &Polynomial<R>, ) -> Result<LocalPolynomial<R>, LocalAlgebraError>
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/LocalPolynomialRing@1

commalg.LocalPolynomialRing.from_json

Deserialize and revalidate a LocalPolynomialRing from typed JSON.

Detailed contract

Deserialize and revalidate a local polynomial context.

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

noether::commalg::LocalPolynomialRing::from_json · Direct Rust declaration

pub fn from_json(value: &str) -> Result<Self, NoetherError>where R: for<'de> Deserialize<'de>, R::Element: for<'de> Deserialize<'de>,
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/LocalPolynomialRing@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.LocalPolynomialRing.from_polynomial

Construct a LocalPolynomialRing using polynomial.

Detailed contract

Translate an ambient polynomial by x_i=u_i+a_i and localize it.

(self, value: Polynomial[_ProjectedIdealFieldContext]) -> LocalPolynomial[_ProjectedIdealFieldContext]

noether::commalg::LocalPolynomialRing::from_polynomial · Direct Rust declaration

pub fn from_polynomial( &self, value: &Polynomial<R>, ) -> Result<LocalPolynomial<R>, LocalAlgebraError>
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/LocalPolynomialRing@1

Executable usage: validation/unit/commalg/test_acceptance_workload.py:65 · validation/unit/commalg/test_local_algebra.py:27 · validation/unit/commalg/test_local_algebra.py:54 · validation/unit/commalg/test_local_algebra.py:56 · validation/unit/commalg/test_local_algebra.py:63 · validation/unit/commalg/test_local_algebra.py:79

commalg.LocalPolynomialRing.generators

Compute generators for this LocalPolynomialRing.

Detailed contract

Translated local parameters u_i=x_i-a_i.

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

noether::commalg::LocalPolynomialRing::generators · Direct Rust declaration

pub fn generators(&self) -> Result<Vec<LocalPolynomial<R>>, LocalAlgebraError>
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/LocalPolynomialRing@1

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

commalg.LocalPolynomialRing.ideal

Compute ideal for this LocalPolynomialRing.

Detailed contract

Construct the local ideal generated by exact local fractions.

(self, generators: Iterable[LocalPolynomial[_ProjectedIdealFieldContext]]) -> LocalIdeal[_ProjectedIdealFieldContext]

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

pub fn ideal( &self, generators: &[LocalPolynomial<R>], ) -> Result<LocalIdeal<R>, LocalAlgebraError>
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/LocalPolynomialRing@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.LocalPolynomialRing.one

Compute one for this LocalPolynomialRing.

Detailed contract

Multiplicative identity.

(self) -> LocalPolynomial[_ProjectedIdealFieldContext]

noether::commalg::LocalPolynomialRing::one · Direct Rust declaration

pub fn one(&self) -> LocalPolynomial<R>
fn one(&self) -> Self::Element
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/LocalPolynomialRing@1

Executable usage: examples/02_ball_arithmetic.py:13 · examples/11_qadic_witt_vectors.py:11 · examples/24_homology_and_persistence.py:3 · examples/31_local_fields_and_precision.py:27 · validation/unit/combinatorics/test_poset.py:3 · validation/unit/commalg/test_acceptance_workload.py:37

commalg.LocalPolynomialRing.order

Return the order recorded by this LocalPolynomialRing.

Detailed contract

Exact local monomial order used by Mora reduction.

(self) -> LocalMonomialOrder

noether::commalg::LocalPolynomialRing::order · Direct Rust declaration

pub const fn order(&self) -> LocalMonomialOrder
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/LocalPolynomialRing@1

Executable usage: examples/11_qadic_witt_vectors.py:14 · examples/12_number_field_ideals.py:13 · examples/12_number_field_ideals.py:14 · examples/12_number_field_ideals.py:17 · examples/15_groebner_twisted_cubic.py:18 · examples/19_permutation_groups.py:13

commalg.LocalPolynomialRing.point

Return the point recorded by this LocalPolynomialRing.

Detailed contract

Rational point defining the maximal ideal.

(self) -> list[Coefficient]

noether::commalg::LocalPolynomialRing::point · Direct Rust declaration

pub fn point(&self) -> &[R::Element]
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/LocalPolynomialRing@1

Executable usage: examples/26_elliptic_descent_functions.py:17 · examples/26_elliptic_descent_functions.py:18 · examples/26_elliptic_descent_functions.py:20 · examples/26_elliptic_descent_functions.py:25 · examples/26_elliptic_descent_functions.py:31 · examples/26_elliptic_descent_functions.py:32

commalg.LocalPolynomialRing.standard_basis

Compute standard basis for this LocalPolynomialRing.

Detailed contract

Compute a Mora standard basis for a finitely generated local ideal.

(self, generators: Iterable[LocalPolynomial[_ProjectedIdealFieldContext]]) -> LocalStandardBasis[_ProjectedIdealFieldContext]

noether::commalg::LocalPolynomialRing::standard_basis · Direct Rust declaration

pub fn standard_basis( &self, generators: &[LocalPolynomial<R>], ) -> Result<LocalStandardBasis<R>, LocalAlgebraError>
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/LocalPolynomialRing@1

Executable usage: validation/unit/commalg/test_local_algebra.py:55 · validation/unit/commalg/test_local_algebra.py:79

commalg.LocalPolynomialRing.to_json

Serialize this LocalPolynomialRing to its canonical typed JSON representation.

Detailed contract

Serialize the ambient ring, point, and local order.

(self) -> str

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

pub fn to_json(&self) -> Result<String, NoetherError>where R: Serialize, R::Element: 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/LocalPolynomialRing@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.LocalPolynomialRing.zero

Compute zero for this LocalPolynomialRing.

Detailed contract

Additive identity.

(self) -> LocalPolynomial[_ProjectedIdealFieldContext]

noether::commalg::LocalPolynomialRing::zero · Direct Rust declaration

pub fn zero(&self) -> LocalPolynomial<R>
fn zero(&self) -> Self::Element
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/LocalPolynomialRing@1

Executable usage: examples/08_finite_field_extensions.py:11 · examples/10_padic_hensel_lifting.py:15 · examples/40_exterior_algebra.py:26 · examples/distributed/f2_linear_algebra.py:28 · examples/distributed/f2_linear_algebra.py:29 · examples/distributed/f2_linear_algebra.py:30