# Root Actions

The functions in this section give access to the action on the underlying root system (or datum) of a permutation Coxeter group. These functions do not apply to finitely presented Coxeter groups

In the following functions, the optional parameter `Basis` determines which basis the roots are given with respect to: `"Standard"` for the standard basis of the root space; `"Root"` for the basis of simple (co)roots; `"Weight"` for the basis of simple (co)weights.

## `RootGSet(W): GrpPermCox -> GSet`

## `CorootGSet(W): GrpPermCox -> GSet`

```magma
Basis: MonStgElt                    Default: "Standard"
```

The $G$-set of the Coxeter group $W$ acting on the (co)roots.

## `Example: G Sets (ex-90d28a)`

```magma
> W := CoxeterGroup("B3");
> X := RootGSet(W);
> r := Root(W, 5);
> r;
(0 1 1)
> Image(W.1, X, r);
(1 1 1)

```

## `RootAction(W): GrpPermCox -> Map`

## `CorootAction(W): GrpPermCox -> Map`

```magma
Basis: MonStgElt                    Default: "Standard"
```

The map $X\times W \to X$ giving the action of the Coxeter group $W$ on the (co)root space $X$.

## `Example: Coroot Action (ex-1fa494)`

```magma
> W := CoxeterGroup("B3");
> act := CorootAction(W);
> act([1,-2,1], W.1);
(-1 -1  1)

```

## `ReflectionGroup(W): GrpPermCox -> GrpMat, Map`

## `CoreflectionGroup(W): GrpPermCox -> GrpMat, Map`

```magma
Basis: MonStgElt                    Default: "Standard"
```

The Coxeter group $W$ as a real reflection group (ie. as a matrix group over some subfield of **R**) acting on the (co)root space, and the isomorphism from $W$ to the (co)reflection group.

## `Example: Reflection Groups (ex-2596af)`

```magma
> W := CoxeterGroup("B3");
> _, h := ReflectionGroup(W);
> W.1*W.3;
(1, 10)(2, 8)(3, 12)(4, 7)(5, 6)(11, 17)(13, 16)(14, 15)
> h(W.1*W.3);
[-1  0  0]
[ 1  1  2]
[ 0  0 -1]

```
