Operations on Reflection Groups

See Chapter MATRIX GROUPS OVER GENERAL RINGS for general functions for matrix groups. Note that most of the functions in this section only work for real reflection groups.

IsCoxeterIsomorphic(W1, W2) : GrpMat, GrpMat -> BoolElt
Returns true if and only if the real reflection groups W1 and W2 are isomorphic as Coxeter systems.
IsCartanEquivalent(W1, W2) : GrpMat, GrpMat -> BoolElt
Returns true if and only if the crystallographic real reflection groups W1 and W2 have Cartan equivalent Cartan matrices.

Example GrpRfl_Isomorphism (H106E15)

> W1 := ReflectionGroup("B3");
> W2 := ReflectionGroup("C3");
> IsCoxeterIsomorphic(W1, W2);
true [ 1, 2, 3 ]
> IsCartanEquivalent(W1, W2);
false
CartanName(W) : GrpMat -> List
The Cartan name of the finite or affine real reflection group W (Section Finite and Affine Coxeter Groups).
CoxeterDiagram(W) : GrpMat ->
A display of the Coxeter diagram of the real reflection group W (Section Finite and Affine Coxeter Groups). If W is not affine or finite, an error is flagged.
DynkinDiagram(W) : GrpMat ->
A display of the Coxeter diagram of the real reflection group W (Section Finite and Affine Coxeter Groups). If W is not affine or finite, or if W is not crystallographic, an error is flagged.

Example GrpRfl_NameAndDiagram (H106E16)

> G := CompleteGraph(3);
> W := ReflectionGroup(G);
> CartanName(W);
A~2
> CoxeterDiagram(W);
A~2    1 - 2
       |   |
       - 3 -
RootSystem(W) : GrpMat -> RootDtm
The root system of the finite real reflection group W (Chapter ROOT SYSTEMS). If W is infinite, an error is flagged.
RootDatum(W) : GrpMat -> RootDtm
The root datum of the finite real reflection group W (Chapter ROOT DATA). The roots and coroots of W must have integral components, and W must be finite.
CoxeterMatrix(W) : GrpMat -> AlgMatElt
The Coxeter matrix of the real reflection group W (Section Coxeter Matrices).
CoxeterGraph(W) : GrpMat -> GrphUnd
The Coxeter graph of the real reflection group W (Section Coxeter Graphs).
CartanMatrix(W) : GrpMat -> AlgMatElt
The Cartan matrix of the real reflection group W (Section Cartan Matrices).
DynkinDigraph(W) : GrpMat -> GrphDir
The Dynkin digraph of the real reflection group W (Section Dynkin Digraphs).
Rank(W) : GrpMat -> RngIntElt
NumberOfGenerators(W) : GrpMat -> RngIntElt
The rank of the reflection group W.

Example GrpRfl_RankDimension (H106E17)

> R := StandardRootSystem("A", 4);
> W := ReflectionGroup(R);
> Rank(W);
4
> Dimension(W);
5
FundamentalGroup(W) : GrpMat -> GrpAb
The fundamental groupof the real reflection group W (Subsection Isogeny of Split Reduced Root Data). The roots and coroots of W must have integral components.
IsogenyGroup(W) : GrpMat -> GrpAb, Map
The isogeny groupof the real reflection group W, together with the injection into the fundamental group (Subsection Isogeny of Split Reduced Root Data). The roots and coroots of W must have integral components.
CoisogenyGroup(W) : GrpMat -> GrpAb, Map
The fundamental groupof the real reflection group W together with the projection onto the fundamental group (Subsection Isogeny of Split Reduced Root Data). The roots and coroots of W must have integral components.
BasicDegrees(W) : GrpMat -> RngIntElt
The degrees of the basic invariant polynomials of the reflection group W. These are computed using the table in [Car72, page 155] if the group is real, and using the algorithm of [LT09] in other cases. If W is infinite, an error is flagged.
BasicCodegrees(W) : GrpMat -> RngIntElt
The basic codegrees of the reflection group W. These are computed using the algorithm of [LT09]. If W is infinite, an error is flagged.

Example GrpRfl_BasicDegrees (H106E18)

The product of the basic degrees is the order of the Coxeter group; the sum of the basic degrees is the sum of the rank and the number of positive roots.
> W := ReflectionGroup("E6");
> degs := BasicDegrees(W);
> degs;
[ 2, 5, 6, 8, 9, 12 ]
> &*degs eq #W;
true
> &+degs eq NumPosRoots(W) + Rank(W);
true
LongestElement(W) : GrpMat -> SeqEnum
The unique longest element in the finite real reflection group W.
CoxeterElement(W) : GrpMat -> SeqEnum
The Coxeter element in the reflection group W, ie. the product of the generators.
CoxeterNumber(W) : GrpMat -> SeqEnum
The order of the Coxeter element in the real reflection group W.

Example GrpRfl_Operations (H106E19)

Operations on groups.
> W := ReflectionGroup("A4");
> LongestElement(W);
[ 0  0  0 -1]
[ 0  0 -1  0]
[ 0 -1  0  0]
[-1  0  0  0]
> CoxeterElement(W);
[-1 -1 -1 -1]
[ 1  0  0  0]
[ 0  1  0  0]
[ 0  0  1  0]
LeftDescentSet(W, w) : GrpMat, GrpMatElt ->()
The set of indices r of simple roots of the finite real reflection group W such that the length of the product srw is less than that of the element w.
RightDescentSet(W, w) : GrpMat, GrpMatElt ->()
The set of indices r of simple roots of the finite real reflection group W such that the length of the product wsr is less than that of the element w.

Example GrpRfl_DescentSets (H106E20)

> W := ReflectionGroup("A5");
> x := W.1*W.2*W.4*W.5;
> LeftDescentSet(W, x);
{ 1, 4 }
> RightDescentSet(W, x);
{ 2, 5 }
V2.28, 13 July 2023