An explicit algorithm is presented for testing whether two non-directed graphs are isomorphic or not. It is shown that for a graph of n vertices, the number of n independent operations needed for the test is polynomial in n. A proof that the algorithm actually performs the test is presented.
We present in this short note a polynomial graph extension procedure that can be used to improve any graph isomorphism algorithm. This construction propagates new constraints from the isomorphism constraints of the input graphs (denoted by $G(V,E)$ and $G'(V',E')$). Thus, information from the edge structures of $G$ and $G'$ is "hashed" into the weighted edges of the extended graphs. A bijective mapping is an isomorphism of the initial graphs if and only if it is an isomorphism of the extended graphs. As such, the construction enables the identification of pair of vertices $i\in V$ and $i'\in V…
Many complex questions in biology, physics, and mathematics can be mapped to the graph isomorphism problem and the closely related graph automorphism problem. In particular, these problems appear in the context of network visualization, computational logic, structure recognition, and dynamics of complex systems. Both problems have previously been suspected, but not proven, to be NP-complete. In this paper we propose an algorithm that solves both graph automorphism and isomorphism problems in polynomial time. The algorithm can be easily implemented and thus opens up a wide range of applications…
We develop the methodology of positioning graph vertices relative to each other to solve the problem of determining isomorphism of two undirected graphs. Based on the position of the vertex in one of the graphs, it is determined the corresponding vertex in the other graph. For the selected vertex of the undirected graph, we define the neighborhoods of the vertices. Next, we construct the auxiliary directed graph, spawned by the selected vertex. The vertices of the digraph are positioned by special characteristics --- vectors, which locate each vertex of the digraph relative the found neighborh…
The clique-width is a measure of complexity of decomposing graphs into certain tree-like structures. The class of graphs with bounded clique-width contains bounded tree-width graphs. We give a polynomial time graph isomorphism algorithm for graphs with clique-width at most three. Our work is independent of the work by Grohe et al. \cite{grohe2015isomorphism} showing that the isomorphism problem for graphs of bounded clique-width is polynomial time.
The paper develops a new technique to extract a characteristic subset from a random source that repeatedly samples from a set of elements. Here a characteristic subset is a set that when containing an element contains all elements that have the same probability. With this technique at hand the paper looks at the special case of the tournament isomorphism problem that stands in the way towards a polynomial-time algorithm for the graph isomorphism problem. Noting that there is a reduction from the automorphism (asymmetry) problem to the isomorphism problem, a reduction in the other direction is …
This paper presents the novel `uniqueness tree' algorithm, as one possible method for determining whether two finite, undirected graphs are isomorphic. We prove that the algorithm has polynomial time complexity in the worst case, and that it will always detect the presence of an isomorphism whenever one exists. We also propose that the algorithm will equivalently discern the lack of an isomorphism whenever one does not exist, and some initial justifications are given for this proposition, although it cannot yet be rigorously proven. Finally, we present experimental evidence for both the effect…
A method for improving the efficiency of graph isomorphism testing is presented. The method uses the structure of the graph colored by vertex hash codes as a means of partitioning vertices into equivalence classes, which in turn reduces the combinatorial burden of isomorphism testing. Unrolling the graph into a tree at each vertex allows structurally different regular graphs to be discriminated, a capability that the color refinement algorithm cannot do.
It's important to design polynomial time algorithms to test if two graphs are isomorphic at least for some special classes of graphs. An approach to this was presented by Eugene M. Luks(1981) in the work \textit{Isomorphism of Graphs of Bounded Valence Can Be Tested in Polynomial Time}. Unfortunately, it was a theoretical algorithm and was very difficult to put into practice. On the other hand, there is no known implementation of the algorithm, although Galil, Hoffman and Luks(1983) shows an improvement of this algorithm running in $O(n^3 \log n)$. The two main goals of this master thesis are …
A graph is said to be circular-arc if the vertices can be associated with arcs of a circle so that two vertices are adjacent if and only if the corresponding arcs overlap. It is proved that the isomorphism of circular-arc graphs can be tested by the Weisfeiler-Leman algorithm after individualization of two vertices.
We consider two basic algorithmic problems concerning tuples of (skew-)symmetric matrices. The first problem asks to decide, given two tuples of (skew-)symmetric matrices $(B_1, \dots, B_m)$ and $(C_1, \dots, C_m)$, whether there exists an invertible matrix $A$ such that for every $i\in\{1, \dots, m\}$, $A^tB_iA=C_i$. We show that this problem can be solved in randomized polynomial time over finite fields of odd size, the real field, and the complex field. The second problem asks to decide, given a tuple of square matrices $(B_1, \dots, B_m)$, whether there exist invertible matrices $A$ and $D…
We consider the problem of testing if two input forests are isomorphic or are far from being so. An algorithm is called an $\varepsilon$-tester for forest-isomorphism if given an oracle access to two forests $G$ and $H$ in the adjacency list model, with high probability, accepts if $G$ and $H$ are isomorphic and rejects if we must modify at least $\varepsilon n$ edges to make $G$ isomorphic to $H$. We show an $\varepsilon$-tester for forest-isomorphism with a query complexity $\mathrm{polylog}(n)$ and a lower bound of $Ω(\sqrt{\log{n}})$. Further, with the aid of the tester, we show that every…
The Graph Isomorphism (GI) problem is a theoretically interesting problem because it has not been proven to be in P nor to be NP-complete. Babai made a breakthrough in 2015 when announcing a quasipolynomial time algorithm for GI problem. Babai's work gives the most theoretically efficient algorithm for GI, as well as a strong evidence favoring the idea that class GI $\ne$ NP and thus P $\ne$ NP. Based on Babai's algorithm, we prove that GI can further be solved by a parallel algorithm that runs in polynomial time using a quasipolynomial number of processors. We achieve that result by identifyi…
We give an algorithm that, for every fixed k, decides isomorphism of graphs of rank width at most k in polynomial time. As the clique width of a graph is bounded in terms of its rank width, we also obtain a polynomial time isomorphism test for graph classes of bounded clique width.
In this paper, we show the existence of a polynomial time graph isomorphism algorithm for all graphs excluding graphs that are locally trianglefree. This particular class of graphs allows to divide the graph into neighbourhood sub-graph where each of induced sub-graph (neighbourhood) has at least 2 vertices. We construct all possible permutations for each induced sub-graph using a search tree. We construct automorphisms of subgraphs based on these permutations. Finally, we decide isomorphism through automorphisms . The author expects that the solution, present in this paper, may lead to a fast…
The graph isomorphism problem has a long history in mathematics and computer science, with applications in computational chemistry and biology, and it is believed to be neither solvable in polynomial time nor NP-complete. E. Luks proposed in 1982 the best algorithm so far for the solution of this problem, which moreover runs in polynomial time if an upper bound for the degrees of the nodes in the graphs is taken as a constant. Unfortunately, Luks' algorithm is purely theoretical, very difficult to use in practice, and, in particular, we have not been able to find any implementation of it in th…
We give an overview of recent advances on the graph isomorphism problem. Our main focus will be on Babai's quasi-polynomial time isomorphism test and subsequent developments that led to the design of isomorphism algorithms with a quasi-polynomial parameterized running time of the from $n^{\text{polylog}(k)}$, where $k$ is a graph parameter such as the maximum degree. A second focus will be the combinatorial Weisfeiler-Leman algorithm.
We engineer a new probabilistic Monte-Carlo algorithm for isomorphism testing. Most notably, as opposed to all other solvers, it implicitly exploits the presence of symmetries without explicitly computing them. We provide extensive benchmarks, showing that the algorithm outperforms all state-of-the-art solutions for isomorphism testing on most inputs from the de facto standard benchmark library for isomorphism testing. On many input types, our data not only show improved running times by an order of magnitude, but also reflect a better asymptotic behavior. Our results demonstrate that, with cu…
The group isomorphism problem determines whether two groups, given by their Cayley tables, are isomorphic. For groups with order $n$, an algorithm with $n^{(\log n + O(1))}$ running time, attributed to Tarjan, was proposed in the 1970s [Mil78]. Despite the extensive study over the past decades, the current best group isomorphism algorithm has an $n^{(1 / 4 + o(1))\log n}$ running time [Ros13]. The isomorphism testing for $p$-groups of (nilpotent) class 2 and exponent $p$ has been identified as a major barrier to obtaining an $n^{o(\log n)}$ time algorithm for the group isomorphism problem. Alt…
NLC-width is a variant of clique-width with many application in graph algorithmic. This paper is devoted to graphs of NLC-width two. After giving new structural properties of the class, we propose a $O(n^2 m)$-time algorithm, improving Johansson's algorithm \cite{Johansson00}. Moreover, our alogrithm is simple to understand. The above properties and algorithm allow us to propose a robust $O(n^2 m)$-time isomorphism algorithm for NLC-2 graphs. As far as we know, it is the first polynomial-time algorithm.
In this paper we present an algorithm, called conauto-2.0, that can efficiently compute a set of generators of the automorphism group of a graph, and test whether two graphs are isomorphic, finding an isomorphism if they are. This algorithm uses the basic individualization/refinement technique, and is an improved version of the algorithm conauto, which has been shown to be very fast for random graphs and several families of hard graphs. In this paper, it is proved that, under some circumstances, it is not only possible to prune the search space (using already found generators of the automorphi…
In the past decades for more and more graph classes the Graph Isomorphism Problem was shown to be solvable in polynomial time. An interesting family of graph classes arises from intersection graphs of geometric objects. In this work we show that the Graph Isomorphism Problem for unit square graphs, intersection graphs of axis-parallel unit squares in the plane, can be solved in polynomial time. Since the recognition problem for this class of graphs is NP-hard we can not rely on standard techniques for geometric graphs based on constructing a canonical realization. Instead, we develop new techn…
We introduce the framework of Deep Weisfeiler Leman algorithms (DeepWL), which allows the design of purely combinatorial graph isomorphism tests that are more powerful than the well-known Weisfeiler-Leman algorithm. We prove that, as an abstract computational model, polynomial time DeepWL-algorithms have exactly the same expressiveness as the logic Choiceless Polynomial Time (with counting) introduced by Blass, Gurevich, and Shelah (Ann. Pure Appl. Logic., 1999) It is a well-known open question whether the existence of a polynomial time graph isomorphism test implies the existence of a polynom…
In this paper, we present two main results. First, by only one conjecture (Conjecture 2.9) for recognizing a vertex symmetric graph, which is the hardest task for our problem, we construct an algorithm for finding an isomorphism between two graphs in polynomial time $ O(n^{3}) $. Second, without that conjecture, we prove the algorithm to be of quasi-polynomial time $ O(n^{1.5\log n}) $. The conjectures in this paper are correct for all graphs of size no larger than $ 5 $ and all graphs we have encountered. At least the conjecture for determining if a graph is vertex symmetric is quite true int…
In this paper we study a natural generalization of both {\sc $k$-Path} and {\sc $k$-Tree} problems, namely, the {\sc Subgraph Isomorphism} problem. In the {\sc Subgraph Isomorphism} problem we are given two graphs $F$ and $G$ on $k$ and $n$ vertices respectively as an input, and the question is whether there exists a subgraph of $G$ isomorphic to $F$. We show that if the treewidth of $F$ is at most $t$, then there is a randomized algorithm for the {\sc Subgraph Isomorphism} problem running in time $\cO^*(2^k n^{2t})$. To do so, we associate a new multivariate {Homomorphism polynomial} of degre…
In this work, we introduce bidirectional collision detection --- a new algorithmic tool that applies to the collision problems that arise in many isomorphism problems. For the group isomorphism problem, we show that bidirectional collision detection yields a deterministic n^((1 / 2) log n + O(1)) time algorithm whereas previously the n^(log n + O(1)) generator-enumeration algorithm was the best result for several decades. For the hard special case of solvable groups, we combine bidirectional collision detection with methods from the author's previous work to obtain a deterministic square-root …
As it follows from Gödel's incompleteness theorems, any consistent formal system of axioms and rules of inference should imply a true unprovable statement. Actually, this fundamental principle can be efficiently applicable in computational mathematics and complexity theory concerning the computational complexity of problems from the class NP, particularly and especially the NP-complete ones. While there is a wide set of algorithms for these problems that we call heuristic, the correctness or/and complexity of each concrete algorithm (or the probability of its correct and polynomial-time work) …
The computational complexity of the graph isomorphism problem is considered to be a major open problem in theoretical computer science. It is known that testing isomorphism of chordal graphs is polynomial-time equivalent to the general graph isomorphism problem. Every chordal graph can be represented as the intersection graph of some subtrees of a representing tree, and the leafage of a chordal graph is defined to be the minimum number of leaves in a representing tree for it. We prove that chordal graph isomorphism is fixed parameter tractable with leafage as parameter. In the process we intro…
In this paper we introduce a novel polynomial-time algorithm to compute graph invariants based on the modified random walk idea on graphs. However not proved to be a full graph invariant by now, our method gives the right answer for the graph instances other well-known methods could not compute (such as special Furer Gadgets and point-line incidence graphs of finite projective planes of higher degrees
The Graph Isomorphism problem has both theoretical and practical interest. In this paper we present an algorithm, called conauto-1.2, that efficiently tests whether two graphs are isomorphic, and finds an isomorphism if they are. This algorithm is an improved version of the algorithm conauto, which has been shown to be very fast for random graphs and several families of hard graphs. In this paper we establish a new theorem that allows, at very low cost, the easy discovery of many automorphisms. This result is especially suited for graphs with regularly connected components, and can be applied …
A classical difficult isomorphism testing problem is to test isomorphism of p-groups of class 2 and exponent p in time polynomial in the group order. It is known that this problem can be reduced to solving the alternating matrix space isometry problem over a finite field in time polynomial in the underlying vector space size. We propose a venue of attack for the latter problem by viewing it as a linear algebraic analogue of the graph isomorphism problem. This viewpoint leads us to explore the possibility of transferring techniques for graph isomorphism to this long-believed bottleneck case of …
On the average-case complexity landscape for Tensor-Isomorphism-complete problems over finite fields
Wuhan University(武汉大学);Hubei Center for Applied Mathematics(湖北省应用数学中心);Hubei Computational Science Key Laboratory(湖北省计算科学重点实验室);Wuhan Institute of Quantum Technology(武汉量子技术研究院);University of New South Wales(新南威尔士大学);Nanyang Technological University(南洋理工大学)
A 1978 theorem of Kozen states that two graphs on $n$ vertices are isomorphic if and only if there is a clique of size $n$ in the weak modular product between the two graphs. Restricting to bipartite graphs and considering complete bipartite subgraphs (bicliques) therein, we study the combinatorics of the weak modular product. We identify cases where isomorphism is tractable using this approach, which we call Isomorphism via Biclique Enumeration (IvBE). We find that IvBE is polynomial for bipartite $2K_2$-free graphs and quasi-polynomial for families of bipartite graphs, where the largest indu…
We give new polynomial-time algorithms for testing isomorphism of a class of groups given by multiplication tables (GpI). Two results (Cannon & Holt, J. Symb. Comput. 2003; Babai, Codenotti & Qiao, ICALP 2012) imply that GpI reduces to the following: given groups G, H with characteristic subgroups of the same type and isomorphic to $\mathbb{Z}_p^d$, and given the coset of isomorphisms $Iso(G/\mathbb{Z}_p^d, H/\mathbb{Z}_p^d)$, compute Iso(G, H) in time poly(|G|). Babai & Qiao (STACS 2012) solved this problem when a Sylow p-subgroup of $G/\mathbb{Z}_p^d$ is trivial. In this paper, we solve the …
Given a function f: {0,1}^n \to {0,1}, the f-isomorphism testing problem requires a randomized algorithm to distinguish functions that are identical to f up to relabeling of the input variables from functions that are far from being so. An important open question in property testing is to determine for which functions f we can test f-isomorphism with a constant number of queries. Despite much recent attention to this question, essentially only two classes of functions were known to be efficiently isomorphism testable: symmetric functions and juntas. We unify and extend these results by showing…
We extend Babai's quasipolynomial-time graph isomorphism test (STOC 2016) and develop a quasipolynomial-time algorithm for the multiple-coset isomorphism problem. The algorithm for the multiple-coset isomorphism problem allows to exploit graph decompositions of the given input graphs within Babai's group-theoretic framework. We use it to develop a graph isomorphism test that runs in time $n^{\operatorname{polylog}(k)}$ where $n$ is the number of vertices and $k$ is the minimum treewidth of the given graphs and $\operatorname{polylog}(k)$ is some polynomial in $\operatorname{log}(k)$. Our resul…
We give a new fpt algorithm testing isomorphism of $n$-vertex graphs of tree width $k$ in time $2^{k\operatorname{polylog} (k)}\operatorname{poly} (n)$, improving the fpt algorithm due to Lokshtanov, Pilipczuk, Pilipczuk, and Saurabh (FOCS 2014), which runs in time $2^{\mathcal{O}(k^5\log k)}\operatorname{poly} (n)$. Based on an improved version of the isomorphism-invariant graph decomposition technique introduced by Lokshtanov et al., we prove restrictions on the structure of the automorphism groups of graphs of tree width $k$. Our algorithm then makes heavy use of the group theoretic techniq…
Circular-arc graphs are intersection graphs of arcs on the circle. The aim of our work is to present a polynomial time algorithm testing whether two circular-arc graphs are isomorphic. To accomplish our task we construct decomposition trees, which are the structures representing all normalized intersection models of circular-arc graphs. Normalized models reflect the neighbourhood relation in circular-arc graphs and can be seen as their canonical representations; in particular, every intersection model can be easily transformed into a normalized one. Our work adapts and appropriately extends th…
Landau-Ginzburg mirror symmetry studies isomorphisms between graded Frobenius algebras, known as A- and B-models. Fundamental to constructing these models is the computation of the finite, Abelian $\textit{maximal symmetry group}$ $G_{W}^{\max}$ of a given polynomial $W$. For $\textit{invertible}$ polynomials, which have the same number of monomials as variables, a generating set for this group can be computed efficiently by inverting the $\textit{polynomial exponent matrix}$. However, this method does not work for $\textit{noninvertible}$ polynomials with more monomials than variables since t…
We give a fixed-parameter tractable algorithm that, given a parameter $k$ and two graphs $G_1,G_2$, either concludes that one of these graphs has treewidth at least $k$, or determines whether $G_1$ and $G_2$ are isomorphic. The running time of the algorithm on an $n$-vertex graph is $2^{O(k^5\log k)}\cdot n^5$, and this is the first fixed-parameter algorithm for Graph Isomorphism parameterized by treewidth. Our algorithm in fact solves the more general canonization problem. We namely design a procedure working in $2^{O(k^5\log k)}\cdot n^5$ time that, for a given graph $G$ on $n$ vertices, eit…
The maximum common subtree isomorphism problem asks for the largest possible isomorphism between subtrees of two given input trees. This problem is a natural restriction of the maximum common subgraph problem, which is ${\sf NP}$-hard in general graphs. Confining to trees renders polynomial time algorithms possible and is of fundamental importance for approaches on more general graph classes. Various variants of this problem in trees have been intensively studied. We consider the general case, where trees are neither rooted nor ordered and the isomorphism is maximum w.r.t. a weight function on…
A commonly studied means of parameterizing graph problems is the deletion distance from triviality (Guo et al. 2004), which counts vertices that need to be deleted from a graph to place it in some class for which efficient algorithms are known. In the context of graph isomorphism, we define triviality to mean a graph with maximum degree bounded by a constant, as such graph classes admit polynomial-time isomorphism tests. We generalise deletion distance to a measure we call elimination distance to triviality, based on elimination trees or tree-depth decompositions. We establish that graph canon…
The group isomorphism problem asks whether two given groups are isomorphic or not. Whereas the case where both groups are abelian is well understood and can be solved efficiently, very little is known about the complexity of isomorphism testing for nonabelian groups. In this paper we study this problem for a class of groups corresponding to one of the simplest ways of constructing nonabelian groups from abelian groups: the groups that are extensions of an abelian group A by a cyclic group of order m. We present an efficient algorithm solving the group isomorphism problem for all the groups of …
In recent years many algorithms have been developed for finding patterns in graphs and networks. A disadvantage of these algorithms is that they use subgraph isomorphism to determine the support of a graph pattern; subgraph isomorphism is a well-known NP complete problem. In this paper, we propose an alternative approach which mines tree patterns in networks by using subgraph homomorphism. The advantage of homomorphism is that it can be computed in polynomial time, which allows us to develop an algorithm that mines tree patterns in arbitrary graphs in incremental polynomial time. Homomorphism …