linalg · IntegralLineEquivalence¶
6 accepted declarations. Python and Rust forms, contracts, evidence, failure boundaries, and checked usages are kept together below.
Worked example¶
The complete checked program Build and verify an isomorphism between two presentations of F_25 uses this API directly.
# SPDX-License-Identifier: MIT
# Copyright (c) 2026 Benjamin Antieau and Deven Manam
"""Build and verify an isomorphism between two presentations of F_25."""
from noether.numthy import FiniteField
def main() -> None:
source = FiniteField.extension(5, 2)
target = FiniteField.with_modulus(5, [2, 0, 1])
isomorphism = source.isomorphism_to(target)
isomorphism.verify()
value = source.element_from_coefficients([3, 2])
assert isomorphism.apply_inverse(isomorphism(value)) == value
print(f"a maps to {isomorphism.generator_image}")
if __name__ == "__main__":
main()
Run it with .venv/bin/python examples/09_finite_field_isomorphisms.py.
linalg.IntegralLineEquivalence¶
Verified unimodular equivalence between two line configurations.
noether::linalg::IntegralLineEquivalence · Direct Rust declaration
| Contract | Value |
|---|---|
| Guarantee | checked deterministic result |
| Determinism | deterministic |
| Availability | default CPU build |
| Domain implementation crates | noether, flint-core, m4rst, m4rst-distributed, m4rste, mzs, pwvla, spar-core, sparla, sparb, lattice-enum |
| GIL | attached / bounded |
| Semantic ID | noether/linalg/IntegralLineEquivalence@1 |
Executable usage: validation/unit/linalg/test_lattice_facade.py:13 · validation/unit/linalg/test_lattice_facade.py:176 · validation/unit/linalg/test_lattice_facade.py:185
linalg.IntegralLineEquivalence.line_permutation¶
Induced bijection of source-line and target-line indices.
Detailed contract
Induced bijection from source-line indices to target-line indices.
noether::linalg::IntegralLineEquivalence::line_permutation · Direct Rust declaration
| Contract | Value |
|---|---|
| Guarantee | checked deterministic result |
| Determinism | deterministic |
| Availability | default CPU build |
| Domain implementation crates | noether, flint-core, m4rst, m4rst-distributed, m4rste, mzs, pwvla, spar-core, sparla, sparb, lattice-enum |
| GIL | attached / bounded |
| Semantic ID | noether/linalg/IntegralLineEquivalence@1 |
Executable usage: validation/unit/linalg/test_lattice_facade.py:180
linalg.IntegralLineEquivalence.source¶
Source configuration.
noether::linalg::IntegralLineEquivalence::source · Direct Rust declaration
| Contract | Value |
|---|---|
| Guarantee | checked deterministic result |
| Determinism | deterministic |
| Availability | default CPU build |
| Domain implementation crates | noether, flint-core, m4rst, m4rst-distributed, m4rste, mzs, pwvla, spar-core, sparla, sparb, lattice-enum |
| GIL | attached / bounded |
| Semantic ID | noether/linalg/IntegralLineEquivalence@1 |
Executable usage: examples/09_finite_field_isomorphisms.py:11 · examples/09_finite_field_isomorphisms.py:13 · examples/09_finite_field_isomorphisms.py:9 · examples/30_modules_and_resolutions.py:34 · examples/30_modules_and_resolutions.py:37 · validation/unit/category/test_acceptance_workload.py:25
linalg.IntegralLineEquivalence.target¶
Target configuration.
noether::linalg::IntegralLineEquivalence::target · Direct Rust declaration
| Contract | Value |
|---|---|
| Guarantee | checked deterministic result |
| Determinism | deterministic |
| Availability | default CPU build |
| Domain implementation crates | noether, flint-core, m4rst, m4rst-distributed, m4rste, mzs, pwvla, spar-core, sparla, sparb, lattice-enum |
| GIL | attached / bounded |
| Semantic ID | noether/linalg/IntegralLineEquivalence@1 |
Executable usage: examples/09_finite_field_isomorphisms.py:10 · examples/09_finite_field_isomorphisms.py:11 · examples/30_modules_and_resolutions.py:33 · examples/30_modules_and_resolutions.py:38 · examples/31_local_fields_and_precision.py:27 · examples/36_affine_normalization.py:16
linalg.IntegralLineEquivalence.transformation¶
Unimodular matrix carrying source to target.
Detailed contract
Unimodular matrix carrying the source to the target.
noether::linalg::IntegralLineEquivalence::transformation · Direct Rust declaration
| Contract | Value |
|---|---|
| Guarantee | checked deterministic result |
| Determinism | deterministic |
| Availability | default CPU build |
| Domain implementation crates | noether, flint-core, m4rst, m4rst-distributed, m4rste, mzs, pwvla, spar-core, sparla, sparb, lattice-enum |
| GIL | attached / bounded |
| Semantic ID | noether/linalg/IntegralLineEquivalence@1 |
Executable usage: examples/04_smith_normal_form.py:3 · validation/unit/linalg/test_lattice_facade.py:172 · validation/unit/linalg/test_lattice_facade.py:173 · validation/unit/linalg/test_lattice_facade.py:179 · validation/bench/macaulay2_core.py:1372 · validation/corpus/linalg/picard-cremona-transformations.py:20
linalg.IntegralLineEquivalence.verify¶
Recheck all equivalence evidence exactly.
Detailed contract
Recheck the transformation and its induced line bijection exactly.
noether::linalg::IntegralLineEquivalence::verify · Direct Rust declaration
| Contract | Value |
|---|---|
| Guarantee | checked deterministic result |
| Determinism | deterministic |
| Availability | default CPU build |
| Domain implementation crates | noether, flint-core, m4rst, m4rst-distributed, m4rste, mzs, pwvla, spar-core, sparla, sparb, lattice-enum |
| GIL | attached / bounded |
| Semantic ID | noether/linalg/IntegralLineEquivalence@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