HOME

TheInfoList



OR:

The graph isomorphism problem is the
computational problem In theoretical computer science, a computational problem is one that asks for a solution in terms of an algorithm. For example, the problem of factoring :"Given a positive integer ''n'', find a nontrivial prime factor of ''n''." is a computati ...
of determining whether two finite graphs are
isomorphic In mathematics, an isomorphism is a structure-preserving mapping or morphism between two structures of the same type that can be reversed by an inverse mapping. Two mathematical structures are isomorphic if an isomorphism exists between the ...
. The problem is not known to be solvable in polynomial time nor to be
NP-complete In computational complexity theory, NP-complete problems are the hardest of the problems to which ''solutions'' can be verified ''quickly''. Somewhat more precisely, a problem is NP-complete when: # It is a decision problem, meaning that for any ...
, and therefore may be in the computational
complexity class In computational complexity theory, a complexity class is a set (mathematics), set of computational problems "of related resource-based computational complexity, complexity". The two most commonly analyzed resources are time complexity, time and s ...
NP-intermediate. It is known that the graph isomorphism problem is in the low hierarchy of class NP, which implies that it is not NP-complete unless the polynomial time hierarchy collapses to its second level. At the same time, isomorphism for many special classes of graphs can be solved in polynomial time, and in practice graph isomorphism can often be solved efficiently. This problem is a special case of the subgraph isomorphism problem, which asks whether a given graph ''G'' contains a subgraph that is isomorphic to another given graph ''H''; this problem is known to be NP-complete. It is also known to be a special case of the non-abelian hidden subgroup problem over the
symmetric group In abstract algebra, the symmetric group defined over any set is the group whose elements are all the bijections from the set to itself, and whose group operation is the composition of functions. In particular, the finite symmetric grou ...
. In the area of image recognition it is known as the exact graph matching problem.Endika Bengoetxea
"Inexact Graph Matching Using Estimation of Distribution Algorithms"
Ph. D., 2002
Chapter 2:The graph matching problem
(retrieved June 28, 2017)


State of the art

