graph automorphism

{{short description|Mapping a graph onto itself without changing edge-vertex connectivity}}

In the mathematical field of graph theory, an automorphism of a graph is a form of symmetry in which the graph is mapped onto itself while preserving the edge–vertex connectivity.

Formally, an automorphism of a graph {{math|1=G = (V, E)}} is a permutation {{mvar|σ}} of the vertex set {{mvar|V}}, such that the pair of vertices {{math|(u, v)}} form an edge if and only if the pair {{math|(σ(u), σ(v))}} also form an edge. That is, it is a graph isomorphism from {{mvar|G}} to itself. Automorphisms may be defined in this way both for directed graphs and for undirected graphs.

The composition of two automorphisms is another automorphism, and the set of automorphisms of a given graph, under the composition operation, forms a group, the automorphism group of the graph. In the opposite direction, by Frucht's theorem, all groups can be represented as the automorphism group of a connected graph – indeed, of a cubic graph.{{Citation | last1=Frucht | first1=R. | title=Herstellung von Graphen mit vorgegebener abstrakter Gruppe | url=http://www.numdam.org/item?id=CM_1939__6__239_0 | language=de | year=1938 | journal=Compositio Mathematica | issn=0010-437X | volume=6 | pages=239–250 | zbl=0020.07804}}.{{Citation | last1=Frucht | first1=R. | title=Graphs of degree three with a given abstract group |s2cid-access=free |mr=0032987 | year=1949 | journal=Canadian Journal of Mathematics | issn=0008-414X | volume=1 | pages=365–378 | doi=10.4153/CJM-1949-033-6 | issue=4| s2cid=124723321 | doi-access=free }}.

Computational complexity

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.{{cite journal | last1 = Mathon | first1 = R. | year = 1979 | title = A note on the graph isomorphism counting problem | journal = Information Processing Letters | volume = 8 | issue = 3 | pages = 131–132 | doi=10.1016/0020-0190(79)90004-8}}{{cite arXiv|last1=Dona|first1=Daniele|last2=Bajpai|first2=Jitendra|last3=Helfgott|first3=Harald Andrés|date=2017-10-12|title=Graph isomorphisms in quasi-polynomial time|class=math.GR|language=en|eprint=1710.04574|df=mdy-all}}

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.

File:Petersen1 tiny.svg 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.{{citation

| last = Lubiw | first = Anna | author-link = Anna Lubiw

| doi = 10.1137/0210002

| issue = 1

| journal = SIAM Journal on Computing

| mr = 605600

| pages = 11–21

| title = Some NP-complete problems similar to graph isomorphism

| volume = 10

| year = 1981}}.

There is a polynomial time algorithm for solving the graph automorphism problem for graphs where vertex degrees are bounded by a constant.{{citation|last=Luks|first=Eugene M.|author-link=Eugene M. Luks|title=Isomorphism of graphs of bounded valence can be tested in polynomial time|journal=Journal of Computer and System Sciences|volume=25|year=1982|pages=42–65|issue=1|doi=10.1016/0022-0000(82)90009-5|doi-access=}}.

