# highestWeightsDecomposition -- irreducible decomposition of a complex, ring, ideal or module

## Synopsis

• Optional inputs:
• Range => ..., default value {-infinity, infinity}, decompose only part of a complex

## Description

Let $G$ be a semisimple algebraic group which acts on a polynomial ring $R$ compatibly with the grading. Let $T\subseteq G$ be a maximal torus and assume the variables in $R$ are weight vectors for the action of $T$.

This method can be used to obtain the decomposition into highest weight representations of various objects over $R$ that carry a compatible $G$-action. These objects can be ideals in $R$, quotients of $R$ by an ideal, $R$-modules or the terms in a complex of free $R$-modules.

The weights of the variables in the ring $R$ must be set a priori, using the method setWeights.

The decomposition of a representation is described by means of a Tally, with keys equal to some highest weights and values equal to the multiplicity of the corresponding irreducible representations. Where more than one degree (resp. homological dimension) is decomposed, the result is a hash table with keys equal to the degrees (resp. homological dimensions) and values equal to the corresponding decomposition.

All weights are expressed with respect to the basis of fundamental weights in the associated weight lattice. Each weight $w$ is represented by a list of integers, namely the coefficients of $w$ in the basis of fundamental weights.

• setWeights -- attach (Lie theoretic) weights to the variables of a ring

## For the programmer

The object highestWeightsDecomposition is .