GRAPE package in GAP cannot create automorphism groups

212 Views Asked by At

I tried to get the automorphism group of a graph in gap, using the GRAPE package, but I got the following error:

Error, the command fail is not a name.
possibly a binary is missing or has not been compiled. called from
Exec( GRAPE_DREADNAUT_EXE, "<", fdre  ); at /[path]/gap4r8/pkg/grape/lib/grape.g:4007 called from
SetAutGroupCanonicalLabellingNauty( gr, setcanon ); at /[path]/gap4r8/pkg/grape/lib/grape.g:4172 called from
SetAutGroupCanonicalLabelling( gr, false ); at /[path]/gap4r8/pkg/grape/lib/grape.g:4218 called from
AutGroupGraph( gamma  ) at /[path]/Downloads/gap4r8/pkg/grape/lib/grape.g:4228 called from
<function "unknown">( <arguments> )

This was on a Mac with gap4r8.

1

There are 1 best solutions below

1
On

Turns out grape was referencing another package - nauty - that hadn't properly compiled.

To fix the problem, I opened "gap/pkg/grape/nauty22" and followed the instructions in the readme that said to run (from the terminal):

./configure
make all

This produced a file called "dreadnautB", which is what grape needed. To make grape reference this file, I changed line 45, which was originally:

GRAPE_DREADNAUT_EXE :=  ExternalFilename(DirectoriesPackagePrograms("grape"),"dreadnautB"); 

to instead read:

GRAPE_DREADNAUT_EXE := ExternalFilename(DirectoriesLibrary(""),"pkg/grape/nauty22/dreadnautB"); 

I reloaded gap and grape and the "AutomorphismGroup(gamma)" function worked properly.