> < ^ Date: Fri, 30 Mar 2001 20:04:19 +0200
> < ^ From: Thomas Breuer <Thomas.Breuer@Math.RWTH-Aachen.DE >
> < ^ Subject: Re: intrinsic properties of groups

Dear GAP Forum,

I have a somewhat related question. There're 51 groups of order 32, and
some of them are very hard to distinguish. For example,
SmallGroup(32,27) and SmallGroup(32,34). Are there standard methods (
preferable ones that can be done in GAP ) to determine whether or not 2
groups like above are isomorphic?

For small groups, the function `IdGroup' can be used to distinguish
isomorphism types.

```gap> g1:= SmallGroup(32,27);;
gap> IdGroup( g1 );
[ 32, 27 ]
gap> g2:= SmallGroup(32,34);;
gap> IdGroup( g2 );
[ 32, 34 ]
```

This works of course not only for groups fetched from the library.

```gap> IdGroup( SymmetricGroup( 4 ) );
[ 24, 12 ]
```

If one also needs the isomorphism or if the groups are too big for
being handled by `IdGroup' then one can use `IsomorphismGroups'.
This function returns an isomorphism if the two groups are isomorphic,
and `fail' otherwise.

```gap> IsomorphismGroups( g1, g2 );
fail
gap> IsomorphismGroups( SymmetricGroup( 4 ), SmallGroup( 24, 12 ) );
[ (1,2,3,4), (1,2) ] -> [ f1*f2*f3*f4, f1*f3*f4 ]
```