The graph automorphism problem is polynomial-time many-one reducible to the graph isomorphism problem, but the converse reduction is unknown.{{Citation

| first1 = Johannes

| last1 = Köbler

| first2 = Uwe

| last2 = Schöning

| author-link2 = Uwe Schöning

| first3= Jacobo

| last3= Torán

| title = Graph Isomorphism Problem: The Structural Complexity

| publisher = Birkhäuser Verlag

|isbn= 0-8176-3680-3

| year = 1993

| oclc = 246882287}}{{cite journal | last1 = Torán | first1 = Jacobo | year = 2004 | title = On the hardness of graph isomorphism | url = http://theorie.informatik.uni-ulm.de/Personen/toran/papers/hard.pdf | journal = SIAM Journal on Computing | volume = 33 | issue = 5 | pages = 1093–1108 | doi = 10.1137/S009753970241096X | access-date = 2010-03-10 | archive-date = 2008-11-20 | archive-url = https://web.archive.org/web/20081120045652/http://theorie.informatik.uni-ulm.de/Personen/toran/papers/hard.pdf | url-status = dead }} 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

While no worst-case polynomial-time algorithms are known for the general Graph Automorphism problem, finding the automorphism group (and printing out an irredundant set of generators) for many large graphs arising in applications is rather easy. Several open-source software tools are available for this task, including [http://cs.anu.edu.au/people/bdm/nauty/ NAUTY],{{Citation|last=McKay|first=Brendan|title=Practical Graph Isomorphism|journal=Congressus Numerantium|year=1981|volume=30|pages=45–87|url=http://cs.anu.edu.au/people/bdm/nauty/pgi.pdf|access-date=14 April 2011|postscript=.}} [http://www.tcs.hut.fi/Software/bliss/ BLISS]{{Citation|last1=Junttila|first1=Tommi|last2=Kaski|first2=Petteri|title=Engineering an efficient canonical labeling tool for large and sparse graphs|journal=Proceedings of the Ninth Workshop on Algorithm Engineering and Experiments (ALENEX07)|year=2007|url=http://ai.cs.unibas.ch/research/reading_group/junttila-kaski-alenex07.pdf|postscript=.}} and [http://vlsicad.eecs.umich.edu/BK/SAUCY/ SAUCY].{{Citation|last1=Darga|first1=Paul|last2=Sakallah|first2=Karem|last3=Markov|first3=Igor L.|title=Proceedings of the 45th annual Design Automation Conference|chapter=Faster symmetry discovery using sparsity of symmetries|date=June 2008|pages=149–154|doi=10.1145/1391469.1391509|url=http://vlsicad.eecs.umich.edu/BK/SAUCY/saucy-dac08.pdf|isbn=978-1-60558-115-6|s2cid=15629172|postscript=.|access-date=2011-04-14|archive-date=2021-01-26|archive-url=https://web.archive.org/web/20210126151716/http://vlsicad.eecs.umich.edu/BK/SAUCY/saucy-dac08.pdf|url-status=dead}}

{{Citation|last1=Katebi|first1=Hadi|last2=Sakallah|first2=Karem|last3=Markov|first3=Igor L.|title=Symmetry and Satisfiability: An Update|journal=Proc. Satisfiability Symposium (SAT)|date=July 2010|url=http://www.eecs.umich.edu/~imarkov/pubs/conf/sat10-sym.pdf|postscript=.}} SAUCY and BLISS are particularly efficient for sparse graphs, e.g., SAUCY processes some graphs with millions of vertices in mere seconds. However, BLISS and NAUTY can also produce Canonical Labeling, whereas SAUCY is currently optimized for solving Graph Automorphism. An important observation is that for a graph on {{mvar|n}} vertices, the automorphism group can be specified by no more than n - 1 generators, and the above software packages are guaranteed to satisfy this bound as a side-effect of their algorithms (minimal sets of generators are harder to find and are not particularly useful in practice). It also appears that the total support (i.e., the number of vertices moved) of all generators is limited by a linear function of {{mvar|n}}, which is important in runtime analysis of these algorithms. However, this has not been established for a fact, as of March 2012.

Practical applications of Graph Automorphism include graph drawing and other visualization tasks, solving structured instances of Boolean Satisfiability arising in the context of Formal verification and Logistics. Molecular symmetry can predict or explain chemical properties.

Symmetry display

Several graph drawing researchers have investigated algorithms for drawing graphs in such a way that the automorphisms of the graph become visible as symmetries of the drawing. This may be done either by using a method that is not designed around symmetries, but that automatically generates symmetric drawings when possible,{{citation|first1=Giuseppe|last1=Di Battista|first2=Roberto|last2=Tamassia|author2-link=Roberto Tamassia|first3=Ioannis G.|last3=Tollis|title=Area requirement and symmetry display of planar upward drawings|journal=Discrete and Computational Geometry|volume=7|issue=1|year=1992|pages=381–401|doi=10.1007/BF02187850|doi-access=free}}; {{citation|first1=Peter|last1=Eades|author1-link=Peter Eades|first2=Xuemin|last2=Lin|title=Spring algorithms and symmetry|journal=Theoretical Computer Science|volume=240|issue=2|year=2000|pages=379–405|doi=10.1016/S0304-3975(99)00239-X|doi-access=}}. or by explicitly identifying symmetries and using them to guide vertex placement in the drawing.{{citation|first=Seok-Hee|last=Hong|author-link=Seok-Hee Hong|contribution=Drawing graphs symmetrically in three dimensions|title=Proc. 9th Int. Symp. Graph Drawing (GD 2001)|publisher=Springer-Verlag|series=Lecture Notes in Computer Science|year=2002|volume=2265|doi=10.1007/3-540-45848-4_16|pages=106–108|isbn=978-3-540-43309-5|doi-access=free}}. It is not always possible to display all symmetries of the graph simultaneously, so it may be necessary to choose which symmetries to display and which to leave unvisualized.

Graph families defined by their automorphisms

Several families of graphs are defined by having certain types of automorphisms:

  • An asymmetric graph is an undirected graph with only the trivial automorphism.
  • A vertex-transitive graph is an undirected graph in which every vertex may be mapped by an automorphism into any other vertex.
  • An edge-transitive graph is an undirected graph in which every edge may be mapped by an automorphism into any other edge.
  • A symmetric graph is a graph such that every pair of adjacent vertices may be mapped by an automorphism into any other pair of adjacent vertices.
  • A distance-transitive graph is a graph such that every pair of vertices may be mapped by an automorphism into any other pair of vertices that are the same distance apart.
  • A semi-symmetric graph is a graph that is edge-transitive but not vertex-transitive.
  • A half-transitive graph is a graph that is vertex-transitive and edge-transitive but not symmetric.
  • A skew-symmetric graph is a directed graph together with a permutation σ on the vertices that maps edges to edges but reverses the direction of each edge. Additionally, σ is required to be an involution.

Inclusion relationships between these families are indicated by the following table:

style="text-align:center; border:1px solid darkgray;" class="skin-invert-image"
border=0

| File:Dodecahedral graph.neato.svg

| File:Arrow east.svg

| File:Shrikhande graph square.svg

| File:Arrow west.svg

| File:Paley13 no label.svg

distance-transitive

|

| distance-regular

|

| strongly regular

File:Arrow south.svg
File:F26A graph.svg

| File:Arrow west.svg

| File:Nauru graph.svg

symmetric (arc-transitive)

|

| t-transitive, t ≥ 2

File:Arrow south.svg (if connected)
File:Holt graph.svg

| File:Arrow east.svg

| File:Folkman Lombardi.svg

| File:Arrow east.svg

| File:Biclique K 3 5.svg

vertex- and edge-transitive

|

| edge-transitive and regular

|

| edge-transitive

File:Arrow south.svgFile:Arrow south.svg
File:Truncated tetrahedral graph.circo.svg

| File:Arrow east.svg

| File:Frucht graph.neato.svg

vertex-transitive

|

| regular

File:Arrow north.svg
File:Z 2xZ 3.svg
Cayley graph

See also

References

{{reflist}}