.. _SectRDIntro:

.. _introduction:

Introduction
============

This chapter describes Magma functions for computing with (extended) root data.
Root data are fundamental to Lie theory: Lie algebras
(Chapter :ref:`ChapAlgLie`) and groups of Lie type
(Chapter :ref:`ChapGrpLie`). Our description of split reduced root
data follows :cite:`Demazure` and :cite:`Carter-big`
except that reflections act on the right as in customary in . Our description of
extended root data follows :cite:`satake_class`,
:cite:`Schattschneider`, and :cite:`SH`. Our description
of split non-reduced root data follows :cite:`BourbakiLie`.

The closely related concept of a root system is discussed in
Chapter :ref:`ChapRootSys`. When working with Lie algebras or
groups of Lie type, root data should be used. When working with Coxeter groups
(Chapter :ref:`ChapGrpCox`) or reflection groups
(Chapter :ref:`ChapGrpRfl`), it is likely that only root systems
are of interest.

.. _SubsectRSRfl:

.. _refl:

Reflections
-----------

Let :math:`X` and :math:`Y` be free :math:`{\mathbb{Z}}`-modules with bilinear
pairing :math:`\langle\circ,\circ\rangle:X\times Y\rightarrow {\mathbb{Z}}` that
identifies :math:`Y` with the dual of :math:`X`. Given nonzero
:math:`\alpha\in X` and :math:`\alpha^\star\in Y`, we define the
:math:`{\mathbb{Z}}`-linear map :math:`s_\alpha:X\rightarrow X` by

.. math:: x s_\alpha= x - \langle x,\alpha^\star\rangle\alpha

and the :math:`{\mathbb{Z}}`-linear map :math:`s_\alpha^\star:Y\rightarrow Y` by

.. math:: y s_\alpha^\star= y - \langle\alpha,y \rangle\alpha^\star.

These maps are called *reflections* if one of the following equivalent
properties hold: :math:`\langle\alpha,\alpha^\star\rangle=2`;
:math:`{s_\alpha}^2=1`;
:math:`\langle xs_\alpha,ys_\alpha^\star\rangle = \langle x,y\rangle` for all
:math:`x\in X` and :math:`y\in Y`; :math:`\alpha s_\alpha=-\alpha`. The map
:math:`s_\alpha^\star` is also called a *coreflection*: this just means it is a
reflection defined on :math:`Y` instead of :math:`X`. “ functions for computing
with reflections are described in Section :ref:`SectRefGrpRfl`.

If :math:`X` has an inner product, then we can take :math:`Y=X` and use the
inner product as our pairing. In , :math:`X` and :math:`Y` are usually standard
:math:`{\mathbb{Z}}`-modules. However, it is sometimes useful to allow :math:`X`
and :math:`Y` to be distinct sublattices of a standard lattice. The bilinear
pairing is always given by the standard inner product:
:math:`\langle x,y\rangle = xy^T`.

.. _SubsectRDDefn:

.. _rootdtm:

Definition of a Split Root Datum
--------------------------------

Suppose :math:`\Phi` is a finite subset of :math:`X\setminus \{0\}`. For each
:math:`\alpha` in :math:`\Phi`, suppose there is a corresponding
:math:`\alpha^\star` in :math:`Y\setminus \{0\}`; set
:math:`\Phi^\star=\{\alpha^\star\mid\alpha\in\Phi\}`. The datum
:math:`R=(X,\Phi,Y,\Phi^\star)` is said to be a *(split) root datum* if the
following conditions are satisfied for every :math:`\alpha` in :math:`\Phi`

1. :math:`s_\alpha` and :math:`s_\alpha^\star` are reflections;

2. :math:`\Phi` is closed under the action of :math:`s_\alpha`; and

3. :math:`\Phi^\star` is closed under the action of :math:`s_\alpha^\star`.

The lattice :math:`X` is called the *full root lattice* and :math:`Y` the *full
coroot lattice*. The vector space :math:`X\tens{\mathbb{Q}}` is called the *root
space* and :math:`Y\tens{\mathbb{Q}}` the *coroot space*. The elements of
:math:`\Phi` are called *roots* and the elements of :math:`\Phi^\star` are
called *coroots*. A root datum is *reduced*, if :math:`\alpha,\beta\in\Phi` with
:math:`\beta` a scalar product of :math:`\alpha` implies
:math:`\alpha=\pm\beta`.

