Operations on Representations

Contents

Lie Algebras

The functions described in this section are applicable only to modules of almost reductive structure constant Lie algebras.

CharacterMultiset(V) : ModAlg -> LieRepDec
CharacterMultiset(ρ) : Map -> LieRepDec
The character multiset of the Lie-algebra module V or representation ρ.
Weights(V) : ModAlg -> SeqEnum, SeqEnum
WeightsAndVectors(V) : ModAlg -> SeqEnum, SeqEnum
For a module V over a semisimple Lie algebra this returns two sequences. The first sequence consists of the weights that occur in V. The second sequence is a sequence of sequences of elements of V, in bijection with the first sequence. The i-th element of the second sequence consists of a basis of the weight space of weight equal to the i-th weight of the first sequence.
Weights(ρ) : Map -> [ModTupRngElt]
WeightsAndVectors(ρ) : Map -> [ModTupRngElt]
For a representation ρ of a semisimple Lie algebra this returns two sequences. The first sequence consists of the weights of ρ. The second sequence is a sequence of sequences of elements of the underlying vector space, in bijection with the first sequence. The i-th element of the second sequence consists of a basis of the weight space of weight equal to the i-th weight of the first sequence.
HighestWeightsAndVectors(V) : ModAlg -> SeqEnum, SeqEnum
This function is analogous to the previous one. Except in this case the first sequence consists of highest weights, i.e., those weights which occur as highest weights of an irreducible constituent of V. The second sequence consists of sequences that contain the corresponding highest weight vectors. So the submodules generated by the vectors in the second sequence form a direct sum decomposition of V.
DecompositionMultiset(V) : ModAlg -> LieRepDec
DecompositionMultiset(ρ) : Map -> LieRepDec
The decomposition multiset of the Lie-algebra module V or representation ρ.
DominantWeights(R, w) : RootDtm, [ ] -> [ ModTupRngElt ], [ RngIntElt ]
Given a crystallographic root datum R corresponding to a semisimple Lie algebra L, and a dominant weight w (given either as a vector or as a sequence representing a vector), let V be the highest weight module of the L with highest weight w. This function returns the sequence of dominant weights of V and the sequence of their multiplicities. The complete list of weights and multiplicities of V can be obtained by acting with the Weyl group on the dominant weights.

The underlying algorithm uses Moody and Patera's fast version of Freudenthal's formula [MP82].

WeylDimension(R, w) : RootDtm, [ ] -> RngIntElt
Given a crystallographic root datum R corresponding to a semisimple Lie algebra and a dominant weight w (given either as a vector or as a sequence representing a vector), this function returns the dimension of the highest weight module.

This is an implementation of Weyl's dimension formula.

Example LieReps_DominantWeights (H111E14)

