Graph::Nauty - Perl bindings for nauty
use Graph::Nauty qw( are_isomorphic automorphism_group_size orbits ); use Graph::Undirected; my $A = Graph::Undirected->new; my $B = Graph::Undirected->new; # Create graphs here # Get the size of the automorphism group: print automorphism_group_size( $A ); # Get automorphism group orbits: print orbits( $A ); # Check whether two graphs are isomorphs: print are_isomorphic( $A, $B );
Graph::Nauty provides an interface to nauty, a set of procedures for determining the automorphism group of a vertex-coloured graph, and for testing graphs for isomorphism.
Currently Graph::Nauty only supports Graph::Undirected, that is, it does not handle directed graphs. Both colored vertices and edges are accounted for when determining equivalence classes.
Building and installing Graph::Nauty from source requires shared library and C headers for nauty, which can be downloaded from https://users.cecs.anu.edu.au/~bdm/nauty/. Both the library and C headers have to be installed to locations visible by Perl's C compiler.
For the description of nauty refer to http://pallini.di.uniroma1.it.
Andrius Merkys, mailto:merkys@cpan.org
Copyright (C) 2020 by Andrius Merkys
This library is free software; you can redistribute it and/or modify it under the same terms as Perl itself, either Perl version 5.26.1 or, at your option, any later version of Perl 5 you may have available.
To install Graph::Nauty, copy and paste the appropriate command in to your terminal.
cpanm
cpanm Graph::Nauty
CPAN shell
perl -MCPAN -e shell install Graph::Nauty
For more information on module installation, please visit the detailed CPAN module installation guide.