Constructing the automorphism group of a graph, in the form of a list of generators, is polynomial-time equivalent to the
graph isomorphism problem, and therefore solvable in
quasi-polynomial time, that is with running time 2^{O((\log n)^c)} for some fixed c > 0. Consequently, like the graph isomorphism problem, the problem of finding a graph's automorphism group is known to belong to the
complexity class NP, but not known to be in
P nor to be
NP-complete, and therefore may be
NP-intermediate. displays a
subgroup of its symmetries, isomorphic to the
dihedral group D5, but the graph has additional symmetries that are not present in the drawing. For example, since the graph is
symmetric, all edges are equivalent. The easier problem of testing whether a graph has any symmetries (nontrivial automorphisms), known as the
graph automorphism problem, also has no known
polynomial time solution. There is a
polynomial time algorithm for solving the graph automorphism problem for graphs where vertex degrees are bounded by a constant. The graph automorphism problem is polynomial-time
many-one reducible to the graph isomorphism problem, but the converse reduction is unknown. By contrast, hardness is known when the automorphisms are constrained in a certain fashion; for instance, determining the existence of a fixed-point-free automorphism (an automorphism that fixes no vertex) is NP-complete, and the problem of counting such automorphisms is
♯P-complete. ==Algorithms, software and applications==