numthy · Module functions¶
4 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.
numthy.cyclotomic_polynomial¶
Return the positive-index cyclotomic polynomial in Z[x].
noether::numthy::cyclotomic_polynomial · Direct Rust declaration
| Contract | Value |
|---|---|
| Guarantee | checked deterministic result |
| Determinism | deterministic |
| Availability | default CPU build |
| Domain implementation crates | noether, flint-core |
| GIL | released |
Executable usage: examples/07_integer_factorization.py:13 · examples/07_integer_factorization.py:5 · validation/unit/numthy/test_integer_arithmetic_facade.py:13 · validation/unit/numthy/test_integer_arithmetic_facade.py:86 · validation/unit/numthy/test_integer_arithmetic_facade.py:91 · validation/unit/numthy/test_integer_arithmetic_facade.py:94
numthy.factor¶
Return the complete proved factorization of a nonzero integer.
Detailed contract
Return the complete proved factorization of a nonzero Python integer.
noether::numthy::factor · Direct Rust declaration
| Contract | Value |
|---|---|
| Guarantee | checked deterministic result |
| Determinism | deterministic |
| Availability | default CPU build |
| Dispatch / backing | flint |
| GIL | released |
| Evidence | IntegerFactorization.verify |
Executable usage: examples/07_integer_factorization.py:10 · examples/07_integer_factorization.py:5 · examples/12_number_field_ideals.py:3 · validation/unit/commalg/test_context_tower_workload.py:87 · validation/unit/commalg/test_polynomial_facade.py:120 · validation/unit/commalg/test_polynomial_facade.py:134
Example
from noether.numthy import factor
result = factor(-360)
assert result.factors == [(2, 3), (3, 2), (5, 1)]
assert result.verify(-360)
numthy.is_prime¶
Test primality with FLINT's deterministic primality prover.
noether::numthy::is_prime · Direct Rust declaration
| Contract | Value |
|---|---|
| Guarantee | checked deterministic result |
| Determinism | deterministic |
| Availability | default CPU build |
| Domain implementation crates | noether, flint-core |
| GIL | released |
Executable usage: examples/07_integer_factorization.py:12 · examples/07_integer_factorization.py:5 · validation/unit/infra/test_discovery.py:92 · validation/unit/numthy/test_integer_arithmetic_facade.py:15 · validation/unit/numthy/test_integer_arithmetic_facade.py:55 · validation/unit/numthy/test_integer_arithmetic_facade.py:56
numthy.partial_factor¶
Return a deterministic partial factorization within explicit work bounds.
Detailed contract
Return deterministic partial factorization within explicit work bounds.
noether::numthy::partial_factor · Direct Rust declaration
| Contract | Value |
|---|---|
| Guarantee | checked deterministic result |
| Determinism | deterministic |
| Availability | default CPU build |
| Domain implementation crates | noether, flint-core |
| GIL | released |
Executable usage: validation/unit/infra/test_concurrency.py:119 · validation/unit/infra/test_concurrency.py:18 · validation/unit/infra/test_discovery.py:91 · validation/unit/infra/test_public_api_index.py:254 · validation/unit/numthy/test_integer_arithmetic_facade.py:16 · validation/unit/numthy/test_integer_arithmetic_facade.py:65