nauty is a program for computing automorphism groups of graphs and digraphs. It can also produce a canonical labelling.
nauty is written in a portable subset of C, and runs on a considerable number of different systems.
A complete manual is included in the package. It is also separately available here.
There is no document which explains in detail how nauty works. However, most of the important ideas were published in my paper Practical Graph Isomorphism, Congressus Numerantium, 30 (1981) 45-87. A scan is available.
There is a small suite of programs called gtools included in the nauty package. For example, geng can generate non-isomorphic graphs very quickly. There are also genrators for bipartite graphs and digraphs.
If you agree to the restrictions listed below, you may fetch version 2.2 (beta 6) of nauty (including gtools) as a gzipped tar file (562392 bytes). If you use Windows you might prefer a zip file (597315 bytes) with DOS line endings.
nauty now uses the GNU autoconf installation system. You are advised to read the file README before compiling anything.
Request: This edition of the source code and installation scripts has been tested on a variety of Unix/Linux systems (including MacOS X, DJGPP and Cygwin), but many systems remain untested. Please send your success and failure stories. Note that old or broken systems may not be supported at all; try an older version of nauty. A few things in the gtools package, especially shortg, are strictly Unix.
You are invited to join the unmoderated nauty mailing list so that you can receive notices of updates and exchange information with other users.
nauty is subject to the following usage restrictions: Copyright (1994-2003) Brendan McKay. All rights reserved. Educational organizations may use this product for purposes of research. All other use requires the permission of the author. Use for weapons development or other primarily military purpose is expressly forbidden. This software is subject to this copyright only, irrespective of any copyright attached to a larger work of which this is a part.
Absolutely no guarantees or warranties are made concerning the suitability, correctness, or any other aspect of this program. Any use is at your own risk.
Prior to version 2.2, nauty and gtools were distributed separately.
Version 2.0 (beta 9) of nauty.
Version 1.0 (beta 11) of gtools.
Version 1.9 of nauty.
Note that betas 7 and 8 of nauty 2.0 had a bug.
Brendan D. McKay
Computer Science Department
Australian National University
bdm@cs.anu.edu.au