The default isogeny type of a root datum is "Ad" (namely adjoint) in which case the default basis of the functions which use the root datum is the "Root" basis. Therefore, in this example, we must specify the "Weight" basis for the WeightOrbit function.
> R := RootDatum("G2");
> wts, mults := DominantWeights(R, [1,1]);
> wts;
[
   (1 1),
   (2 0),
   (0 1),
   (1 0),
   (0 0)
]
> mults;
[ 1, 2, 2, 4, 4 ]
> WeylDimension(R, [1,1]);
64
> [ #WeightOrbit(R,mu : Basis := "Weight") : mu in wts ];
[ 12, 6, 6, 6, 1 ]
> &+[ #WeightOrbit(R,wts[i] : Basis := "Weight")*mults[i] : i in [1..#wts] ];
64
DecomposeTensorProduct(R, w, x) : RootDtm, [ ], [ ] -> [ ModTupRngElt ], [ RngIntElt ]
Let R be a crystallographic root datum corresponding to a semisimple Lie algebra L and let w and x be dominant weights (given either as vectors or as sequences representing vectors). Let W and X be the highest weight modules for w and x. The tensor product of W and X splits into a direct sum of highest weight modules. Two sequences are returned: the highest weights that occur and their multiplicities.

The algorithm uses a formula due to Klimyk (cf. [dG00], Proposition 8.12.3).

DecomposeSymmetricPower(R, n, w) : RootDtm, RngIntElt, [ ] -> [ ModTupRngElt ], [ RngIntElt ]
This is a variant of DecomposeTensorProduct for the nth symmetric power of the highest weight representation of weight w of the semisimple Lie algebra with root datum R.
DecomposeExteriorPower(R, n, w) : RootDtm, RngIntElt, [ ] -> [ ModTupRngElt ], [ RngIntElt ]
This is a variant of DecomposeTensorProduct for the nth exterior power of the highest weight representation of weight w of the semisimple Lie algebra with root datum R.

Example LieReps_DecomposeTensor (H111E15)

> R := RootDatum( "G2" );
> DecomposeTensorProduct( R, [1,1], [0,1] );
[
  (1 2),
  (4 0),
  (2 1),
  (3 0),
  (2 0),
  (1 0),
  (1 1)
]
[ 1, 1, 1, 1, 1, 1, 2 ]
> DecomposeExteriorPower( R, 2, [1,1] );
[
    (0 3),
    (5 0),
    (1 2),
    (2 1),
    (3 0),
    (1 0),
    (3 1),
    (1 1),
    (0 1)
]
[ 1, 1, 1, 2, 2, 1, 1, 1, 2 ]
DirectSum(U, V) : ModAlg, ModAlg -> SeqEnum
The direct sum of the Lie algebra modules U and V.
DirectSumDecomposition(V) : ModAlg -> SeqEnum
IndecomposableSummands(V) : ModAlg -> SeqEnum
Given a Lie algebra module V, return the direct sum decomposition of V as a sequence of submodules whose sum is V and each of which cannot be further decomposed into a direct sum. If the Lie algebra is semisimple over a field of characteristic zero, the summands are known to be irreducible highest weight modules.
DirectSum(ρ, τ) : ModAlg, ModAlg -> SeqEnum
The direct sum of the Lie algebra representations ρ and τ.
DirectSumDecomposition(ρ) : Map[AlgLie, AlgMatLie] -> SeqEnum
IndecomposableSummands(ρ) : Map[AlgLie, AlgMatLie] -> SeqEnum
Given a Lie algebra representation ρ, return the direct sum decomposition of ρ as a sequence of indecomposable subrepresentation. If the Lie algebra is semisimple over a field of characteristic zero, the summands are known to be irreducible highest weight representations.
TensorProduct(Q) : SeqEnum -> ModAlg, Map
Given a sequence Q of left-modules over a Lie algebra, this function returns the module M that is the tensor product of the elements of Q. Secondly it returns a map from the Cartesian product of the elements of Q to M. This maps a tuple t to the element of M that is formed by tensoring the elements of t.
SymmetricPower(V, n) : ModAlg, RngIntElt -> ModAlg, Map
Given a left-module V over a Lie algebra, and an integer n≥2, this function returns the module M that is the n-th symmetric power of V. It also returns a map f from the n-fold Cartesian product of V to M. This map is multilinear and symmetric, i.e., if two of its arguments are interchanged then the image remains the same. Furthermore, f has the universal property, i.e., any multilinear symmetric map from the n-fold Cartesian product into a vector space W can be written as the composition of f with a map from M into W.

ExteriorPower(V, n) : ModAlg, RngIntElt -> ModAlg, Map
Given a left-module V over a Lie algebra, and an integer 2≤n ≤dim(V), this function returns the module M that is the n-th exterior power of V. It also returns a map f from the n-fold Cartesian product of V to M. This map is multilinear and antisymmetric, i.e., if two of its arguments are interchanged then the image is multiplied by -1. Furthermore, f has the universal property, i.e., any multilinear antisymmetric map from the n-fold Cartesian product into a vector space W can be written as the composition of f with a map from M into W.

Example LieReps_LieModules (H111E16)

> L:= LieAlgebra("G2", Rationals());
> V1:= HighestWeightModule(L, [1,0]);
> V2:= HighestWeightModule(L, [0,1]);
> T,f:= TensorProduct([V1,V2]);
> HighestWeightsAndVectors(T);
[
    (1 1),
    (2 0),
    (1 0)
]
[
    [
        T: (1 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
            0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
            0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0)
    ],
    [
        T: (0 0 1 0 0 0 0 0 0 0 0 0 0 0 0 3 0 0 0 0 0 0 0 0 0 0 0 0 -3 0 0 0 0 0
            0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
            0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0)
    ],
    [
        T: (0 0 0 0 0 0 1 2 0 0 0 0 0 0 0 0 0 0 0 1 0 0 0 0 0 0 0 0 0 0 0 -1 0 0
            0 0 0 0 0 0 0 0 0 0 1 0 0 0 0 0 0 0 0 0 0 0 0 -3 0 0 0 0 0 0 0 0 0 0
            0 0 -3 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0)
    ]
]
> DecomposeTensorProduct(RootDatum(L), [1,0], [0,1]);
[
    (1 1),
    (2 0),
    (1 0)
]
[ 1, 1, 1 ]
> f(<V1.2,V2.3>);
T: (0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
    0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
    0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0)
So we see that the tensor product T decomposes as a direct sum of three submodules. This information can also be computed by using DecomposeTensorProduct. However, in the former case, the corresponding highest-weight vectors are also given.
> E,h:= ExteriorPower(V1, 3);
> h(<V1.1,V1.3,V1.4>);
E: (0 0 0 0 0 1 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0)
> h(<V1.1,V1.4,V1.3>);
E: (0 0 0 0 0 -1 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0)
> DecomposeExteriorPower( RootDatum(L), 3, [1,0] );
[
    (2 0),
    (1 0),
    (0 0)
]
[ 1, 1, 1 ]
> HighestWeightsAndVectors(E);
[
    (2 0),
    (1 0),
    (0 0)
]
[
    [
        E: (1 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
        0)
    ],
    [
        E: (0 0 0 1 0 0 1 0 0 0 0 0 0 0 0 1 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
        0)
    ],
    [
        E: (0 0 0 0 0 0 0 0 0 0 0 1 2 0 0 0 0 0 2 0 1 0 0 0 0 1 0 0 0 0 0 0 0 0
        0)
    ]
]

Groups of Lie Type

These functions apply to projective representations of groups of Lie type. Note that modules have not yet been implemented for these groups.

DirectSum(ρ, τ) : ModAlg, ModAlg -> SeqEnum
The direct sum of the group of Lie type representations ρ and τ.
DirectSumDecomposition(ρ) : Map[GrpLie, GrpMat] -> SeqEnum
IndecomposableSummands(ρ) : Map[GrpLie, GrpMat] -> SeqEnum
Given a group of Lie type representation ρ, return the direct sum decomposition of ρ as a sequence of indecomposable subrepresentation. If the base field has characteristic zero, the summands are known to be irreducible highest weight representations.
CharacterMultiset(V) : ModAlg -> LieRepDec
CharacterMultiset(ρ) : Map -> LieRepDec
The character weight multiset of the group of Lie type representation ρ.
Weights(ρ) : Map -> [LatElt], [ModTupRngElt]
WeightsAndVectors(ρ) : Map -> [LatElt], [ModTupRngElt]
The weights of the representation ρ, together with the corresponding weight vectors.
WeightVectors(ρ) : Map -> [ModTupRngElt]
A basis of weight vectors of the representation ρ.
Weight(ρ, v) : Map, ModTupRngElt -> LatElt
The weight corresponding to the weight vector v of the representation ρ.
DecompositionMultiset(V) : ModAlg -> LieRepDec
DecompositionMultiset(ρ) : Map -> LieRepDec
The decomposition multiset of the group of Lie type representation ρ.
HighestWeights(ρ) : Map -> [LatElt], [ModTupRngElt]
The highest weights of the representation ρ, together with the corresponding highest weight vectors. This function may fail for small finite fields.
HighestWeightVectors(ρ) : Map -> [ModTupRngElt]
The highest weight vectors of the representation ρ.
GeneralisedRowReduction(ρ) : GrpLie, Map -> Map
Given a projective matrix representation ρ:G to GLm(k), return its inverse. This algorithm is based on [CMT04].
V2.28, 13 July 2023