Construction of Real Reflection Groups#
The only root of unity in the real field is \(-1\), hence every pseudoreflection over the real field is a reflection. We call a reflection group real if it is defined over the reals and its simple roots and simple coroots are linearly independent. We allow real reflection groups to be defined as matrix groups over the integer ring (Chapter RngInt), the rational field (Chapter FldRat), number fields (Chapter FldNum:main), and cyclotomic fields (Chapter ChapFldCyc); the real field (Chapter ChapFldRe) is not allowed since it is not infinite precision.
The real reflection groups are just the reflection representations of the Coxeter groups (Chapter ChapGrpCox). This allows us to compute many more properties for these groups than for general reflection groups. Note that the classification of finite real reflection groups is given in Section Finite and Affine Coxeter Groups.
- ReflectionGroup(M): AlgMatElt GrpMat#
- ReflectionGroup(G): GrphUnd GrpMat#
- ReflectionGroup(C): AlgMatElt GrpMat#
- ReflectionGroup(D): GrphDir GrpMat#
The reflection group with Coxeter matrix \(M\), Coxeter graph \(G\), Cartan matrix \(C\), or Dynkin digraph \(D\) (see Chapter ChapCartan).
- ReflectionGroup(N): MonStgElt GrpMat#
The finite or affine reflection group with Cartan name given by the string \(N\) (see Section Finite and Affine Coxeter Groups).
- IrreducibleReflectionGroup(X, n): MonStgElt#
RngIntElt -> GrpMat
The finite or affine irreducible reflection group with Cartan name \(X_n\) (see Section Finite and Affine Coxeter Groups).
- Example: Real Reflection Group By Cartan#
> C := CartanMatrix("B3" : Symmetric); > G := ReflectionGroup(C); > G; MatrixGroup(3, Number Field with defining polynomial x^2 - 2 over the Rational Field) of order 48 = 2^4 * 3 Generators: \ [-1 0 0] \ [ 1 1 0] \ [ 0 0 1] \bln \ [ 1 1 0] \ [ 0 -1 0] \ [ 0 $.1 1] \bln \ [ 1 0 0] \ [ 0 1 $.1] \ [ 0 0 -1]
- ReflectionGroup(R): RootSys GrpMat#
- ReflectionGroup(R): RootDtm GrpMat#
The finite reflection group with root system or root datum \(R\) (see Chapters ChapRootSys and ChapRootDtm).
- Example: Real Reflection Group By Root Datum#
> R := RootDatum("B3"); > ReflectionGroup(R); MatrixGroup(3, Integer Ring) of order 48 = 2^4 * 3 Generators: [-1 0 0] [ 1 1 0] [ 0 0 1] \bln [ 1 1 0] [ 0 -1 0] [ 0 1 1] \bln [ 1 0 0] [ 0 1 2] [ 0 0 -1]
- ReflectionGroup(W): GrpFPCox GrpMat, Map#
C : Mtrx Default:
B : Mtrx Default:
A : Mtrx Default:
A reflection group \(W'\) of the Coxeter group \(W\), together with the isomorphism \(W\rightarrow W'\) (see Chapter ChapGrpCox). Since a Coxeter group \(W\) does not come with an in-built reflection representation, the optional parameters \(A\), \(B\), and \(C\) can be used to specify the representation. They are respectively the matrix whose rows are the simple roots, the matrix whose rows are the simple coroots, and the Cartan matrix. These must have the following properties:
1. \(A\) and \(B\) must have same number of rows and the same number of columns; they must be defined over the same field, which must be the rational field, a number field, or a cyclotomic field; the entries must be real;
the number of columns must be at least the number of rows; and
\(C=AB^\tr\) must be a Cartan matrix for \(W\).
It is not necessary to specify all three matrices: any two of them will determine the third. If \(C\) is not determined, it is taken to be the standard matrix described in Section Cartan Matrices.
- ReflectionGroup(W): GrpPermCox GrpMat, Map#
The reflection group \(W'\) isomorphic to the permutation Coxeter group \(W\), together with the isomorphism \(W\rightarrow W'\) (see Chapter ChapGrpCox). There are no optional parameters \(A\), \(B\), and \(C\) in this case because every permutation Coxeter group has a root system, and this determines the reflection representation.
- Example: Reflection Group Conversion#
> W<a,b,c> := CoxeterGroup(GrpFPCox, "B3"); > G, h := CoxeterGroup(GrpMat, W); > a*b; h(a*b); a * b [-1 -1 0] [ 1 0 0] [ 0 1 1]