|
|
Line 1: |
Line 1: |
| {{unsolved|computer science|Is the graph isomorphism problem in P, or NP-complete, or neither?}}
| | The writer is recognized by the title of Figures Wunder. I am a meter reader. To collect badges is what her family members and her appreciate. My family members life in Minnesota and my family enjoys it.<br><br>my weblog ... [http://bit.do/Lu9u healthy meals delivered] |
| The '''graph isomorphism problem''' is the [[computational problem]] of determining whether two finite [[graph (mathematics)|graph]]s are [[graph isomorphism|isomorphic]]. | |
| | |
| Besides its practical importance, the graph isomorphism problem is a curiosity in [[computational complexity theory]] as it is one of a very small number of problems belonging to [[NP (complexity)|NP]] neither known to be solvable in [[polynomial time]] nor [[NP-complete]]: it is one of only 12 such problems listed by {{harvtxt|Garey|Johnson|1979}}, and one of only two of that list whose complexity remains unresolved (the other being [[integer factorization]]).<ref>The latest one resolved was [[minimum-weight triangulation]], proved to be NP-complete in 2006. {{citation|first1=Wolfgang|last1=Mulzer|first2=Günter|last2=Rote|title=Minimum-weight triangulation is NP-hard|journal=Journal of the ACM|volume=55|issue=2|doi=10.1145/1346330.1346336|year=2008|pages=1|arxiv=cs.CG/0601002}}.</ref> {{As of|2008}} the best algorithm (Luks, 1983) has run time 2<sup>O(√(''n'' log ''n''))</sup> for graphs with ''n'' vertices.<ref name="Johnson 2005">{{harvnb|Johnson|2005}}</ref><ref>{{Harvtxt|Babai|Codenotti|2008}}.</ref>
| |
| | |
| 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.<ref>[[Uwe Schöning]], "Graph isomorphism is in the low hierarchy", Proceedings of the 4th Annual [[Symposium on Theoretical Aspects of Computer Science]], 1987, 114–124; also: ''Journal of Computer and System Sciences'', vol. 37 (1988), 312–323</ref>
| |
| | |
| 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.<ref>{{harvnb|McKay|1981}}</ref>
| |
| | |
| This problem is a special case of the [[subgraph isomorphism problem]],<ref>{{harvtxt|Ullman|1976}}.</ref> which is known to be [[NP-complete]]. It is also known to be a special case of the [[Abelian group|non-abelian]] [[hidden subgroup problem]] over the [[symmetric group]].<ref>{{cite arxiv|eprint=quant-ph/0501056v3|author1=[[Cris Moore|Cristopher Moore]]|author2=Alexander Russell|last3=Schulman | first3=Leonard J.|title=The Symmetric Group Defies Strong Fourier Sampling: Part I|class=quant-ph|year=2005}}</ref>
| |
| | |
| ==State of the art==
| |
| The best current theoretical algorithm is due to [[Eugene Luks]] (1983), and is based on the earlier work by Luks (1981), Babai & Luks (1982), combined with a ''subfactorial'' algorithm due to Zemlyachenko (1982). The algorithm relies on the [[classification of finite simple groups]]. Without CFSG, a slightly weaker bound
| |
| 2<sup>O(√''n'' log<sup>2</sup> ''n'')</sup> was obtained first for [[strongly regular graph]]s by [[László Babai]] (1980), and then extended to general graphs by Babai & Luks (1982). Improvement of the exponent √''n'' is a major open problem; for strongly regular graphs this was done by {{Harvtxt|Spielman|1996}}. For [[hypergraph]]s of bounded rank, a [[Sub-exponential time|subexponential]] upper bound matching the case of graphs, was recently obtained by {{Harvtxt|Babai|Codenotti|2008}}.
| |
| | |
| On a side note, 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]] isomorphism problem, and the permutation group intersection problem. For the latter two problems, Babai, Kantor and Luks (1983) obtained complexity bounds similar to that for the graph isomorphism.<ref>László Babai, [[William Kantor]], Eugene Luks, [http://portal.acm.org/citation.cfm?id=1382437.1382817 Computational complexity and the classification of finite simple groups], Proc. 24th FOCS (1983), pp. 162-171.</ref>
| |
| | |
| There are several competing practical algorithms for graph isomorphism, due to {{harvtxt|McKay|1981}}, {{harvtxt|Schmidt|Druffel|1976}}, {{harvtxt|Ullman|1976}}, etc. While they seem to perform well on [[random graphs]], a major drawback of these algorithms is their exponential time performance in the [[Best, worst and average case|worst case]].<ref>P. Foggia, C.Sansone, M. Vento, [http://www.engr.uconn.edu/~vkk06001/GraphIsomorphism/Papers/VF_SD_NAUTY_Ullman_Experiments.pdf A Performance Comparison of Five Algorithms for Graph Isomorphism], Proc. 3rd IAPR-TC15 Workshop Graph-Based Representations in Pattern Recognition, 2001, pp. 188-199.</ref>
| |
| | |
| ==Solved special cases==
| |
| A number of important special cases of the graph isomorphism problem have efficient, polynomial-time solutions:
| |
| * [[Tree (graph theory)|Tree]]s<ref>P.J. Kelly, "A congruence theorem for trees" Pacific J. Math., 7 (1957) pp. 961–968; {{harvnb|Aho|Hopcroft|Ullman|1974}}.</ref>
| |
| * [[Planar graph]]s<ref>{{harvnb|Hopcroft|Wong|1974}}</ref> (In fact, planar graph isomorphism is in [[L (complexity)|log space]],<ref>{{cite doi|10.1109/CCC.2009.16}}</ref> a class contained in [[P (complexity)|P]].)
| |
| * [[Interval graph]]s<ref>{{harvnb|Booth|Lueker|1979}}</ref>
| |
| * [[Permutation graph]]s<ref>{{harvnb|Colbourn|1981}}</ref>
| |
| * [[Partial k-tree|Partial ''k''-trees]]<ref>{{harvnb|Bodlaender|1990}}</ref>
| |
| *Bounded-parameter graphs
| |
| ** Graphs of bounded [[genus (mathematics)|genus]]<ref>{{harvnb|Miller|1980}}; {{harvnb|Filotti|Mayer|1980}}.</ref> (Note: planar graphs are graphs of genus 0)
| |
| ** Graphs of bounded [[degree (graph theory)|degree]]<ref>{{harvnb|Luks|1982}}</ref>
| |
| ** Graphs with bounded [[eigenvalue]] multiplicity<ref>{{harvnb|Babai|Grigoryev|Mount|1982}}</ref>
| |
| ** ''k''-Contractible graphs (a generalization of bounded degree and bounded genus)<ref>[[Gary L. Miller (mathematician)|Gary L. Miller]]: Isomorphism Testing and Canonical Forms for ''k''-Contractable Graphs (A Generalization of Bounded Valence and Bounded Genus). Proc. Int. Conf. on Foundations of Computer Theory, 1983, pp. 310–327 (''[[Lecture Notes in Computer Science]]'', vol. 158, full paper in: ''[[Information and Control]]'', 56(1–2):1–20, 1983.)</ref>
| |
| **Color-preserving isomorphism of [[colored graph]]s with bounded color multiplicity (i.e., at most ''k'' vertices have the same color for a fixed ''k'') is in class [[NC (complexity)|NC]], which is a subclass of [[P (complexity)|P]].<ref>[[Eugene Luks]], "[[Parallel algorithm]]s for [[permutation group]]s and graph isomorphism", Proc. IEEE Symp. Foundations of Computer Science, 1986, 292-302</ref>
| |
| | |
| == Complexity class GI ==<!-- [[GI]] links and [[GI (complexity)]] redirects to this section -->
| |
| Since the graph isomorphism problem is neither known to be NP-complete nor 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.<ref>{{harvnb|Booth|Colbourn|1977}}; {{harvnb|Köbler|Schöning|Torán|1993}}</ref> If in fact the graph isomorphism problem is solvable in polynomial time, '''GI''' would equal '''[[P (complexity)|P]]'''.
| |
| | |
| As is common for [[complexity class]]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 <math>X</math> is called [[complete (complexity)|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 <math>X</math>.
| |
| | |
| The graph isomorphism problem is contained in both '''NP''' and co-'''[[AM (complexity)|AM]]'''. GI is contained in and [[low (complexity)|low]] for [[Parity P]], as well as contained in the potentially much smaller class [http://qwiki.stanford.edu/wiki/Complexity_Zoo:S#spp SPP].<ref>{{harvnb|Köbler|Schöning|Torán|1992}}; {{harvnb|Arvind|Kurur|2006}}</ref> 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 [[ZPP (complexity)|ZPP]]<sup>NP</sup>.<ref>{{harvnb|Arvind|Köbler|2000}}</ref> This essentially means that an efficient [[Las Vegas algorithm]] with access to an NP [[oracle machine|oracle]] 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:<ref name=zkt>{{harvnb|Zemlyachenko|Korneenko|Tyshkevich|1985}}</ref>
| |
| *[[Directed graph|digraphs]]<ref name=zkt/>
| |
| *[[labelled graph]]s, with the proviso that an isomorphism is not required to preserve the labels,<ref name=zkt/> but only the [[equivalence relation]] consisting of pairs of vertices with the same label
| |
| *"polarized graphs" (made of a [[complete graph]] K<sub>m</sub> and an [[empty graph]] K<sub>n</sub> plus some edges connecting the two; their isomorphism must preserve the partition)<ref name=zkt/>
| |
| *2-[[colored graph]]s<ref name=zkt/>
| |
| *explicitly given finite [[structure (mathematical logic)|structure]]s<ref name=zkt/>
| |
| *[[multigraph]]s<ref name=zkt/>
| |
| *[[hypergraph]]s<ref name=zkt/>
| |
| *[[finite automata]]<ref name=zkt/>
| |
| *[[Markov decision process|Markov Decision Processes]]<ref>[http://www.cse.iitm.ac.in/~ravi/papers/Shravan-ICML08.pdf "On the hardness of finding symmetries in Markov decision processes", by SM Narayanamurthy, B Ravindran], Proceedings of the Twenty Fifth International Conference on Machine Learning (ICML 2008), pp. 688–696.</ref>
| |
| *[[commutative]] class 3 [[nilpotent]] (i.e., ''xyz'' = 0 for every elements ''x'', ''y'', ''z'') [[semigroup]]s<ref name=zkt/>
| |
| *finite rank [[associative]] [[Algebra over a field|algebras]] over a fixed algebraically closed field with zero squared radical and commutative factor over the radical<!-- whoah --><ref name=zkt/><ref>[[Dima Grigoriev|D.Yu.Grigor'ev]], "Complexity of “wild” matrix problems and of isomorphism of algebras and graphs", ''[[Journal of Mathematical Sciences]]'', Volume 22, Number 3, 1983, pp. 1285–1289, {{doi|10.1007/BF01084390}} (translation of a 1981 Russian language article)</ref>
| |
| *[[context-free grammar]]s<ref name=zkt/>
| |
| *[[balanced incomplete block design]]s<ref name=zkt/>
| |
| *Recognizing [[combinatorial isomorphism]] of [[convex polytope]]s represented by vertex-facet incidences.<ref name="Johnson 2005"/><ref name=kaibel>Volker Kaibel, Alexander Schwartz, [http://eprintweb.org/S/authors/All/ka/Kaibel/16 "On the Complexity of Polytope Isomorphism Problems"], ''Graphs and Combinatorics'', 19 (2):215 —230, 2003.</ref>
| |
| {{Expand list|date=August 2008}}
| |
| | |
| ====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:<ref name=zkt/>
| |
| *[[connected graph]]s<ref name=zkt/><!-- better to be replaced by original ref-->
| |
| *graphs of [[diameter (graph theory)|diameter]] 2 and [[radius (graph theory)|radius]] 1<ref name=zkt/>
| |
| *[[directed acyclic graph]]s<ref name=zkt/><!-- better to be replaced by original ref-->
| |
| *[[regular graph]]s.<ref name=zkt/><!-- better to be replaced by original ref-->
| |
| *[[bipartite graph]]s without non-trivial [[strongly regular graph|strongly regular subgraphs]]<ref name=zkt/><!-- better to be replaced by original ref-->
| |
| *bipartite [[Eulerian graph]]s<ref name=zkt/><!-- better to be replaced by original ref-->
| |
| *bipartite regular graphs<ref name=zkt/><!-- better to be replaced by original ref-->
| |
| *[[line graph]]s<ref name=zkt/><!-- better to be replaced by original ref-->
| |
| *[[chordal graph]]s<ref name=zkt/><!-- better to be replaced by original ref-->
| |
| *regular [[self-complementary graph]]s<ref name=zkt/><!-- better to be replaced by original ref-->
| |
| *[[polytopal graph]]s of general, [[simple polytope|simple]], and [[simplicial polytope|simplicial]] [[convex polytope]]s in arbitrary dimensions<ref name=kaibel/>
| |
| {{Expand list|date=August 2008}}
| |
| Many classes of digraphs are also GI-complete.
| |
| | |
| ====Other GI-complete problems====
| |
| There are other nontrivial GI-complete problems in addition to isomorphism problems.
| |
| *The recognition of self-complementarity of a graph or digraph.<ref>Colbourn M.J., [[Charles Colbourn|Colbourn Ch.J.]] "Graph isomorphism and self-complementary graphs", ''[[SIGACT News]]'', 1978, vol. 10, no. 1, 25–29.</ref>
| |
| *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''<sup>2</sup>. This fact is interesting because the problem of finding an (''n'' − ''ε'')-clique in a ''M''-graph of size ''n''<sup>2</sup> is NP-complete for arbitrarily small positive ε.<ref>{{harvnb|Kozen|1978}}.</ref>
| |
| *The problem of homeomorphism of 2-complexes.<ref>[[John Shawe-Taylor|J. Shawe-Taylor]], T.Pisanski, "Homeomorphism of 2-Complexes is Graph Isomorphism Complete", ''[[SIAM Journal on Computing]],'' 23 (1994) 120 – 132
| |
| .</ref>
| |
| | |
| ====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.<ref>R. Mathon, "A note on the graph isomorphism counting problem", ''[[Information Processing Letters]],'' 8 (1979) pp. 131–132; {{harvnb|Johnson|2005}}.</ref>
| |
| *The problem of deciding whether two [[convex polytope]]s 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.<ref name=kaibel/>
| |
| | |
| ==Program checking==
| |
| [[Manuel Blum|Blum]] and Kannan<ref>[ftp://ftp.cis.upenn.edu/pub/kannan/jacm.ps.gz Designing Programs that Check their Work]</ref> have shown a program checker 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 ''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 (complexity)|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<sup>−100</sup>.
| |
| | |
| Notably, ''P'' is used only as a blackbox.
| |
| | |
| == Applications ==
| |
| | |
| In [[cheminformatics]] and in [[mathematical chemistry]], graph isomorphism testing is used to identify a [[chemical compound]] within a [[chemical database]].<ref>Christophe-André Mario Irniger (2005) "Graph Matching: Filtering Databases of Graphs Using Machine Learning", ISBN 1-58603-557-6</ref> Also, in organic mathematical chemistry graph isomorphism testing is useful for generation of [[molecular graph]]s and for [[Combinatorial chemistry|computer synthesis]].
| |
| | |
| Chemical database search is an example of graphical [[data mining]], where the [[graph canonization]] approach is often used.<ref>"Mining Graph Data", by Diane J. Cook, Lawrence B. Holder (2007) ISBN 0-470-07303-9, [http://books.google.com/books?id=bHGy0_H0g8QC&pg=PA119&dq=%22canonical+labeling%22+graphs#PPA120,M1 pp. 120–122, section 6.2.1. "Canonical Labeling"]</ref> In particular, a number of [[identifier]]s for [[chemical substance]]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]] graph isomorphism is the basis of the [[Layout Versus Schematic]] (LVS) circuit design step, which is a verification whether the [[electric circuit]]s represented by a [[circuit diagram|circuit schematic]] and an [[integrated circuit layout]] are the same.<ref>{{cite conference |title=An artwork design verification system
| |
| |author=Baird, HS and Cho, YE
| |
| |conference=Proceedings of the 12th Design Automation Conference
| |
| |pages=414–420
| |
| |year=1975
| |
| |publisher=IEEE Press
| |
| |url=http://dl.acm.org/citation.cfm?id=809095 }}</ref>
| |
| | |
| ==See also==
| |
| *[[Graph automorphism problem]]
| |
| *[[Graph canonization]]
| |
| | |
| ==Notes==
| |
| {{reflist|2}}
| |
| | |
| ==References==
| |
| {{refbegin|2}}
| |
| *{{citation
| |
| | first1 = Alfred V.
| |
| | last1 = Aho
| |
| | authorlink1 = Alfred Aho
| |
| | first2 = John
| |
| | last2 = Hopcroft
| |
| | authorlink2 = John Hopcroft
| |
| | first3 = Jeffrey D.
| |
| | last3 = Ullman
| |
| | authorlink3 = Jeffrey Ullman
| |
| | title = The Design and Analysis of Computer Algorithms
| |
| | publisher = Addison–Wesley
| |
| | location = Reading, MA
| |
| | year = 1974}}.
| |
| *{{citation
| |
| | first1 = Vikraman
| |
| | last1 = Arvind
| |
| | first2 = Johannes
| |
| | last2 = Köbler
| |
| | contribution = Graph isomorphism is low for ZPP(NP) and other lowness results.
| |
| | title = Proceedings of the 17th Annual [[Symposium on Theoretical Aspects of Computer Science]]
| |
| | publisher = Springer-Verlag
| |
| | series = [[Lecture Notes in Computer Science]]
| |
| | volume = 1770
| |
| | isbn = 3-540-67141-2
| |
| | pages = 431–442
| |
| | year = 2000
| |
| | oclc = 43526888}}.
| |
| *{{citation
| |
| | first1 = Vikraman
| |
| | last1 = Arvind
| |
| | first2 = Piyush P.
| |
| | last2 = Kurur
| |
| | title = Graph isomorphism is in SPP
| |
| | journal = [[Information and Computation]]
| |
| | volume = 204
| |
| | issue = 5
| |
| | year = 2006
| |
| | pages = 835–852
| |
| | doi = 10.1016/j.ic.2006.02.002}}.
| |
| *{{Citation | last1=Babai | first1=László | author1-link=László Babai | last2=Codenotti | first2=Paolo | title=FOCS '08: Proceedings of the 2008 49th Annual IEEE Symposium on Foundations of Computer Science | publisher=IEEE Computer Society | isbn=978-0-7695-3436-7 | year=2008 | chapter=Isomorphism of Hypergraphs of Low Rank in Moderately Exponential Time | pages=667–676}}.
| |
| *{{citation
| |
| | first1 = László
| |
| | last1 = Babai
| |
| | authorlink1 = László Babai
| |
| | first2 = D. Yu.
| |
| | last2 = Grigoryev
| |
| | authorlink2 = Dima Grigoriev
| |
| | first3 = David M.
| |
| | last3 = Mount
| |
| | authorlink3 = David M. Mount
| |
| | contribution = Isomorphism of graphs with bounded eigenvalue multiplicity
| |
| | title = Proceedings of the 14th Annual ACM [[Symposium on Theory of Computing]]
| |
| | year = 1982
| |
| | pages = 310–324
| |
| | doi = 10.1145/800070.802206
| |
| | isbn = 0-89791-070-2}}.
| |
| *{{citation
| |
| | first = Hans
| |
| | last = Bodlaender | authorlink = Hans L. Bodlaender
| |
| | title = Polynomial algorithms for graph isomorphism and chromatic index on partial ''k''-trees
| |
| | journal = Journal of Algorithms
| |
| | volume = 11
| |
| | pages = 631–643
| |
| | year = 1990
| |
| | doi = 10.1016/0196-6774(90)90013-5
| |
| | issue = 4}}.
| |
| *{{citation
| |
| | first1 = Kellogg S.
| |
| | last1 = Booth
| |
| | first2 = C. J.
| |
| | last2 = Colbourn | author2-link = Charles Colbourn
| |
| | title = Problems polynomially equivalent to graph isomorphism
| |
| | publisher = Technical Report CS-77-04, Computer Science Department, University of Waterloo
| |
| | year = 1977}}.
| |
| *{{citation
| |
| | first1 = Kellogg S.
| |
| | last1 = Booth
| |
| | first2 = George S.
| |
| | last2 = Lueker
| |
| | title = A linear time algorithm for deciding interval graph isomorphism
| |
| | journal = [[Journal of the ACM]]
| |
| | volume = 26
| |
| | issue = 2
| |
| | year = 1979
| |
| | pages = 183–195
| |
| | doi = 10.1145/322123.322125}}.
| |
| *{{citation
| |
| | first1 = C.
| |
| | last1 = Boucher
| |
| | first2 = D.
| |
| | last2 = Loker
| |
| | title = Graph isomorphism completeness for perfect graphs and subclasses of perfect graphs
| |
| | url = http://www.cs.uwaterloo.ca/research/tr/2006/CS-2006-32.pdf
| |
| | id = Technical Report CS-2006-32
| |
| | publisher = University of Waterloo
| |
| | year = 2006}}.
| |
| *{{citation
| |
| | first = C. J.
| |
| | last = Colbourn | authorlink = Charles Colbourn
| |
| | title = On testing isomorphism of permutation graphs
| |
| | journal = Networks
| |
| | volume = 11
| |
| | pages = 13–21
| |
| | year = 1981
| |
| | doi = 10.1002/net.3230110103}}.
| |
| *{{citation
| |
| | first1=I. S. | last1=Filotti
| |
| | first2=Jack N. | last2=Mayer
| |
| | year=1980
| |
| | contribution=A polynomial-time algorithm for determining the isomorphism of graphs of fixed genus
| |
| | title=Proceedings of the 12th Annual ACM [[Symposium on Theory of Computing]]
| |
| | pages=236–243
| |
| | doi=10.1145/800141.804671
| |
| | isbn=0-89791-017-6}}.
| |
| *{{citation
| |
| | first1 = Michael R.
| |
| | last1 = Garey
| |
| | authorlink1 = Michael Garey
| |
| | first2 = David S.
| |
| | last2 = Johnson
| |
| | authorlink2 = David S. Johnson
| |
| | title = [[Computers and Intractability: A Guide to the Theory of NP-Completeness]]
| |
| | publisher = W. H. Freeman
| |
| | year = 1979
| |
| | isbn = 978-0-7167-1045-5
| |
| | oclc = 11745039}}.
| |
| *{{citation
| |
| | first1 = John
| |
| | last1 = Hopcroft
| |
| | authorlink1 = John Hopcroft
| |
| | first2 = J.
| |
| | last2 = Wong
| |
| | contribution = Linear time algorithm for isomorphism of planar graphs
| |
| | title = Proceedings of the Sixth Annual ACM [[Symposium on Theory of Computing]]
| |
| | year = 1974
| |
| | pages = 172–184
| |
| | doi = 10.1145/800119.803896}}.
| |
| *{{citation
| |
| | first1 = Johannes
| |
| | last1 = Köbler
| |
| | first2 = Uwe
| |
| | last2 = Schöning
| |
| | first3 = Jacobo
| |
| | last3 = Torán
| |
| | title = Graph isomorphism is low for PP
| |
| | journal = Computational Complexity
| |
| | volume = 2
| |
| | issue = 4
| |
| | year = 1992
| |
| | pages = 301–330
| |
| | doi = 10.1007/BF01200427}}.
| |
| *{{citation
| |
| | first1 = Johannes
| |
| | last1 = Köbler
| |
| | first2 = Uwe
| |
| | last2 = Schöning
| |
| | first3 = Jacobo
| |
| | last3 = Torán
| |
| | title = The Graph Isomorphism Problem: Its Structural Complexity
| |
| | publisher = Birkhäuser
| |
| | year = 1993
| |
| | isbn = 978-0-8176-3680-7
| |
| | oclc = 246882287}}.
| |
| *{{citation
| |
| | first = Dexter
| |
| | last = Kozen
| |
| | title = A clique problem equivalent to graph isomorphism
| |
| | journal = [[ACM SIGACT News]]
| |
| | volume = 10
| |
| | issue = 2
| |
| | pages = 50–52
| |
| | year = 1978
| |
| | doi = 10.1145/990524.990529}}.
| |
| *{{citation
| |
| | last = Luks
| |
| | first = Eugene M.
| |
| | title = Isomorphism of graphs of bounded valence can be tested in polynomial time
| |
| | journal = Journal of Computer and System Sciences
| |
| | volume = 25
| |
| | pages = 42–65
| |
| | year = 1982
| |
| | doi = 10.1016/0022-0000(82)90009-5}}.
| |
| *{{citation
| |
| | first1 = Brendan D.
| |
| | last1 = McKay
| |
| | authorlink = Brendan McKay
| |
| | title = Practical graph isomorphism
| |
| | id = 10th. Manitoba Conference on Numerical Mathematics and Computing (Winnipeg, 1980)
| |
| | journal = Congressus Numerantium
| |
| | volume = 30
| |
| | year = 1981
| |
| | pages = 45–87
| |
| | url = http://cs.anu.edu.au/~bdm/nauty/PGI/}}.
| |
| *{{citation
| |
| | first1 = Gary
| |
| | last1 = Miller
| |
| | authorlink = Gary L. Miller (mathematician)
| |
| | contribution = Isomorphism testing for graphs of bounded genus
| |
| | title = Proceedings of the 12th Annual ACM [[Symposium on Theory of Computing]]
| |
| | year = 1980
| |
| | pages = 225–235
| |
| | doi = 10.1145/800141.804670
| |
| | isbn = 0-89791-017-6}}.
| |
| *{{Citation
| |
| | last1=Schmidt
| |
| | first1=Douglas C.
| |
| | last2=Druffel
| |
| | first2=Larry E.
| |
| | title=A Fast Backtracking Algorithm to Test Directed Graphs for Isomorphism Using Distance Matrices
| |
| | publisher=ACM
| |
| | year=1976
| |
| | journal=J. ACM
| |
| | issn=0004-5411
| |
| | volume=23
| |
| | issue=3
| |
| | pages=433–445
| |
| | doi=10.1145/321958.321963}}.
| |
| *{{Citation | last1=Spielman | first1=Daniel A. | author1-link=Daniel Spielman | title=STOC '96: Proceedings of the twenty-eighth annual ACM symposium on Theory of computing | publisher=ACM | isbn=978-0-89791-785-8 | year=1996 | chapter=Faster isomorphism testing of strongly regular graphs | pages=576–584}}.
| |
| *{{citation
| |
| | first1 = Julian R.
| |
| | last1 = Ullman
| |
| | title = An algorithm for subgraph isomorphism
| |
| | journal = Journal of the ACM
| |
| | volume = 23
| |
| | pages = 31–42
| |
| | year = 1976
| |
| | doi = 10.1145/321921.321925}}.
| |
| | |
| ===Surveys and monographs===
| |
| *{{citation
| |
| | last1 = Read | first1 = Ronald C.
| |
| | last2 = Corneil | first2 = Derek G. | author2-link = Derek Corneil
| |
| | issue = 4
| |
| | journal = Journal of Graph Theory
| |
| | mr = 0485586
| |
| | pages = 339–363
| |
| | title = The graph isomorphism disease
| |
| | volume = 1
| |
| | year = 1977}}..
| |
| *Gati, G. "Further annotated bibliography on the isomorphism disease." – ''Journal of Graph Theory'' 1979, 3, 95–109.
| |
| *{{Citation
| |
| | last1 = Zemlyachenko | first1 = V. N.
| |
| | last2 = Korneenko | first2 = N. M.
| |
| | last3 = Tyshkevich | first3 = R. I.
| |
| |authorlink3=Regina Tyshkevich
| |
| | title = Graph isomorphism problem
| |
| | journal = Journal of Mathematical Sciences
| |
| | volume = 29
| |
| | issue = 4
| |
| | pages = 1426–1481
| |
| | doi = 10.1007/BF02104746
| |
| | year = 1985}}. (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.)
| |
| *{{Citation
| |
| | first = V.
| |
| | last = Arvind
| |
| | coauthors = Jacobo Torán
| |
| | title = Isomorphism Testing: Perspectives and Open Problems
| |
| | url = http://theorie.informatik.uni-ulm.de/Personen/toran/beatcs/column86.pdf
| |
| | journal = Bulletin of the [[European Association for Theoretical Computer Science]]
| |
| | volume =
| |
| | issue = no. 86
| |
| | pages = 66–84
| |
| | doi =
| |
| | year = 2005}}. (A brief survey of open questions related to the isomorphism problem for graphs, rings and groups.)
| |
| *{{Citation
| |
| | first = Johannes
| |
| | last = Köbler
| |
| | authorlink= Johannes Köbler
| |
| | coauthors = [[Uwe Schöning]], [[Jacobo Torán]]
| |
| | title = Graph Isomorphism Problem: The Structural Complexity
| |
| | publisher = [[:de:Birkhäuser Verlag|Birkhäuser Verlag]]
| |
| |isbn= 0-8176-3680-3
| |
| | year = 1993
| |
| | oclc = 246882287}}. (''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.)
| |
| *{{citation
| |
| | first = David S.
| |
| | last = Johnson
| |
| | authorlink = David S. Johnson
| |
| | title = The NP-Completeness Column
| |
| | journal = [[ACM Transactions on Algorithms]]
| |
| | volume = 1
| |
| | issue = no. 1
| |
| | pages = 160–176
| |
| | doi = 10.1145/1077464.1077476
| |
| | year = 2005}}. (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.)
| |
| *{{Citation
| |
| | first = Jacobo
| |
| | last = Torán
| |
| | coauthors = Fabian Wagner
| |
| | title = The Complexity of Planar Graph Isomorphism
| |
| | url = http://theorie.informatik.uni-ulm.de/Personen/toran/beatcs/column97.pdf
| |
| | journal = Bulletin of the [[European Association for Theoretical Computer Science]]
| |
| | volume =
| |
| | issue = no. 97
| |
| | pages =
| |
| | doi =
| |
| | year = 2009}}.
| |
| | |
| ===Software===
| |
| * [http://www.cs.sunysb.edu/~algorith/files/graph-isomorphism.shtml Graph Isomorphism], review of implementations, [http://www.cs.sunysb.edu/~algorith The Stony Brook Algorithm Repository].
| |
| {{refend}}
| |
| | |
| [[Category:Graph algorithms]]
| |
| [[Category:Morphisms]]
| |
| [[Category:Computational problems in graph theory]]
| |
| [[Category:Unsolved problems in computer science]]
| |