> < ^ Date: Tue, 16 Oct 2001 12:18:27 +0100
< ^ From: Goetz Pfeiffer <Goetz.Pfeiffer@NUIGalway.ie >
< ^ Subject: Re: Automorphism group of the n-dimensional cube

Dear Azmi and GAP forum,

On Mon, Oct 15, 2001 at 08:49:57AM -0700, Azmi Tamid wrote:
> Dear Gap-Forum
>
> I want to create in GAP the automorphism group of the n-dimensional cube , this is sometimes called the group of signed permutations of n elements .
> Is there an elegant way to create this group in GAP ?

There are various ways to construct such a group in GAP, and which one is
elegant is probably a matter of personal taste. In GAP 3 you can

1. construct the group as a wreath product of a cyclic group of order 2 and
a symmetric group of degree n (see section "WreathProduct" of the manual).

2. define generators yourself and generate a group from that:

   CubeGroup:= function(n)
     local s, i;
     s:= List([1..n], x-> [1..2*n]);
     s[1]{[1, n+1]}:= [n+1, 1];
     for i in [2..n] do
s[i]{[i-1, i, n+i-1, n+i]}:= [i, i-1, n+i, n+i-1]; 
     od;
     return Group(List(s, PermList), ());
   end;

3. use the CHEVIE package and construct the group as a Coxeter group of type
B_n:

n:= 4;
RequirePackage("chevie");
g:= CoxeterGroup("B", n);

Let the resulting group act on a subgroup of type B_{n-1} to turn it into a
(isomorphic) permutation group on 2*n points.

c:= Operation(g, RightCosets(g, ReflectionSubgroup(g, [1..3])), OnRight);

Regards,
Goetz Pfeiffer.

-----------------------------------------------------------------------------
Goetz.Pfeiffer@NUIGalway.ie           http://schmidt.nuigalway.ie/~goetz/
National University of Ireland, Galway.     phone +353-91-512027 (x 3591)

> < [top]