Lie Group Basics¶
Goals of this section¶
Since we must be brief here, this is not really a place to learn about Lie groups or Lie algebras. Rather, the point of this section is to outline what you need to know to use Sage effectively for Lie computations, and to fix ideas and notations.
Semisimple and reductive groups¶
If , then
may be uniquely factored as
where
and
commute, with
semisimple
(diagonalizable) and
unipotent (all its eigenvalues equal to
1). This follows from the Jordan canonical form. If
then
is called semisimple and if
then
is called
unipotent.
We consider a Lie group and a class of representations such that
if an element
is unipotent (resp. semisimple) in one
faithful representation from the class, then it is unipotent
(resp. semisimple) in every faithful representation of the class. Thus
the notion of being semisimple or unipotent is intrinsic. Examples:
- Compact Lie groups with continuous representations
- Complex analytic groups with analytic representations
- Algebraic groups over
with algebraic representations.
A subgroup of is called unipotent if it is connected and all its
elements are unipotent. It is called a torus if it is connected,
abelian, and all its elements are semisimple. The group
is called
reductive if it has no nontrivial normal unipotent subgroup. For
example,
is reductive, but its subgroup:
is not since it has a normal unipotent subgroup
A group has a unique largest normal unipotent subgroup, called the unipotent radical, so it is reductive if and only if the unipotent radical is trivial.
A Lie group is called semisimple it is reductive and furthermore has
no nontrivial normal tori. For example is reductive
but not semisimple because it has a normal torus:
The group is semisimple.
Fundamental group and center¶
If is a semisimple Lie group then its center and fundamental group
are finite abelian groups. The universal covering group
is
therefore a finite extension with the same Lie algebra. Any
representation of
may be reinterpreted as a representation of the
simply connected
. Therefore we may as well consider
representations of
, and restrict ourselves to the simply
connected group.
Parabolic subgroups and Levi subgroups¶
Let be a reductive complex analytic group. A maximal solvable
subgroup of
is called a Borel subgroup. All Borel subgroups are
conjugate. Any subgroup
containing a Borel subgroup is called a
parabolic subgroup. We may write
as a semidirect product of its
maximal normal unipotent subgroup or unipotent radical
and a
reductive subgroup
, which is determined up to conjugacy. The
subgroup
is called a Levi subgroup.
Example: Let and let
be
integers whose sum is
. Then we may consider matrices of the form:
where . The unipotent radical consists of
the subgroup in which all
. The Levi subgroup
(determined up to conjugacy) is:
and is isomorphic to
.
Therefore
is a Levi subgroup.
The notion of a Levi subgroup can be extended to compact Lie
groups. Thus is a Levi subgroup
of
. However parabolic subgroups do not exist for compact Lie
groups.
Cartan types¶
Semisimple Lie groups are classified by their Cartan types. There
are both reducible and irreducible Cartan types in Sage. Let us start
with the irreducible types. Such a type is implemented in Sage as a
pair ['X', r]
where ‘X’ is one of A, B, C, D, E, F or G and is a
positive integer. If ‘X’ is ‘D’ then we must have
and if ‘X’ is
one of the exceptional types ‘E’, ‘F’ or ‘G’ then
is limited to
only a few possibilities. The exceptional types are:
['G', 2], ['F', 4], ['E', 6], ['E', 7] or ['E', 8].
A simply-connected semisimple group is a direct product of simple Lie
groups, which are given by the following table. The integer is
called the rank, and is the dimension of the maximal torus.
Here are the Lie groups corresponding to the classical types:
compact group | complex analytic group | Cartan type |
---|---|---|
![]() |
![]() |
![]() |
![]() |
![]() |
![]() |
![]() |
![]() |
![]() |
![]() |
![]() |
![]() |
You may create these Cartan types and their Dynkin diagrams as follows:
sage: ct = CartanType("D5"); ct
['D', 5]
Here "D5"
is an abbreviation for ['D',5]
. The group is
the simply-connected double cover of the orthogonal group
.
Dual Cartan types¶
Every Cartan type has a dual, which you can get from within Sage:
sage: CartanType("B4").dual()
['C', 4]
Types other than and
for
are self-dual in the sense that
the dual is isomorphic to the original type; however the isomorphism of a
Cartan type with its dual might relabel the vertices. We can see this
as follows:
sage: CartanType("F4").dynkin_diagram()
O---O=>=O---O
1 2 3 4
F4
sage: CartanType("F4").dual()
['F', 4] relabelled by {1: 4, 2: 3, 3: 2, 4: 1}
sage: CartanType("F4").dual().dynkin_diagram()
O---O=>=O---O
4 3 2 1
F4 relabelled by {1: 4, 2: 3, 3: 2, 4: 1}
Reducible Cartan types¶
If is a Lie group of finite index in
, where
and
are Lie groups of positive dimension, then
is called
reducible. In this case, the root system of
is the disjoint
union of the root systems of
and
, which lie in orthogonal
subspaces of the ambient space of the weight space of
. The Cartan
type of
is thus reducible.
Reducible Cartan types are supported in Sage as follows:
sage: RootSystem("A1xA1")
Root system of type A1xA1
sage: WeylCharacterRing("A1xA1")
The Weyl Character Ring of Type A1xA1 with Integer Ring coefficients
Low dimensional Cartan types¶
There are some isomorphisms that occur in low degree.
Cartan Type | Group | Equivalent Type | Isomorphic Group |
---|---|---|---|
![]() |
![]() |
![]() |
![]() |
![]() |
![]() |
![]() |
![]() |
![]() |
![]() |
![]() |
![]() |
![]() |
![]() |
![]() |
![]() |
![]() |
![]() |
![]() |
![]() |
Sometimes the redundant Cartan types such as and
are excluded
from the list of Cartan types. However Sage allows them since excluding them
leads to exceptions having to be made in algorithms. A better approach, which
is followed by Sage, is to allow the redundant Cartan types, but to implement
the isomorphisms explicitly as special cases of branching rules. The utility
of this approach may be seen by considering that the rank one group
has different natural weight lattices realizations depending on whether we
consider it to be
,
or
:
sage: RootSystem("A1").ambient_space().simple_roots()
Finite family {1: (1, -1)}
sage: RootSystem("B1").ambient_space().simple_roots()
Finite family {1: (1)}
sage: RootSystem("C1").ambient_space().simple_roots()
Finite family {1: (2)}
Relabeled Cartan types¶
By default Sage uses the labeling of the Dynkin diagram from [Bourbaki46]. There is another labeling of the vertices due to Dynkin. Most of the literature follows [Bourbaki46], though [Kac] follows Dynkin.
If you need to use Dynkin’s labeling, you should be aware that Sage
does support relabeled Cartan types. See the documentation in
sage.combinat.root_system.type_relabel
for further information.
Standard realizations of the ambient spaces¶
These realizations follow the Appendix in [Bourbaki46]. See the Root system plot tutorial for how to visualize them.
Type A¶
For type we use an
dimensional ambient space. This means
that we are modeling the Lie group
or
rather than
or
. The ambient space is
identified with
:
sage: RootSystem("A3").ambient_space().simple_roots()
Finite family {1: (1, -1, 0, 0), 2: (0, 1, -1, 0), 3: (0, 0, 1, -1)}
sage: RootSystem("A3").ambient_space().fundamental_weights()
Finite family {1: (1, 0, 0, 0), 2: (1, 1, 0, 0), 3: (1, 1, 1, 0)}
sage: RootSystem("A3").ambient_space().rho()
(3, 2, 1, 0)
The dominant weights consist of integer -tuples
such that
.
See SL versus GL for further remarks about Type A.
Type B¶
For the remaining classical Cartan types ,
and
we use
an
-dimensional ambient space:
sage: RootSystem("B3").ambient_space().simple_roots()
Finite family {1: (1, -1, 0), 2: (0, 1, -1), 3: (0, 0, 1)}
sage: RootSystem("B3").ambient_space().fundamental_weights()
Finite family {1: (1, 0, 0), 2: (1, 1, 0), 3: (1/2, 1/2, 1/2)}
sage: RootSystem("B3").ambient_space().rho()
(5/2, 3/2, 1/2)
This is the Cartan type of . The last fundamental weight
(1/2, 1/2, ..., 1/2)
is the highest weight of the
dimensional spin representation. All the other fundamental
representations factor through the homomorphism
and are representations of the orthogonal
group.
The dominant weights consist of -tuples of integers or
half-integers
such that
, and such that the
differences
.
Type C¶
sage: RootSystem("C3").ambient_space().simple_roots()
Finite family {1: (1, -1, 0), 2: (0, 1, -1), 3: (0, 0, 2)}
sage: RootSystem("C3").ambient_space().fundamental_weights()
Finite family {1: (1, 0, 0), 2: (1, 1, 0), 3: (1, 1, 1)}
sage: RootSystem("C3").ambient_space().rho()
(3, 2, 1)
This is the Cartan type of the symplectic group .
The dominant weights consist of -tuples of integers
such that
.
Type D¶
sage: RootSystem("D4").ambient_space().simple_roots()
Finite family {1: (1, -1, 0, 0), 2: (0, 1, -1, 0), 3: (0, 0, 1, -1), 4: (0, 0, 1, 1)}
sage: RootSystem("D4").ambient_space().fundamental_weights()
Finite family {1: (1, 0, 0, 0), 2: (1, 1, 0, 0), 3: (1/2, 1/2, 1/2, -1/2), 4: (1/2, 1/2, 1/2, 1/2)}
sage: RootSystem("D4").ambient_space().rho()
(3, 2, 1, 0)
This is the Cartan type of . The last two fundamental
weights are the highest weights of the two
-dimensional spin
representations.
The dominant weights consist of -tuples of integers
such that
.
Exceptional Types¶
We leave the reader to examine the exceptional types. You can use Sage to list the fundamental dominant weights and simple roots.
Weights and the ambient space¶
Let be a reductive complex analytic group. Let
be a maximal
torus,
be its group of analytic
characters. Then
for some
and
.
Example 1: Let . Then
is the
diagonal subgroup and
. If
then
is identified
with the rational character
Example 2: Let . Again
is
the diagonal subgroup but now if
then
, so
.
- Elements of
are called weights.
- If
is any representation we may restrict
to
. Then the characters of
that occur in this restriction are called the weights of
.
acts on its Lie algebra by conjugation (the adjoint representation).
- The nonzero weights of the adjoint representation are called roots.
- The ambient space of
is
.
The root system¶
As we have mentioned, acts on its complexified Lie algebra
by the adjoint representation. The zero
weight space
is just the Lie algebra of
itself. The other nonzero weights each appear with multiplicity
one and form an interesting configuration of vectors called the
root system
.
It is convenient to partition into two sets
and
such that
consists of all roots lying on one side of
a hyperplane. Often we arrange things so that
is embedded in
in such a way that the positive weights correspond
to upper triangular matrices. Thus if
is a positive root, its
weight space
is spanned by a
vector
, and the exponential of this eigenspace in
is a
one-parameter subgroup of unipotent matrices. It is always possible to
arrange that this one-parameter subgroup consists of upper triangular
matrices.
If is a positive root that cannot be decomposed as a sum of
other positive roots, then
is called a simple root. If
is semisimple of rank
, then
is the number of positive
roots. Let
be these.
The Weyl group¶
Let be a complex analytic group. Let
be a maximal torus, and
let
be its normalizer. Let
be the Weyl group. It
acts on
by conjugation; therefore it acts on the weight lattice
and its ambient space. The ambient space admits an inner
product that is invariant under this action. Let
denote this inner product. If
is a root let
denote
the reflection in the hyperplane of the ambient space that is
perpendicular to
. If
is a simple root,
then we use the notation
to denote
.
Then generate
, which is a Coxeter group. This
means that it is generated by elements
of order two and that
if
is the order of
, then
is a presentation. An important function is the
length function, where
is the length of the shortest
decomposition of
into a product of simple reflections.
The dual root system¶
The coroots are certain linear functionals on the ambient space
that also form a root system. Since the ambient space admits a
-invariant inner product
, they may be identified with elements
of the ambient space itself. Then they are proportional to the
roots, though if the roots have different lengths, long roots
correspond to short coroots and conversely. The coroot corresponding
to the root
is
We can also describe the natural pairing between coroots and roots using this invariant inner product as
The Dynkin diagram¶
The Dynkin diagram is a graph whose vertices are in bijection with the
set simple roots. We connect the vertices corresponding to roots that
are not orthogonal. Usually two such roots (vertices) make an angle of
, in which case we connect them with a single
bond. Occasionally they may make an angle of
in which case we
connect them with a double bond, or
in which case we connect
them with a triple bond. If the bond is single, the roots have the
same length with respect to the inner product on the ambient space. In
the case of a double or triple bond, the two simple roots in questions
have different length, and the bond is drawn as an arrow from the long
root to the short root. Only the exceptional group
has a triple bond.
There are various ways to get the Dynkin diagram in Sage:
sage: DynkinDiagram("D5")
O 5
|
|
O---O---O---O
1 2 3 4
D5
sage: ct = CartanType("E6"); ct
['E', 6]
sage: ct.dynkin_diagram()
O 2
|
|
O---O---O---O---O
1 3 4 5 6
E6
sage: B4 = WeylCharacterRing("B4"); B4
The Weyl Character Ring of Type B4 with Integer Ring coefficients
sage: B4.dynkin_diagram()
O---O---O=>=O
1 2 3 4
B4
sage: RootSystem("G2").dynkin_diagram()
3
O=<=O
1 2
G2
The Cartan matrix¶
Consider the natural pairing between coroots and
roots, then the defining matrix of this pairing is called the
Cartan matrix. That is to say, the Cartan matrix
is given by
This uniquely corresponds to a root system/Dynkin diagram/Lie group.
We note that we have made a convention choice, and the opposite convention corresponds to taking the transpose of the Cartan matrix.
Fundamental weights and the Weyl vector¶
There are certain weights that:
If is semisimple then these are uniquely determined, whereas if
is reductive but not semisimple we may choose them conveniently.
Let be the sum of the fundamental dominant weights. If
is
semisimple, then
is half the sum of the positive roots. In case
is not semisimple, we have noted, the fundamental weights are not
completely determined by the inner product condition given above. If
we make a different choice, then
is altered by a vector that is
orthogonal to all roots. This is a harmless change for many purposes
such as the Weyl character formula.
In Sage, this issue arises only for Cartan type . See SL versus GL.
Representations and characters¶
Let be a maximal torus and
be the group
of rational characters. Then
.
- Recall that elements of
are called weights.
- The Weyl group
acts on
, hence on
and its ambient space by conjugation.
- The ambient space
has a fundamental domain
for the Weyl group
called the positive Weyl chamber. Weights in
are called dominant.
- Then
consists of all vectors such that
for all positive roots
.
- It is useful to embed
in
and consider weights as lattice points.
- If
is a representation then restricting to
, the module
decomposes into a direct sum of weight eigenspaces
with multiplicity
for weight
.
- There is a unique highest weight
with respect to the partial order. We have
and
.
gives a bijection between irreducible representations and weights
in
.
Assuming that is simply-connected (or more generally, reductive
with a simply-connected derived group) every dominant weight
is the highest weight of a unique irreducible representation
, and
gives a
parametrization of the isomorphism classes of irreducible
representations of
by the dominant weights.
The character of is the function
. It is determined by its values
on
. If
and
, let us write
for the value of
on
. Then the
character:
Sometimes this is written
The meaning of is subject to interpretation, but we may
regard it as the image of the additive group
in its group
algebra. The character is then regarded as an element of this ring,
the group algebra of
.
Representations: an example¶