.. _SubsectRDPosSimple:

.. _positive-simple-roots:

Simple and Positive Roots
-------------------------

A subset :math:`\Delta` of :math:`\Phi` is called a set of *simple roots* if

1. :math:`\Delta` is a basis for the rational span of the roots
:math:`{\mathbb{Q}}\Phi\le {\mathbb{Q}}\tens X`; and

2. :math:`\Phi = \Phi^+\cup\Phi^-`, where :math:`\Phi^+` is the set of linear
combinations of elements of :math:`\Delta` with nonnegative coefficients, and
:math:`\Phi^- = -\Phi^+`. Every root datum has a set of simple roots. Simple
roots are frequently called fundamental roots. The elements of :math:`\Phi^+`
are called *positive roots* and the elements of :math:`\Phi^-` *negative roots*.
The coroots corresponding to the simple (resp. positive, negative) roots are the
*simple* (respectively, *positive*, *negative*) *coroots*.

The *rank* of the root datum is the size of :math:`\Delta`, i.e. the dimension
of the subspace :math:`{\mathbb{Q}}\Phi`. The rank cannot be larger than the
*dimension* of the root datum (i.e. the dimension of
:math:`{\mathbb{Q}}\tens X`). If the rank and dimension are equal, the root
datum is said to be *semisimple*.

Choose a basis :math:`e_1,\dots,e_d` for :math:`X` and a dual basis
:math:`f_1,\dots,f_d` for :math:`Y`, so that
:math:`\langle e_i,f_j\rangle=\delta_{ij}`. A reduced root system is determined
by a pair of integral matrices :math:`A` and :math:`B` where the rows of
:math:`A` are the simple roots and the rows of :math:`B` are the corresponding
coroots; i.e. :math:`A_{ij}=\langle\alpha_i,f_j\rangle` and
:math:`B_{ij}=\langle e_j,\alpha_i^\star\rangle`.

.. _SubsectRDCoxGrp:

.. _rootdatum-cox-grps:

The Coxeter Group
-----------------

The group :math:`W` generated by the reflections :math:`s_\alpha`, for
:math:`\alpha` a simple root, is a finite Coxeter group. The *Cartan matrix* of
a root datum is

.. math::

   C =
     \left(\left\langle\,\alpha_i,\alpha_j^\star\,\right\rangle\right)_{i,j=1}^n =
     AB^t.

As in Chapter :ref:`ChapCartan`, the Cartan matrix is used to
define the Coxeter matrix, Coxeter graph and Dynkin digraph of a root datum.

A *Coxeter form* is a :math:`W`-invariant bilinear form on :math:`X`. If
:math:`R` is reduced and irreducible, then the roots can have at most two
different lengths with respect to this form. We call the roots *long* or *short*
accordingly. The Coxeter form is normalised so that the short roots in each
component have length one. Note that, even if :math:`X=Y`, this form will
generally not be the same as the pairing :math:`\langle\circ,\circ\rangle`;
however it can often be arranged for them to be the same (see ).

.. _SubsectRDNonRed:

.. _nonred-root-data:

Nonreduced Root Data
--------------------

A root datum is *reduced*, if :math:`\alpha,\beta\in\Phi` with :math:`\beta` a
scalar product of :math:`\alpha` implies :math:`\alpha=\pm\beta`. A root
:math:`\alpha` with the property :math:`2\alpha\notin \Phi` is called *reduced*.
A root :math:`\alpha` with the property :math:`{1\over 2}\alpha\in\Phi` is
called *divisible*. If :math:`R` is a root datum, then the set :math:`R_0` of
indivisible roots in :math:`R` form the *indivisible subsystem*.

Let :math:`R` be a nonreduced irreducible root datum of rank :math:`n`. It can
be shown that :math:`R_0` is irreducible of type of type :math:`B_n` and every
root is either in :math:`R_0`, or is two times a short root of :math:`R_0`. The
Cartan type of :math:`R` in this case is :math:`BC_n`.

