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)