Skip to content

groups · PolynomialGlRepresentation

16 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.

groups.PolynomialGlRepresentation

The irreducible polynomial representation of GL indexed by a partition.

PolynomialGlRepresentation(rank: int, partition: Partition)

noether::groups::PolynomialGlRepresentation · Direct Rust declaration

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

Executable usage: examples/27_weight_characters.py:13 · examples/27_weight_characters.py:19 · examples/27_weight_characters.py:6 · validation/unit/groups/test_weight_characters.py:14 · validation/unit/groups/test_weight_characters.py:15 · validation/unit/groups/test_weight_characters.py:66

groups.PolynomialGlRepresentation.__eq__

Test mathematical equality with another value.

(self, other: object) -> bool

noether::groups::PolynomialGlRepresentation · 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, perm-core
GIL attached / bounded
Semantic ID noether/groups/PolynomialGlRepresentation@1

groups.PolynomialGlRepresentation.degree

Return the degree recorded by this PolynomialGlRepresentation.

Detailed contract

Polynomial degree, equal to the partition size.

(self) -> int

noether::groups::PolynomialGlRepresentation::degree · Direct Rust declaration

pub fn degree(&self) -> Integer
Contract Value
Guarantee checked deterministic result
Determinism deterministic
Availability default CPU build
Domain implementation crates noether, perm-core
GIL attached / bounded
Semantic ID noether/groups/PolynomialGlRepresentation@1

Executable usage: examples/14_weighted_polynomials.py:16 · examples/14_weighted_polynomials.py:18 · examples/15_groebner_twisted_cubic.py:15 · examples/15_groebner_twisted_cubic.py:28 · examples/31_local_fields_and_precision.py:37 · examples/33_simplicial_cohomology_operations.py:26

groups.PolynomialGlRepresentation.descends_to_sl_quotient

Compute descends to sl quotient for this PolynomialGlRepresentation.

Detailed contract

Whether the restricted representation descends to SL_n / mu_d.

(self, order: int) -> bool

noether::groups::PolynomialGlRepresentation::descends_to_sl_quotient · Direct Rust declaration

pub fn descends_to_sl_quotient( &self, order: usize, ) -> Result<bool, RepresentationError>
Contract Value
Guarantee checked deterministic result
Determinism deterministic
Availability default CPU build
Domain implementation crates noether, perm-core
GIL attached / bounded
Semantic ID noether/groups/PolynomialGlRepresentation@1

Executable usage: examples/27_weight_characters.py:15 · validation/unit/groups/test_weight_characters.py:114 · validation/unit/groups/test_weight_characters.py:56

groups.PolynomialGlRepresentation.from_json

Deserialize and revalidate a PolynomialGlRepresentation from typed JSON.

Detailed contract

Deserialize and revalidate the rank and canonical partition.

(value: str) -> PolynomialGlRepresentation

noether::groups::PolynomialGlRepresentation::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, perm-core
GIL attached / bounded
Semantic ID noether/groups/PolynomialGlRepresentation@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

groups.PolynomialGlRepresentation.gl_character

Compute gl character for this PolynomialGlRepresentation.

Detailed contract

Weight character in standard GL_n content coordinates.

(self) -> WeightCharacter

noether::groups::PolynomialGlRepresentation::gl_character · Direct Rust declaration

pub fn gl_character(&self) -> Result<WeightCharacter, RepresentationError>
Contract Value
Guarantee checked deterministic result
Determinism deterministic
Availability default CPU build
Domain implementation crates noether, perm-core
GIL attached / bounded
Semantic ID noether/groups/PolynomialGlRepresentation@1

Executable usage: validation/corpus/groups/gelfand-tsetlin-weight-character.py:24

groups.PolynomialGlRepresentation.highest_weight

Return the highest weight recorded by this PolynomialGlRepresentation.

Detailed contract

Highest weight in standard GL_n coordinates.

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

noether::groups::PolynomialGlRepresentation::highest_weight · Direct Rust declaration

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

groups.PolynomialGlRepresentation.partition

Return the partition recorded by this PolynomialGlRepresentation.

Detailed contract

Indexing partition.

(self) -> Partition

noether::groups::PolynomialGlRepresentation::partition · Direct Rust declaration

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

Executable usage: validation/unit/combin/test_acceptance_workload.py:45 · validation/unit/groups/test_weight_characters.py:112 · validation/unit/groups/test_weight_characters.py:113 · validation/unit/infra/test_corpus_acceptance.py:123 · validation/unit/infra/test_examples.py:28 · validation/unit/infra/test_examples.py:34

groups.PolynomialGlRepresentation.rank

Return the rank recorded by this PolynomialGlRepresentation.

Detailed contract

Ambient n.

(self) -> int

noether::groups::PolynomialGlRepresentation::rank · Direct Rust declaration

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

Executable usage: examples/38_exact_linear_systems.py:78 · examples/distributed/f2_linear_algebra.py:34 · examples/distributed/f2_linear_algebra.py:54 · examples/distributed/f2_linear_algebra.py:55 · examples/distributed/f2_linear_algebra.py:60 · validation/unit/combin/test_acceptance_workload.py:74

groups.PolynomialGlRepresentation.scalar_central_character

Return the scalar central character recorded by this PolynomialGlRepresentation.

Detailed contract

Exponent modulo n by which the center mu_n of SL_n acts.