Note that the Cartan matrix, Coxeter matrix, Coxeter diagram, Coxeter group and
Dynkin diagram are the same for :math:`R` and :math:`R_0`. Thus, when creating a
non-reduced root datum for a given Cartan matrix, Coxeter matrix, Coxeter
diagram, Coxeter group or Dynkin diagram, one must specify the set of
non-reduced fundamental roots. E.g., let :math:`C` be a cartan matrix of type
:math:`B_2\times B_3`. Then the set of nonreduced fundamental roots can be one
of :math:`\emptyset`, :math:`\{2\}`, :math:`\{5\}` or :math:`\{2,5\}`, in which
cases the root datum will be of types :math:`B_2\times B_3`,
:math:`BC_2\times B_3`, :math:`B_2\times BC_3` or :math:`BC_2\times BC_3`
respectively.

.. _SubsectRDIsogeny:

.. _rootdata:

Isogeny of Split Reduced Root  Data
-----------------------------------

The Dynkin digraph and dimension do not completely determine the isomorphism
type of a split root datum, as the Coxeter graph and dimension do for a root
system. Two root data with isomorphic Dynkin digraphs are said to be *Cartan
equivalent*. We now describe the isomorphism classes within each Cartan
equivalence class of split reduced irreducible root data. Since every semisimple
reduced root datum is isogenous to a direct sum of irreducible root data, this
immediately gives a classification of the split semisimple root data.
Classifying nonsemisimple root data would be more complicated.

The *weights* of a root datum are the :math:`\lambda` in
:math:`{\mathbb{Q}}\Phi\le X\tens{\mathbb{Q}}` such that
:math:`\langle\lambda,\alpha^\star\rangle\in{\mathbb{Z}}` for every coroot
:math:`\alpha^\star`. The weights form a lattice :math:`\Lambda` called the
*weight lattice*. We now have lattices :math:`{\mathbb{Z}}\Phi\le X \le\Lambda`
(note that the second inclusion holds only for semisimple root data). The
isomorphism class of a root datum in a fixed Cartan equivalence class is
determined by the position of :math:`X` between the root lattice
:math:`{\mathbb{Z}}\Phi` and the weight lattice :math:`\Lambda`. Alternatively,
the isomorphism class is determined by the *isogeny group*
:math:`X/{\mathbb{Z}}\Phi` within the *fundamental group*
:math:`\Lambda/{\mathbb{Z}}\Phi`. The fundamental group is determined by the
Cartan matrix :math:`C`: it is isometric to :math:`{\mathbb{Z}}^n/\Theta` where
:math:`\Theta` is the lattice generated by the rows of :math:`C`. The
fundamental groups of the irreducible Cartan equivalence classes are

:math:`A_n`: :math:`{\mathbb{Z}}/(n+1)`;

:math:`B_n`, :math:`C_n`, :math:`E_7`: :math:`{\mathbb{Z}}/2`;

:math:`D_n`: :math:`{\mathbb{Z}}/4` for :math:`n` odd,
:math:`{\mathbb{Z}}/2 \times {\mathbb{Z}}/2` for :math:`n` even;

:math:`E_6`: :math:`{\mathbb{Z}}/3`;

:math:`E_8`, :math:`F_4`, :math:`G_2`: trivial. If :math:`X={\mathbb{Z}}\Phi`
the root datum is said to be *adjoint*; if :math:`X=\Lambda` it is said to be
*simply connected*. The quotient :math:`Y/{\mathbb{Z}}\Phi^\star` is called the
*coisogeny group*; in the semisimple case it is isomorphic to
:math:`\Lambda/{\mathbb{Z}}\Phi`.

.. _SubsectExtRD:

.. _extended-rootdtm:

Extended Root Data
------------------

An extended root datum is a split root datum :math:`R=(X,\Phi,Y,\Phi^\star)` and
a permutation group :math:`\Gamma` with actions on :math:`X` and :math:`Y` that
respect the pairing :math:`\langle\circ,\circ\rangle`.

