GAP4 package QuaGroup
A GAP4 package for doing computations with quantized enveloping
algebras. Features include:
- construction of PBW-type bases,
- possibility of using generic and non-generic quantum parameters,
- construction of highest-weight modules,
- construction of R-matrices,
- functions for dealing with Littelmann's path model,
- functions for computing elements of the canonical basis.
We note the following:
- only quantized enveloping algebras corresponding to root systems of
types A-G are considered (in particular, no quantized enveloping algebras
of Kac-Moody algebras),
- QuaGroup only works with GAP4.3 (and higher versions).
Installation: just gunzip, and untar in the pkg directory; then,
in GAP, you can use LoadPackage( "quagroup" ); to load the package.
For the latest version of the package visit:
Here are some examples, meant to give an impression of the capabilities of the
package.
# We can create quantized enveloping algebras relative to
# root systems of type A-G.
gap> R:= RootSystem( "C", 3 );
<root system of type C3>
gap> U:= QuantizedUEA( R );
QuantumUEA( <root system of type C3>, Qpar = q )
# The generators generate a so-called PBW-type basis;
# in QuaGroup a basis of Lusztig's Z-form is used.
gap> g:= GeneratorsOfAlgebra( U );
[ F1, F2, F3, F4, F5, F6, F7, F8, F9, K1, K1+(q^-1-q)*[ K1 ; 1 ], K2,
K2+(q^-1-q)*[ K2 ; 1 ], K3, K3+(q^-2-q^2)*[ K3 ; 1 ], E1, E2, E3, E4, E5,
E6, E7, E8, E9 ]
gap> g[20]*g[13]*g[3];
(q^2-q^4)*F3*[ K2 ; 1 ]*E5+(q^3)*F3*K2*E5+(-1)*E6+(-q^-4+q^-2+1-q^2)*[ K2 ;
2 ]*E6+(-q^-3+q^-1)*K2[ K2 ; 1 ]*E6
# We can compute irreducible modules.
gap> V:= HighestWeightModule( U, [1,0,1] );
<70-dimensional left-module over QuantumUEA( <root system of type C
3>, Qpar = q )>
# We can also compute the same module as a submodule of a tensor product.
gap> W1:= HighestWeightModule( U, [1,0,0] );
<6-dimensional left-module over QuantumUEA( <root system of type C
3>, Qpar = q )>
gap> W3:= HighestWeightModule( U, [0,0,1] );
<14-dimensional left-module over QuantumUEA( <root system of type C
3>, Qpar = q )>
gap> T:= TensorProductOfAlgebraModules( W1, W3 );
<84-dimensional left-module over QuantumUEA( <root system of type C
3>, Qpar = q )>
gap> W:= SubAlgebraModule( T, [ Basis(T)[1] ] );
<left-module over QuantumUEA( <root system of type C3>, Qpar = q )>
gap> Dimension( W );
70
# (This last computation may take some time).
# We can compare both modules by computing their crystal bases;
# the action of the elements of U on these bases are given
# by the same matrices (because the elements of the crystal bases
# are ordered in the same way).
gap> CV:= CrystalBasis( V );;
gap> CW:= CrystalBasis( W );;
gap> MatrixOfAction( CV, g[7] ) = MatrixOfAction( CW, g[7] );
true
# We can compute elements of the canonical basis of
# the minus part of U.
gap> B:= CanonicalBasis( U );
<canonical basis of QuantumUEA( <root system of type C3>, Qpar = q ) >
gap> PBWElements( B, [1,2,1] );
[ F1*F3^(2)*F9, F1*F3*F8+(q+q^3)*F1*F3^(2)*F9,
(q)*F1*F3*F8+(q^4)*F1*F3^(2)*F9+F1*F7, (q^2)*F1*F3^(2)*F9+F2*F3*F9,
(q)*F1*F3*F8+(q^2+q^4)*F1*F3^(2)*F9+(q^2)*F2*F3*F9+F2*F8,
(q^2)*F1*F3*F8+(q^3+q^5)*F1*F3^(2)*F9+(q+q^3)*F2*F3*F9+(q)*F2*F8+F3*F6,
(q^3)*F1*F3*F8+(q^6)*F1*F3^(2)*F9+(q^2)*F1*F7+(q^4)*F2*F3*F9+(q^2)*F2*F
8+(q)*F3*F6+F5 ]