Skip to content

combin · Partition

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

Worked example

The complete checked program Weight characters and second Chern classes for polynomial GL representations uses this API directly.

# SPDX-License-Identifier: MIT
# Copyright (c) 2026 Benjamin Antieau and Deven Manam
"""Weight characters and second Chern classes for polynomial GL representations."""

from noether.combin import Partition, Tableau
from noether.groups import PolynomialGlRepresentation

shape = Partition((2, 1))
tableaux = Tableau.semistandard(shape, 3)
assert tableaux.cardinality == 8
assert next(tableaux).content(3) == (2, 1, 0)

wedge_two = PolynomialGlRepresentation(4, Partition((1, 1)))
assert wedge_two.weyl_dimension == 6
assert wedge_two.descends_to_sl_quotient(2)
assert wedge_two.second_chern_index() == 2
assert wedge_two.second_chern_index_from_weights() == 2

example = PolynomialGlRepresentation(6, shape)
assert example.weyl_dimension == 70
assert example.second_chern_index() == 33
example.verify_second_chern_index()

character = example.sl_character()
assert character.dimension == 70
assert character.chern_class(2).nonzero_term_count > 0

print("tableaux=8; c2(wedge^2 gamma_4)=2c2; c2(gamma_6^(2,1))=33c2")

Run it with .venv/bin/python examples/27_weight_characters.py.

combin.Partition

A thin Python handle around Noether's canonical integer partition.

Partition(parts: Sequence[int])

noether::combin::Partition · Direct Rust declaration

pub struct Partition { /* private fields */ }
Contract Value
Guarantee checked deterministic result
Determinism deterministic
Availability default CPU build
Domain implementation crates noether, graph-core, perm-core
GIL attached / bounded
Semantic ID noether/combin/Partition@1

Executable usage: examples/27_weight_characters.py:13 · examples/27_weight_characters.py:5 · examples/27_weight_characters.py:8 · validation/unit/combin/test_acceptance_workload.py:14 · validation/unit/combin/test_acceptance_workload.py:38 · validation/unit/combin/test_acceptance_workload.py:40

combin.Partition.__eq__

Test mathematical equality with another value.

(self, other: object) -> bool

noether::combin::Partition · Python projection

Python projection convenience over this Rust mathematical type
Contract Value
Guarantee checked deterministic result
Determinism deterministic
Availability default CPU build
Domain implementation crates noether, graph-core, perm-core
GIL attached / bounded
Semantic ID noether/combin/Partition@1

combin.Partition.conjugate

Transpose the Young diagram.

(self) -> Partition

noether::combin::Partition::conjugate · Direct Rust declaration

pub fn conjugate(&self) -> Self
Contract Value
Guarantee checked deterministic result
Determinism deterministic
Availability default CPU build
Domain implementation crates noether, graph-core, perm-core
GIL attached / bounded
Semantic ID noether/combin/Partition@1

Executable usage: validation/unit/combinatorics/test_partition_composition.py:16 · validation/unit/combinatorics/test_partition_composition.py:17 · validation/unit/numthy/test_number_field_facade.py:57 · validation/corpus/commalg/isogonal-conjugate-distance-identity.py:3 · validation/corpus/numthy/finite-field-isomorphism-f25.py:56

combin.Partition.from_json

Deserialize and revalidate the partition.

(value: str) -> Partition

noether::combin::Partition · Python projection

Python projection convenience over this Rust mathematical type
Contract Value
Guarantee checked deterministic result
Determinism deterministic
Availability default CPU build
Domain implementation crates noether, graph-core, perm-core
GIL attached / bounded
Semantic ID noether/combin/Partition@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

combin.Partition.hook_lengths

Hook lengths in row-major Young-diagram order.

(self) -> tuple[int, ...]

noether::combin::Partition::hook_lengths · Direct Rust declaration

pub fn hook_lengths(&self) -> Vec<usize>
Contract Value
Guarantee checked deterministic result
Determinism deterministic
Availability default CPU build
Domain implementation crates noether, graph-core, perm-core
GIL attached / bounded
Semantic ID noether/combin/Partition@1

Executable usage: validation/unit/combinatorics/test_partition_composition.py:18 · validation/unit/combinatorics/test_partition_composition.py:32

combin.Partition.parts

Canonical weakly-decreasing parts.

(self) -> tuple[int, ...]

noether::combin::Partition::parts · Direct Rust declaration

pub fn parts(&self) -> &[usize]
Contract Value
Guarantee checked deterministic result
Determinism deterministic
Availability default CPU build
Domain implementation crates noether, graph-core, perm-core
GIL attached / bounded
Semantic ID noether/combin/Partition@1

Executable usage: validation/unit/combin/test_acceptance_workload.py:45 · validation/unit/combinatorics/test_partition_composition.py:14 · validation/unit/combinatorics/test_partition_composition.py:28 · validation/unit/combinatorics/test_partition_composition.py:40 · validation/unit/combinatorics/test_partition_types.py:43 · validation/unit/groups/test_weight_characters.py:14

combin.Partition.size

Integer being partitioned.

(self) -> int

noether::combin::Partition::size · Direct Rust declaration

pub const fn size(&self) -> usize
Contract Value
Guarantee checked deterministic result
Determinism deterministic
Availability default CPU build
Domain implementation crates noether, graph-core, perm-core
GIL attached / bounded
Semantic ID noether/combin/Partition@1

Executable usage: examples/20_conjugacy_classes.py:16 · examples/20_conjugacy_classes.py:17 · examples/20_conjugacy_classes.py:18 · examples/distributed/f2_linear_algebra.py:14 · examples/distributed/f2_linear_algebra.py:60 · validation/unit/combinatorics/test_partition_composition.py:15

combin.Partition.to_json

Serialize only the canonical parts.

(self) -> str

noether::combin::Partition · Python projection

Python projection convenience over this Rust mathematical type
Contract Value
Guarantee checked deterministic result
Determinism deterministic
Availability default CPU build
Domain implementation crates noether, graph-core, perm-core
GIL attached / bounded
Semantic ID noether/combin/Partition@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