[Next][Prev] [Right] [Left] [Up] [Index] [Root]

Constructing Coxeter Groups from Existing Coxeter Groups

An element of a Coxeter group is called a reflection if it is conjugate to one of the Coxeter generators. A reflection subgroup of a Coxeter group is a subgroup which is generated by a set of reflections---reflection subgroups are also Coxeter groups. The most important class of reflection subgroups are the standard parabolic subgroups, which are generated by a subset of the simple roots. Note that in a reflection subgroup, the elements are given as permutations of the roots of the larger group.

The functions in this section are currently only implemented for groups with a root datum.

ReflectionSubgroup( W, a ) : GrpPermCox, {} -> GrpPermCox
The reflection subgroup of the Coxeter group W generated by the roots alpha_(a_1), ..., alpha_(a_k) where a={a_1, ..., a_k} is a set of integers.
ReflectionSubgroup( W, s ) : GrpPermCox, [] -> GrpPermCox
The reflection subgroup of the Coxeter group W generated by simple roots alpha_(s_1), ..., alpha_(s_k) where s=[s_1, ..., s_k] is a sequence of integers. In this version the roots must be simple in the root subdatum (ie. none of them may be a summand of another) otherwise an error is signalled. The simple roots will appear in the reflection subgroup in the given order.
StandardParabolicSubgroup( W, s ) : GrpPermCox, {} -> GrpPermCox
The standard parabolic subgroup of the Coxeter group W generated by the simple roots alpha_(a_1), ..., alpha_(a_k) where a={a_1, ..., a_k}subseteq{1, ..., Rank(W)}.
IsReflectionSubgroup( W, H ) : GrpPermCox -> GrpPermCox
Returns true if, and only if, H is a reflection subgroup of the Coxeter group W.
IsStandardParabolicSubgroup( W, H ) : GrpPermCox -> GrpPermCox
Returns true if, and only if, H is a standard parabolic subgroup of the Coxeter group W.
Overgroup( H ) : GrpPermCox -> GrpPermCox
The overgroup of H, ie. the Coxeter group whose roots are permuted by the elements of the Coxeter subgroup H.
Overdatum( H ) : GrpPermCox -> GrpPermCox
The root datum whose roots are permuted by the elements of the Coxeter subgroup H.
LocalCoxeterGroup( H ) : GrpPermCox -> GrpPermCox, Map
Given a Coxeter subgroup H this returns the Coxeter group L isomorphic to H but acting on the roots of H itself rather than the roots of its overgroup, together with the isomorphism L to H.

Example GrpPermCox_ReflectionSubgroups (H84E19)

> W := CoxeterGroup( "A4" );
> P := StandardParabolicSubgroup( W, {1,2} );
> Overgroup( P ) eq W;
true
> L, h := LocalCoxeterGroup( P );
> hinv := Inverse( h );
> L.1;   
(1, 4)(2, 3)(5, 6)
> h(L.1);
(1, 11)(2, 5)(6, 8)(9, 10)(12, 15)(16, 18)(19, 20)
> hinv(h(L.1));
(1, 4)(2, 3)(5, 6)

Transversal( W, H ) : GrpPermCox, GrpPermCox -> @ @
The indexed set of (right) coset representatives of the reflection subgroup H of the Coxeter group W. This contains the unique element of shortest length in each coset.
TransversalElt( W, H, x ) : GrpPermCox, GrpPermElt-> GrpPermElt
The representative of the coset Hx in the Coxeter group W. This is the unique element of Hx of shortest length in W and also the unique element of Hx which sends every positive root of H to another positive root.


Example GrpPermCox_Transversals (H84E20)

> W := CoxeterGroup( "A4" );
> P := StandardParabolicSubgroup( W, {1,2} );
> x := W.1 * W.2 * W.3;
> x := TransversalElt( W, P, x );
> x eq W.3;
true
> x in Transversal( W, P );
true

W1 + W2 : GrpPermCox, GrpPermCox -> GrpPermCox
DirectSum( W1, W2 ) : GrpPermCox, GrpPermCox -> GrpPermCox
The direct sum of the Coxeter groups W_1 and W_2.
Dual( W ) : GrpPermCox -> GrpPermCox
The dual of the root datum W, obtained by swapping the roots and coroots.

Example GrpPermCox_SumDual (H84E21)

> W1 := CoxeterGroup( "G2" );
> W2 := CoxeterGroup( "C3" );
> W1 + Dual(W2);
Coxeter group: Permutation group acting on a set of cardinality 30
Order = 576 = 2^6 * 3^2
    (1, 7)(2, 5)(3, 4)(8, 11)(9, 10)
    (1, 3)(2, 8)(5, 6)(7, 9)(11, 12)
    (13, 22)(14, 16)(17, 20)(19, 21)(23, 25)(26, 29)(28, 30)
    (13, 16)(14, 23)(15, 17)(18, 21)(22, 25)(24, 26)(27, 30)
    (14, 19)(15, 24)(16, 21)(23, 28)(25, 30)


 [Next][Prev] [Right] [Left] [Up] [Index] [Root]