# automorphisms

##### Number of automorphisms

Calculate the number of automorphisms of a graph, i.e. the number of isomorphisms to itself.

- Keywords
- graphs

##### Usage

`automorphisms(graph, sh = "fm")`

##### Arguments

- graph
The input graph, it is treated as undirected.

- sh
The splitting heuristics for the BLISS algorithm. Possible values are: ‘

`f`

’: first non-singleton cell, ‘`fl`

’: first largest non-singleton cell, ‘`fs`

’: first smallest non-singleton cell, ‘`fm`

’: first maximally non-trivially connected non-singleton cell, ‘`flm`

’: first largest maximally non-trivially connected non-singleton cell, ‘`fsm`

’: first smallest maximally non-trivially connected non-singleton cell.

##### Details

An automorphism of a graph is a permutation of its vertices which brings the graph into itself.

This function calculates the number of automorphism of a graph using the BLISS algorithm. See also the BLISS homepage at http://www.tcs.hut.fi/Software/bliss/index.html.

##### Value

A named list with the following members:

The size of the automorphism group of the input graph, as a string. This number is exact if igraph was compiled with the GMP library, and approximate otherwise.

The number of nodes in the search tree.

The number of leaf nodes in the search tree.

Number of bad nodes.

Number of canrep updates.

Maximum level.

##### References

Tommi Junttila and Petteri Kaski: Engineering an Efficient
Canonical Labeling Tool for Large and Sparse Graphs, *Proceedings of
the Ninth Workshop on Algorithm Engineering and Experiments and the Fourth
Workshop on Analytic Algorithms and Combinatorics.* 2007.

##### See Also

##### Examples

```
# NOT RUN {
## A ring has n*2 automorphisms, you can "turn" it by 0-9 vertices
## and each of these graphs can be "flipped"
g <- make_ring(10)
automorphisms(g)
# }
```

*Documentation reproduced from package igraph, version 1.2.2, License: GPL (>= 2)*