Fix a set of simple roots :math:`\Delta`. Let :math:`O(\chi)` denote the orbit
of :math:`\chi\in X` under the :math:`\Gamma`-action. Then, for
:math:`\alpha\in\Phi` either :math:`O(\alpha)` is contained in :math:`\Phi^+`,
or it is contained in :math:`\Phi^-`, or the sum of the roots of
:math:`O(\alpha)` is zero. We call :math:`O(\alpha)` a *positive*, *negative* or
*zero orbit*, respectively. Put

.. math::

   X_0      := \{ \chi \in X \mid  
             \sum_{\gamma\in\Gamma} \chi^{\gamma} = 0 \}.

Let :math:`\Phi_0 := \Phi \cap X_0` and :math:`\Delta_0 := \Delta \cap X_0`.
Then :math:`X_0` is a submodule of :math:`X`, :math:`\Phi_0` is a subsystem of
:math:`\Phi`, and :math:`\Delta_0` is a fundamental system of :math:`\Phi_0`.
Note that :math:`\Delta_0` is not necessarily a basis of :math:`X_0`.
Analogously, we define :math:`Y_0` and :math:`\Phi^\star_0`. The subdatum
:math:`R_0 = (X_0, \Phi_0, Y_0, \Phi^\star_0)` is called the *anisotropic
subdatum* of :math:`R`.

Set :math:`\bar{X} := X/X_0` and let :math:`\pi:X\to \bar{X}` be the standard
projection. Then :math:`\bar{X}` is a free :math:`{\mathbb{Z}}`-module and
:math:`\pi` is a homomorphism of modules. Let :math:`\bar{\Phi}` and
:math:`\bar{\Delta}` be the images under :math:`\pi` of
:math:`\Phi \setminus \Phi_0` and :math:`\Delta \setminus \Delta_0`,
respectively. Then :math:`\bar{\Phi}` is a root system and :math:`\bar{\Delta}`
is a fundamental system of it. We call :math:`\bar{\Phi}` the *relative root
system* and :math:`\bar{\Delta}` the *relative fundamental system*. Note that
:math:`\bar{\Phi}` need not be irreducible nor reduced even if :math:`\Phi` is.
The rank of the relative system is :math:`|\bar{\Delta}|` and is called the
*relative rank* , whereas the rank :math:`|\Delta|` of :math:`\Phi` is called
the *absolute rank*. Let :math:`\bar{\Phi}^+` and :math:`\bar{\Phi}^-` denote
the images under :math:`\pi` of :math:`\Phi^+ \setminus \Phi_0` and
:math:`\Phi^- \setminus \Phi_0`. When :math:`X_0=X`, the relative root system is
an empty set and the form is called *anisotropic*.

Each :math:`\gamma\in\Gamma` acts on :math:`X` by
:math:`\chi \mapsto \chi^{\sigma w}` for some unique :math:`w\in W` and
:math:`\sigma` a Dynkin diagram symmetry. By
:math:`\alpha \mapsto \alpha^\sigma` for :math:`\alpha\in \Delta` we define the
:math:`[\Gamma]`-action on :math:`\Delta`. The extended root datum is called
*inner* if the :math:`[\Gamma]`-action is trivial and *outer* otherwise. The
orbits of the :math:`[\Gamma]`-action, that are not contained in :math:`X_0` are
called *distinguished*.

An extended root datum is called *twisted* if the :math:`\Gamma`-action is not
trivial.

The (split) Cartan name of an extended root datum is the name of the
corresponding split root datum. An extended root datum is *absolutely
irreducible* if the corresponding split datum is irreducible. It is irreducible
if there is no direct sum decomposition of the split datum which is preserved
under the action of :math:`\Gamma`. The *twisted Cartan name* of a root datum is
the Cartan name, with extra information describing the twist. The name
:math:`{}^mX_{n,e}` indicates a root datum with split Cartan name :math:`X_n`,
where the kernel of the :math:`[\Gamma]`-action has index :math:`m` in
:math:`\Gamma`, and :math:`e` is the rank of the relative root system. The
twisted Cartan name describes absolutely irreducible root data up to
isomorphism. This is not true for simple root data however.
