CoxeterCoset( W[, F0Mat ] )
CoxeterCoset( W[, F0Perm] )
This  function returns a Coxeter  coset as a  GAP object.  The argument
W    must   be  a  Coxeter  group    (created   by   CoxeterGroup  or
ReflectionSubgroup). In the first form the  argument F0Mat must be an
invertible  matrix  with  Rank(W) rows,  representing an automorphism
F_0 of  the root system   of the parent  of W.    In the second  form
F0Perm is a permutation which describes  the images of the simple roots
under  F_0 (and only  these images are used).    Of course this form is
only allowed if the  semisimple rank of  W  equals the rank  (i.e., the
simple roots are a basis  of V).  If there   is no second argument  the
default for F0Mat is the identity matrix.
CoxeterCoset returns a record  from   which we document the   following
components:
isDomain, isFinite:
coxeter:
F0Mat:
F0Perm:F0Mat
phi:
w1:phi/F0Perm
In the first example we create a Coxeter coset corresponding to the general unitary groups GU_3(q) over finite fields with q elements.
    gap> W := CoxeterGroup( [ [ 1, -1, 0 ], [ 0, 1, -1 ] ], 
    >                       [ [ 1, -1, 0 ], [ 0, 1, -1 ] ] );;
    gap> gu3 := CoxeterCoset( W, -IdentityMat( 3 ) );
    CoxeterCoset(CoxeterGroup([ [ 1, -1, 0 ], [ 0, 1, -1 ] ], 
    [ [ 1, -1, 0 ], [ 0, 1, -1 ] ]), 
    [ [ -1, 0, 0 ], [ 0, -1, 0 ], [ 0, 0, -1 ] ])
    gap> F4 := CoxeterGroup( "F", 4 );;
    gap> D4 := ReflectionSubgroup( F4, [ 1, 2, 16, 48 ] );
    ReflectionSubgroup(CoxeterGroup("F", 4), [ 1, 2, 9, 16 ])
    gap> PrintDynkinDiagram( D4 );
    D4   9
          \       
           1 - 16
          /
         2
    gap> 3D4 := CoxeterCoset( D4, (2,9,16) );
    CoxeterCoset(ReflectionSubgroup(CoxeterGroup("F", 4), 
    [ 1, 2, 9, 16 ]), ( 2, 9,16))
These functions require the package "chevie" (see RequirePackage).
GAP 3.4.4