Graph automorphism group and its source code

asked 2021-02-21 19:38:15 +0200

MehmetAzizYirik gravatar image

I am looking for the source code of graph automorphism_group function. In GitHub, there are different automorphism group functions, so I am kind of lost because there are also NAUTY functions or bliss.

I am curious about how SAGE graph automorphism group function works. I assume that an automorphism group of a graph is constructed based on row entries. If we have adjacency matrix of a graph, starting with initial partition, the partition is refined for each row until the discrete partition is reached. These partitions are used for the construction of coset representatives (or transversals) for each row. The multiplication of these representatives returns us the automorphism group of the graph.

Can someone inform me about SAGE's graph automorphism group method and its source code ?

edit retag flag offensive close merge delete

Comments

Define a graph G and type G.automorphism_group??.

The filename and the source code for that method will be displayed.

Example:

sage: G = Graph()
sage: G.automorphism_group??
...
Docstring:
...
Source code:
...
File:  path_to_sagedir/local/lib/python3.8/site-packages/sage/graphs/generic_graph.py
Type: method
slelievre gravatar imageslelievre ( 2021-02-22 01:52:30 +0200 )edit

Thanks. I already use that function for automorphism group calculation. In generic graph class, based on the initial partition they build the PermutationGroup as the automorphism group of the graph, but what I tried to explain is going through the graph, adjacency matrix, row by row and building the automorphism group based on the coset representatives. So I guess, SAGE does not do that or did I miss something ? It is just about the Youngsubgroups, built based on the refined partitions for each row.

MehmetAzizYirik gravatar imageMehmetAzizYirik ( 2021-02-22 09:42:22 +0200 )edit