In November 2015, László Babai announced a quasi-polynomial time algorithm for all graphs, that is, one with running time 2^ for some fixed c > 0. On January 4, 2017, Babai retracted the quasi-polynomial claim and stated a sub-exponential time bound instead after Harald Helfgott discovered a flaw in the proof. On January 9, 2017, Babai announced a correction (published in full on January 19) and restored the quasi-polynomial claim, with Helfgott confirming the fix. Helfgott further claims that one can take , so the running time is . Babai published a "preliminary report" on related work at the 2019 Symposium on Theory of Computing, describing a quasipolynomial algorithm for graph canonization, but the full version of these algorithms remains unpublished. Prior to this, the best accepted theoretical algorithm was due to , and was based on the earlier work by combined with a ''subfactorial'' algorithm of V. N. Zemlyachenko . The algorithm has run time 2O() for graphs with ''n'' vertices and relies on the
classification of finite simple groups In mathematics, the classification of finite simple groups (popularly called the enormous theorem) is a result of group theory stating that every List of finite simple groups, finite simple group is either cyclic group, cyclic, or alternating gro ...
. Without this classification theorem, a slightly weaker bound was obtained first for strongly regular graphs by , and then extended to general graphs by . Improvement of the exponent for strongly regular graphs was done by . For hypergraphs of bounded rank, a subexponential upper bound matching the case of graphs was obtained by . There are several competing practical algorithms for graph isomorphism, such as those due to , , , and . While they seem to perform well on random graphs, a major drawback of these algorithms is their exponential time performance in the worst case. The graph isomorphism problem is computationally equivalent to the problem of computing the automorphism group of a graph, and is weaker than the
permutation group In mathematics, a permutation group is a group ''G'' whose elements are permutations of a given set ''M'' and whose group operation is the composition of permutations in ''G'' (which are thought of as bijective functions from the set ''M'' to ...
isomorphism problem and the permutation group intersection problem. For the latter two problems, obtained complexity bounds similar to that for graph isomorphism.


Solved special cases

A number of important special cases of the graph isomorphism problem have efficient, polynomial-time solutions: *
Tree In botany, a tree is a perennial plant with an elongated stem, or trunk, usually supporting branches and leaves. In some usages, the definition of a tree may be narrower, e.g., including only woody plants with secondary growth, only ...
s *
Planar graph In graph theory, a planar graph is a graph (discrete mathematics), graph that can be graph embedding, embedded in the plane (geometry), plane, i.e., it can be drawn on the plane in such a way that its edges intersect only at their endpoints. ...
s (In fact, planar graph isomorphism is in log space, a class contained in P) * Interval graphs * Permutation graphs * Circulant graphs *Bounded-parameter graphs ** Graphs of bounded treewidth ** Graphs of bounded
genus Genus (; : genera ) is a taxonomic rank above species and below family (taxonomy), family as used in the biological classification of extant taxon, living and fossil organisms as well as Virus classification#ICTV classification, viruses. In bino ...
(Planar graphs are graphs of genus 0.) ** Graphs of bounded degree ** Graphs with bounded
eigenvalue In linear algebra, an eigenvector ( ) or characteristic vector is a vector that has its direction unchanged (or reversed) by a given linear transformation. More precisely, an eigenvector \mathbf v of a linear transformation T is scaled by a ...
multiplicity ** ''k''-Contractible graphs (a generalization of bounded degree and bounded genus) **Color-preserving isomorphism of colored graphs with bounded color multiplicity (i.e., at most ''k'' vertices have the same color for a fixed ''k'') is in class NC, which is a subclass of P.


Complexity class GI

Since the graph isomorphism problem is neither known to be NP-complete nor known to be tractable, researchers have sought to gain insight into the problem by defining a new class GI, the set of problems with a polynomial-time Turing reduction to the graph isomorphism problem. If in fact the graph isomorphism problem is solvable in polynomial time, GI would equal P. On the other hand, if the problem is NP-complete, GI would equal NP and all problems in NP would be solvable in quasi-polynomial time. As is common for
complexity class In computational complexity theory, a complexity class is a set (mathematics), set of computational problems "of related resource-based computational complexity, complexity". The two most commonly analyzed resources are time complexity, time and s ...
es within the polynomial time hierarchy, a problem is called GI-hard if there is a polynomial-time Turing reduction from any problem in GI to that problem, i.e., a polynomial-time solution to a GI-hard problem would yield a polynomial-time solution to the graph isomorphism problem (and so all problems in GI). A problem X is called complete for GI, or GI-complete, if it is both GI-hard and a polynomial-time solution to the GI problem would yield a polynomial-time solution to X. The graph isomorphism problem is contained in both NP and co- AM. GI is contained in and low for Parity P, as well as contained in the potentially much smaller class SPP. That it lies in Parity P means that the graph isomorphism problem is no harder than determining whether a polynomial-time nondeterministic Turing machine has an even or odd number of accepting paths. GI is also contained in and low for ZPPNP. This essentially means that an efficient
Las Vegas algorithm In computing, a Las Vegas algorithm is a randomized algorithm that always gives Correctness (computer science), correct results; that is, it always produces the correct result or it informs about the failure. However, the runtime of a Las Vegas alg ...
with access to an NP
oracle An oracle is a person or thing considered to provide insight, wise counsel or prophetic predictions, most notably including precognition of the future, inspired by deities. If done through occultic means, it is a form of divination. Descript ...
can solve graph isomorphism so easily that it gains no power from being given the ability to do so in constant time.


GI-complete and GI-hard problems


Isomorphism of other objects

There are a number of classes of mathematical objects for which the problem of isomorphism is a GI-complete problem. A number of them are graphs endowed with additional properties or restrictions: * digraphs * labelled graphs, with the proviso that an isomorphism is not required to preserve the labels, but only the equivalence relation consisting of pairs of vertices with the same label *"polarized graphs" (made of a complete graph Km and an empty graph Kn plus some edges connecting the two; their isomorphism must preserve the partition) *2- colored graphs *explicitly given finite
structure A structure is an arrangement and organization of interrelated elements in a material object or system, or the object or system so organized. Material structures include man-made objects such as buildings and machines and natural objects such as ...
s * multigraphs * hypergraphs *
finite automata A finite-state machine (FSM) or finite-state automaton (FSA, plural: ''automata''), finite automaton, or simply a state machine, is a mathematical model of computation. It is an abstract machine that can be in exactly one of a finite number ...
* Markov Decision Processes *
commutative In mathematics, a binary operation is commutative if changing the order of the operands does not change the result. It is a fundamental property of many binary operations, and many mathematical proofs depend on it. Perhaps most familiar as a pr ...
class 3
nilpotent In mathematics, an element x of a ring (mathematics), ring R is called nilpotent if there exists some positive integer n, called the index (or sometimes the degree), such that x^n=0. The term, along with its sister Idempotent (ring theory), idem ...
(i.e., ''xyz'' = 0 for every elements ''x'', ''y'', ''z'')
semigroup In mathematics, a semigroup is an algebraic structure consisting of a set together with an associative internal binary operation on it. The binary operation of a semigroup is most often denoted multiplicatively (just notation, not necessarily th ...
s *finite rank
associative In mathematics, the associative property is a property of some binary operations that rearranging the parentheses in an expression will not change the result. In propositional logic, associativity is a valid rule of replacement for express ...
algebras over a fixed algebraically closed field with zero squared radical and commutative factor over the radical. *
context-free grammar In formal language theory, a context-free grammar (CFG) is a formal grammar whose production rules can be applied to a nonterminal symbol regardless of its context. In particular, in a context-free grammar, each production rule is of the fo ...
s * normal-form games * balanced incomplete block designs *Recognizing combinatorial isomorphism of convex polytopes represented by vertex-facet incidences.


GI-complete classes of graphs

A class of graphs is called GI-complete if recognition of isomorphism for graphs from this subclass is a GI-complete problem. The following classes are GI-complete: * connected graphs *graphs of
diameter In geometry, a diameter of a circle is any straight line segment that passes through the centre of the circle and whose endpoints lie on the circle. It can also be defined as the longest Chord (geometry), chord of the circle. Both definitions a ...
2 and
radius In classical geometry, a radius (: radii or radiuses) of a circle or sphere is any of the line segments from its Centre (geometry), center to its perimeter, and in more modern usage, it is also their length. The radius of a regular polygon is th ...
1 * directed acyclic graphs * regular graphs * bipartite graphs without non-trivial strongly regular subgraphs *bipartite Eulerian graphs *bipartite regular graphs *
line graph In the mathematics, mathematical discipline of graph theory, the line graph of an undirected graph is another graph that represents the adjacencies between edge (graph theory), edges of . is constructed in the following way: for each edge i ...
s * split graphs * chordal graphs *regular
self-complementary graph In the mathematical field of graph theory, a self-complementary graph is a graph which is isomorphic to its complement. The simplest non-trivial self-complementary graphs are the path graph and the cycle graph. There is no known characteri ...
s * polytopal graphs of general,
simple Simple or SIMPLE may refer to: *Simplicity, the state or quality of being simple Arts and entertainment * ''Simple'' (album), by Andy Yorke, 2008, and its title track * "Simple" (Florida Georgia Line song), 2018 * "Simple", a song by John ...
, and simplicial convex polytopes in arbitrary dimensions. Many classes of digraphs are also GI-complete.


Other GI-complete problems

There are other nontrivial GI-complete problems in addition to isomorphism problems. * Finding a graph's automorphism group. * Counting automorphisms of a graph. *The recognition of self-complementarity of a graph or digraph. *A clique problem for a class of so-called ''M''-graphs. It is shown that finding an isomorphism for ''n''-vertex graphs is equivalent to finding an ''n''-clique in an ''M''-graph of size ''n''2. This fact is interesting because the problem of finding a clique of order (1 − ''ε'')''n'' in a ''M''-graph of size ''n''2 is NP-complete for arbitrarily small positive ε. *The problem of homeomorphism of 2-complexes. *The definability problem for first-order logic. The input of this problem is a relational database instance ''I'' and a relation ''R'', and the question to answer is whether there exists a first-order query ''Q'' (without constants) such that ''Q'' evaluated on ''I'' gives R as the answer.


GI-hard problems

*The problem of counting the number of isomorphisms between two graphs is polynomial-time equivalent to the problem of telling whether even one exists.; . *The problem of deciding whether two convex polytopes given by either the V-description or H-description are projectively or affinely isomorphic. The latter means existence of a projective or affine map between the spaces that contain the two polytopes (not necessarily of the same dimension) which induces a bijection between the polytopes.


Program checking

have shown a probabilistic checker for programs for graph isomorphism. Suppose ''P'' is a claimed polynomial-time procedure that checks if two graphs are isomorphic, but it is not trusted. To check if graphs ''G'' and ''H'' are isomorphic: * Ask ''P'' whether ''G'' and ''H'' are isomorphic. ** If the answer is "yes": *** Attempt to construct an isomorphism using ''P'' as subroutine. Mark a vertex ''u'' in ''G'' and ''v'' in ''H'', and modify the graphs to make them distinctive (with a small local change). Ask ''P'' if the modified graphs are isomorphic. If no, change ''v'' to a different vertex. Continue searching. *** Either the isomorphism will be found (and can be verified), or ''P'' will contradict itself. ** If the answer is "no": *** Perform the following 100 times. Choose randomly ''G'' or ''H'', and randomly permute its vertices. Ask ''P'' if the graph is isomorphic to ''G'' and ''H''. (As in AM protocol for graph nonisomorphism). *** If any of the tests are failed, judge ''P'' as invalid program. Otherwise, answer "no". This procedure is polynomial-time and gives the correct answer if ''P'' is a correct program for graph isomorphism. If ''P'' is not a correct program, but answers correctly on ''G'' and ''H'', the checker will either give the correct answer, or detect invalid behaviour of ''P''. If ''P'' is not a correct program, and answers incorrectly on ''G'' and ''H'', the checker will detect invalid behaviour of ''P'' with high probability, or answer wrong with probability 2−100. Notably, ''P'' is used only as a blackbox.


Applications

Graphs are commonly used to encode structural information in many fields, including
computer vision Computer vision tasks include methods for image sensor, acquiring, Image processing, processing, Image analysis, analyzing, and understanding digital images, and extraction of high-dimensional data from the real world in order to produce numerical ...
and
pattern recognition Pattern recognition is the task of assigning a class to an observation based on patterns extracted from data. While similar, pattern recognition (PR) is not to be confused with pattern machines (PM) which may possess PR capabilities but their p ...
, and graph matching, i.e., identification of similarities between graphs, is an important tools in these areas. In these areas graph isomorphism problem is known as the exact graph matching.Endika Bengoetxea, Ph.D.
Abstract
/ref> In
cheminformatics Cheminformatics (also known as chemoinformatics) refers to the use of physical chemistry theory with computer and information science techniques—so called "'' in silico''" techniques—in application to a range of descriptive and prescriptive ...
and in mathematical chemistry, graph isomorphism testing is used to identify a
chemical compound A chemical compound is a chemical substance composed of many identical molecules (or molecular entities) containing atoms from more than one chemical element held together by chemical bonds. A molecule consisting of atoms of only one element ...
within a
chemical database A chemical database is a database specifically designed to store chemical information. This information is about chemical and crystal structures, spectra, reactions and syntheses, and thermophysical data. Types of chemical databases Bioactiv ...
. Also, in organic mathematical chemistry graph isomorphism testing is useful for generation of molecular graphs and for computer synthesis. Chemical database search is an example of graphical
data mining Data mining is the process of extracting and finding patterns in massive data sets involving methods at the intersection of machine learning, statistics, and database systems. Data mining is an interdisciplinary subfield of computer science and ...
, where the graph canonization approach is often used. In particular, a number of
identifier An identifier is a name that identifies (that is, labels the identity of) either a unique object or a unique ''class'' of objects, where the "object" or class may be an idea, person, physical countable object (or class thereof), or physical mass ...
s for
chemical substance A chemical substance is a unique form of matter with constant chemical composition and characteristic properties. Chemical substances may take the form of a single element or chemical compounds. If two or more chemical substances can be com ...
s, such as SMILES and InChI, designed to provide a standard and human-readable way to encode molecular information and to facilitate the search for such information in databases and on the web, use canonization step in their computation, which is essentially the canonization of the graph which represents the molecule. In
electronic design automation Electronic design automation (EDA), also referred to as electronic computer-aided design (ECAD), is a category of software tools for designing Electronics, electronic systems such as integrated circuits and printed circuit boards. The tools wo ...
graph isomorphism is the basis of the Layout Versus Schematic (LVS) circuit design step, which is a verification whether the
electric circuit An electrical network is an interconnection of electrical components (e.g., battery (electricity), batteries, resistors, inductors, capacitors, switches, transistors) or a model of such an interconnection, consisting of electrical elements (e. ...
s represented by a circuit schematic and an integrated circuit layout are the same.


See also

* Graph automorphism problem * Graph canonization


Notes


References

*. *. *. *. *. *. *. *. *. * *. *. *. *. *. *. *. *. *. *. *. *. *. *. *. English translation in ''Journal of Mathematical Sciences'' 22 (3): 1285–1289, 1983. *. *. *. *. *. *. *. *. *. *. *. *. Full paper in '' Information and Control'' 56 (1–2): 1–20, 1983. *. *. *. *. *; also ''Journal of Computer and System Sciences'' 37: 312–323, 1988. *. *. *.


Surveys and monographs

*. *. *. (Translated from ''Zapiski Nauchnykh Seminarov Leningradskogo Otdeleniya Matematicheskogo Instituta im. V. A. Steklova AN SSSR'' (Records of Seminars of the Leningrad Department of Steklov Institute of Mathematics of the USSR Academy of Sciences), Vol. 118, pp. 83–158, 1982.) *. (A brief survey of open questions related to the isomorphism problem for graphs, rings and groups.) *. (''From the book cover'': The books focuses on the issue of the computational complexity of the problem and presents several recent results that provide a better understanding of the relative position of the problem in the class NP as well as in other complexity classes.) *. (This 24th edition of the Column discusses the state of the art for the open problems from the book '' Computers and Intractability'' and previous columns, in particular, for Graph Isomorphism.) *. *.


Software


Graph Isomorphism
review of implementations
The Stony Brook Algorithm Repository
{{Authority control Graph algorithms Morphisms Computational problems in graph theory Unsolved problems in computer science Computational complexity theory Quasi-polynomial time algorithms