(self) -> int

noether::groups::PolynomialGlRepresentation::scalar_central_character · Direct Rust declaration

pub fn scalar_central_character(&self) -> Integer
Contract Value
Guarantee checked deterministic result
Determinism deterministic
Availability default CPU build
Domain implementation crates noether, perm-core
GIL attached / bounded
Semantic ID noether/groups/PolynomialGlRepresentation@1

Executable usage: validation/unit/groups/test_weight_characters.py:55

groups.PolynomialGlRepresentation.second_chern_index

Exact multiple of the standard SL_n second Chern class.

Detailed contract

Exact multiple of the standard SL_n second Chern class. This fast route uses Weyl dimension and the quadratic Casimir, with an explicit divisibility check in Z.

(self) -> int

noether::groups::PolynomialGlRepresentation::second_chern_index · Direct Rust declaration

pub fn second_chern_index(&self) -> Result<Integer, RepresentationError>
Contract Value
Guarantee checked deterministic result
Determinism deterministic
Availability default CPU build
Domain implementation crates noether, perm-core
GIL attached / bounded
Semantic ID noether/groups/PolynomialGlRepresentation@1

Executable usage: examples/27_weight_characters.py:16 · examples/27_weight_characters.py:21 · validation/unit/groups/test_weight_characters.py:115 · validation/unit/groups/test_weight_characters.py:57 · validation/unit/groups/test_weight_characters.py:63 · validation/unit/infra/test_public_api_index.py:174

groups.PolynomialGlRepresentation.second_chern_index_from_weights

Compute second chern index from weights for this PolynomialGlRepresentation.

Detailed contract

Independent degree-two weight-product computation of the Chern index.

(self) -> int

noether::groups::PolynomialGlRepresentation::second_chern_index_from_weights · Direct Rust declaration

pub fn second_chern_index_from_weights( &self, ) -> Result<Integer, RepresentationError>
Contract Value
Guarantee checked deterministic result
Determinism deterministic
Availability default CPU build
Domain implementation crates noether, perm-core
GIL attached / bounded
Semantic ID noether/groups/PolynomialGlRepresentation@1

Executable usage: examples/27_weight_characters.py:17 · validation/unit/groups/test_weight_characters.py:119 · validation/unit/groups/test_weight_characters.py:120 · validation/unit/groups/test_weight_characters.py:58

groups.PolynomialGlRepresentation.sl_character

Compute sl character for this PolynomialGlRepresentation.

Detailed contract

Restriction of the content character to fundamental weights of SL_n.

(self) -> WeightCharacter

noether::groups::PolynomialGlRepresentation::sl_character · Direct Rust declaration

pub fn sl_character(&self) -> Result<WeightCharacter, RepresentationError>
Contract Value
Guarantee checked deterministic result
Determinism deterministic
Availability default CPU build
Domain implementation crates noether, perm-core
GIL attached / bounded
Semantic ID noether/groups/PolynomialGlRepresentation@1

Executable usage: examples/27_weight_characters.py:24 · validation/unit/groups/test_weight_characters.py:64 · validation/unit/groups/test_weight_characters.py:65

groups.PolynomialGlRepresentation.to_json

Serialize this PolynomialGlRepresentation to its canonical typed JSON representation.

Detailed contract

Serialize the rank and canonical partition.

(self) -> str

noether::groups::PolynomialGlRepresentation::to_json · Direct Rust declaration

pub fn to_json(&self) -> Result<String, NoetherError>
Contract Value
Guarantee checked deterministic result
Determinism deterministic
Availability default CPU build
Domain implementation crates noether, perm-core
GIL attached / bounded
Semantic ID noether/groups/PolynomialGlRepresentation@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

groups.PolynomialGlRepresentation.verify_second_chern_index

Compute verify second chern index for this PolynomialGlRepresentation.

Detailed contract

Check the fast and explicit degree-two routes independently.

(self) -> None

noether::groups::PolynomialGlRepresentation::verify_second_chern_index · Direct Rust declaration

pub fn verify_second_chern_index(&self) -> Result<(), RepresentationError>
Contract Value
Guarantee checked deterministic result
Determinism deterministic
Availability default CPU build
Domain implementation crates noether, perm-core
GIL attached / bounded
Semantic ID noether/groups/PolynomialGlRepresentation@1

Executable usage: examples/27_weight_characters.py:22 · validation/unit/groups/test_weight_characters.py:59

groups.PolynomialGlRepresentation.weyl_dimension

Return the weyl dimension recorded by this PolynomialGlRepresentation.

Detailed contract

Exact Weyl dimension, computed by the hook-content formula.

(self) -> int

noether::groups::PolynomialGlRepresentation::weyl_dimension · Direct Rust declaration

pub fn weyl_dimension(&self) -> Result<Integer, RepresentationError>
Contract Value
Guarantee checked deterministic result
Determinism deterministic
Availability default CPU build
Domain implementation crates noether, perm-core
GIL attached / bounded
Semantic ID noether/groups/PolynomialGlRepresentation@1

Executable usage: examples/27_weight_characters.py:14 · examples/27_weight_characters.py:20 · validation/unit/groups/test_weight_characters.py:54 · validation/unit/groups/test_weight_characters.py:62 · validation/corpus/groups/gelfand-tsetlin-weight-character.py:26