In this example, . We have drawn the
weights of an irreducible representation with highest weight
.
The shaded region is
.
is a dominant weight,
and the labeled vertices are the weights with positive multiplicity in
. The weights weights on the outside have
,
while the six interior weights (with double circles) have
.
Partitions and Schur polynomials¶
The considerations of this section are particular to type . We review
the relationship between characters of
and
symmetric function theory.
A partition is a sequence of descending nonnegative
integers:
We do not distinguish between two partitions if they differ only by
some trailing zeros, so . If
is the last
integer such that
then we say that
is the length
of
. If
then we say that
is a
partition of
and write
.
A partition of length is therefore a dominant weight of
type
['A',r]
. Not every dominant weight is a partition, since the
coefficients in a dominant weight could be negative. Let us say that
an element of the
['A',r]
root lattice is effective if the . Thus an effective
dominant weight of
['A',r]
is a partition of length , where
.
Let be a dominant weight, and let
be the
character of
with highest weight
. If
is any integer we may consider the weight
obtained by adding
to
each entry. Then
.
Clearly by choosing
large enough, we may make
effective.
So the characters of irreducible representations of
do not all correspond to partitions, but the characters indexed by
partitions (effective dominant weights) are enough that we can
write any character
where
is a
partition. If we take
we could also arrange that
the last entry in
is zero.
If is an effective dominant weight, then every weight that
appears in
is effective. (Indeed, it lies in the convex
hull of
where
runs through the Weyl group
.)
This means that if
then is a polynomial in the eigenvalues of
.
This is the Schur polynomial
.
Affine Cartan types¶
There are also affine Cartan types, which correspond to (infinite dimensional)
affine Lie algebras. There are affine Cartan types of the
form [`X`, r, 1]
if X=A,B,C,D,E,F,G
and [`X`, r]
is an ordinary
Cartan type. There are also twisted affine types of the form [X, r, k]
,
where or
if the Dynkin diagram of the ordinary Cartan type
[X, r]
has an automorphism of degree . When
, the affine Cartan
type is said to be untwisted.
Illustrating some of the methods available for the untwisted affine
Cartan type ['A', 4, 1]
:
sage: ct = CartanType(['A',4,1]); ct
['A', 4, 1]
sage: ct.dual()
['A', 4, 1]
sage: ct.classical()
['A', 4]
sage: ct.dynkin_diagram()
0
O-----------+
| |
| |
O---O---O---O
1 2 3 4
A4~
The twisted affine Cartan types are relabeling of the duals of certain untwisted Cartan types:
sage: CartanType(['A',3,2])
['B', 2, 1]^*
sage: CartanType(['D',4,3])
['G', 2, 1]^* relabelled by {0: 0, 1: 2, 2: 1}
The affine root and the extended Dynkin diagram¶
For the extended Dynkin diagram, we add one negative root
. For the untwisted types, this is the root whose negative
is the highest weight in the adjoint representation. Sometimes this is
called the affine root. We make the Dynkin diagram as before by
measuring the angles between the roots. This extended Dynkin diagram
is useful for many purposes, such as finding maximal subgroups
and for describing the affine Weyl group.
In particular, the hyperplane for the reflection , used in generating
the affine Weyl group is translated off the origin (so it becomes an affine
hyperplane). Now the root system is not described as linear transformations
on an Euclidean space, but instead by affine transformations. Thus the
dominant chamber has finite volume and tiles the Eucledian space. Moreover,
each such tile corresponds to a unique element in the affine Weyl group.
The extended Dynkin diagram may be obtained as the Dynkin diagram of the corresponding untwisted affine type:
sage: ct = CartanType("E6"); ct
['E', 6]
sage: ct.affine()
['E', 6, 1]
sage: ct.affine() == CartanType(['E',6,1])
True
sage: ct.affine().dynkin_diagram()
O 0
|
|
O 2
|
|
O---O---O---O---O
1 3 4 5 6
E6~
The extended Dynkin diagram is also a method of the WeylCharacterRing
:
sage: WeylCharacterRing("E7").extended_dynkin_diagram()
O 2
|
|
O---O---O---O---O---O---O
0 1 3 4 5 6 7
E7~
We note the following important distinctions from the classical cases:
- The affine Weyl groups are all infinte.
- Type
has two anti-parallel roots with distinct reflections. The Dynkin diagram in this case is represented by a double bond with arrows going in both directions.
Twisted affine root systems¶
For the construction of in the twisted types, we refer the
reader to Chaper 8 of [Kac]. As mentioned above, most twisted types can
be constructed by the taking the dual root system of an untwisted type.
However the type
root system which can only be constructed by
the twisting procedure defined in [Kac]. It has the following properties:
- The Dynkin diagram of type
has a quadruple bond with an arrow pointing from the short root to the long root.
- Type
for
has 3 different root lengths.
Further Generalizations¶
If a root system (on an Euclidean space) has only the angles
between its roots, then we call the
root system crystallographic (on Wikipedia article Root_system, this
condition is called integrality since for any two roots we have
). So if we look at the reflection
group generated by the roots (this is not a Weyl group), we get general
Coxeter groups (with non-infinite labels)
and non-crystallographic Coxeter groups are not connected with Lie theory.
However we can generalize Dynkin diagrams (equivalently Cartan matrices)
to have all its edges labelled by where
and
corresponds to having
arrows point one way and
arrows pointing
the other. For example in type
, we have one edge of
,
or in type
, we have one edge of
(equivalently
). These edge label between
and
corresponds to the entries
and
in the Cartan matrix. These are used to construct
a class of (generally infinite dimensional) Lie algebras called
Kac-Moody (Lie) algebras, which in turn are used to construct quantum groups.
We refer the reader to [Kac] and [HongKang2002] for more information.