On the Hardness of Graph Isomorphism Jacobo Tor á n SIAM J. Comput. Vol 33, p1093-1108, 2004. Presenter: Qingwu Yang April, 2006.

Slides:



Advertisements
Similar presentations
Introduction to Algorithms NP-Complete
Advertisements

1 Nondeterministic Space is Closed Under Complement Presented by Jing Zhang and Yingbo Wang Theory of Computation II Professor: Geoffrey Smith.
Graph Isomorphism Algorithms and networks. Graph Isomorphism 2 Today Graph isomorphism: definition Complexity: isomorphism completeness The refinement.
1 NP-completeness Lecture 2: Jan P The class of problems that can be solved in polynomial time. e.g. gcd, shortest path, prime, etc. There are many.
NP-Completeness: Reductions
Department of Computer Science & Engineering
FORMAL LANGUAGES, AUTOMATA AND COMPUTABILITY
NP-complete and NP-hard problems Transitivity of polynomial-time many-one reductions Concept of Completeness and hardness for a complexity class Definition.
Complexity class NP Is the class of languages that can be verified by a polynomial-time algorithm. L = { x in {0,1}* | there exists a certificate y with.
The Theory of NP-Completeness
© The McGraw-Hill Companies, Inc., Chapter 8 The Theory of NP-Completeness.
Complexity 11-1 Complexity Andrei Bulatov NP-Completeness.
Complexity 12-1 Complexity Andrei Bulatov Non-Deterministic Space.
Complexity 15-1 Complexity Andrei Bulatov Hierarchy Theorem.
February 23, 2015CS21 Lecture 201 CS21 Decidability and Tractability Lecture 20 February 23, 2015.
Hardness Results for Problems P: Class of “easy to solve” problems Absolute hardness results Relative hardness results –Reduction technique.
Computability and Complexity 15-1 Computability and Complexity Andrei Bulatov NP-Completeness.
NP-Complete Problems Reading Material: Chapter 10 Sections 1, 2, 3, and 4 only.
Computability and Complexity 32-1 Computability and Complexity Andrei Bulatov Boolean Circuits.
NP-Complete Problems Problems in Computer Science are classified into
Computability and Complexity 20-1 Computability and Complexity Andrei Bulatov Class NL.
1 CSE 417: Algorithms and Computational Complexity Winter 2001 Lecture 23 Instructor: Paul Beame.
CS Master – Introduction to the Theory of Computation Jan Maluszynski - HT Lecture NP-Completeness Jan Maluszynski, IDA, 2007
Chapter 11: Limitations of Algorithmic Power
CS151 Complexity Theory Lecture 6 April 15, 2004.
Clique Cover Cook’s Theorem 3SAT and Independent Set
1 The Theory of NP-Completeness 2 NP P NPC NP: Non-deterministic Polynomial P: Polynomial NPC: Non-deterministic Polynomial Complete P=NP? X = P.
9.3 Representing Graphs and Graph Isomorphism
Theory of Computing Lecture 19 MAS 714 Hartmut Klauck.
The Theory of NP-Completeness 1. Nondeterministic algorithms A nondeterminstic algorithm consists of phase 1: guessing phase 2: checking If the checking.
1 The Theory of NP-Completeness 2012/11/6 P: the class of problems which can be solved by a deterministic polynomial algorithm. NP : the class of decision.
Theory of Computing Lecture 17 MAS 714 Hartmut Klauck.
INHERENT LIMITATIONS OF COMPUTER PROGRAMS CSci 4011.
1 NP-Completeness Poly time algorithm: input size n (in some encoding), worst case running time – O(n c ) for some constant c. Three classes of problems.
Week 10Complexity of Algorithms1 Hard Computational Problems Some computational problems are hard Despite a numerous attempts we do not know any efficient.
Complexity 25-1 Complexity Andrei Bulatov Counting Problems.
EMIS 8373: Integer Programming NP-Complete Problems updated 21 April 2009.
NP-Complete Problems. Running Time v.s. Input Size Concern with problems whose complexity may be described by exponential functions. Tractable problems.
1. 2 Lecture outline Basic definitions: Basic definitions: P, NP complexity classes P, NP complexity classes the notion of a certificate. the notion of.
CS 3343: Analysis of Algorithms Lecture 25: P and NP Some slides courtesy of Carola Wenk.
NP-completeness Section 7.4 Giorgi Japaridze Theory of Computability.
CSE 589 Part V One of the symptoms of an approaching nervous breakdown is the belief that one’s work is terribly important. Bertrand Russell.
CS6045: Advanced Algorithms NP Completeness. NP-Completeness Some problems are intractable: as they grow large, we are unable to solve them in reasonable.
Discrete Optimization Lecture 4 M. Pawan Kumar
Lecture 25 NP Class. P = ? NP = ? PSPACE They are central problems in computational complexity.
NP-completeness NP-complete problems. Homework Vertex Cover Instance. A graph G and an integer k. Question. Is there a vertex cover of cardinality k?
Chapter 11 Introduction to Computational Complexity Copyright © 2011 The McGraw-Hill Companies, Inc. Permission required for reproduction or display. 1.
NP-Completeness Note. Some illustrations are taken from (KT) Kleinberg and Tardos. Algorithm Design (DPV)Dasgupta, Papadimitriou, and Vazirani. Algorithms.
Introduction to Graph Theory By: Arun Kumar (Asst. Professor) (Asst. Professor)
CSCI 2670 Introduction to Theory of Computing December 2, 2004.
CSCI 2670 Introduction to Theory of Computing December 7, 2005.
The Theory of NP-Completeness 1. Nondeterministic algorithms A nondeterminstic algorithm consists of phase 1: guessing phase 2: checking If the checking.
COSC 3101A - Design and Analysis of Algorithms 14 NP-Completeness.
1 The Theory of NP-Completeness 2 Review: Finding lower bound by problem transformation Problem X reduces to problem Y (X  Y ) iff X can be solved by.
The NP class. NP-completeness Lecture2. The NP-class The NP class is a class that contains all the problems that can be decided by a Non-Deterministic.
P & NP.
Chapter 10 NP-Complete Problems.
Algorithms and networks
NP-Completeness Yin Tat Lee
CS21 Decidability and Tractability
Intro to Theory of Computation
CS154, Lecture 16: More NP-Complete Problems; PCPs
Algorithms and networks
NP-Complete Problems.
Time Complexity Classes
CSE 589 Applied Algorithms Spring 1999
Introduction to Graph Theory
Instructor: Aaron Roth
CHAPTER 7 Time complexity
Lecture 23 NP-Hard Problems
Presentation transcript:

On the Hardness of Graph Isomorphism Jacobo Tor á n SIAM J. Comput. Vol 33, p , Presenter: Qingwu Yang April, 2006

Graph isomorphism (GI) A graph isomorphism is a bijection, i.e., a one-to-one mapping, between the vertices of two graphs G and H: with the property that any two vertices u and v from G are adjacent if and only if f(u) and f(v) are adjacent in H. If an isomorphism can be constructed between two graphs, then we say those graphs are isomorphic. Determining whether two graphs are isomorphic is the graph isomorphism problem. (From Wikipedia, the free encyclopedia)

Example f(a) = 1 f(b) = 6 f(c) = 8 f(d) = 3 f(g) = 5 f(h) = 2 f(i) = 4 f(j) = 7 (From Wikipedia, the free encyclopedia)

Why is GI interesting? Many applications One of the few problems in NP that has resisted all attempts to be classified as NP-complete, or within P. Graph isomorphism complete complexity class. The best existing upper bound for GI is Polynomial time algorithms for restricted graph classes, such as planar graphs or graphs of bounded degree.

Graph Automorphism An automorphism in an undirected graph G = (V,E) is a permutation ϕ of the nodes that preserves adjacency. That is, for every u, v ∈ V, (u, v) ∈ E ⇔ ( ϕ (u), ϕ (v)) ∈ E.

For example, the grid graph has four automorphisms: (1, 2, 3, 4, 5, 6), (2, 1, 4, 3, 6, 5), (5, 6, 3, 4, 1, 2), and (6, 5, 4, 3, 2, 1). An example of Graph Automorphism

Logarithmic space modular counting class -- Mod k L Class Functions f: there is a nondeterministic polynomial time Turing machine which, on input x, has exactly f(x) accepting computation paths. Mod k L is the complexity class corresponding to sets recognized by nondeterministic logarithmic space machines such that x  Mod k L iff f(x)  0 (mod k) for every natural number k.

AC 0 Class and AC 0 many-one reductions AC 0 Class: class of problems solvable by a uniform family of Boolean circuits of polynomial size and constant depth with unbounded fan-in AND- and OR- gates, and NOT gates. AC 0 many-one reductions from function f to function g: if there is a uniform AC 0 family of circuits  such that f(x) = g(  (x)) for every input x.

GI is hard for all the logarithmic space modular counting classes Mod k L (k≥2) Main idea: simulate each modular gate with a graph gadget then combine the gadgets for the different gates into a graph, whose automorphisms simulate the behavior of the modular circuit.

How to generate graph gadgets?

The graph G 2 simulating a parity gate (k = 2 )

Properties of graph gadgets The graph gadget for a modular gate has nodes encoding the inputs and outputs of the gate. Any automorphism in the graph mapping the input nodes in a certain way must map the output nodes according to the value of the modular gate being simulated.

Next we prove ϕ is an automorphism, for all v,w, (v,w) ∈ E if and only if ( ϕ (v), ϕ (w)) ∈ E. The nodes in graph G k can be partitioned in three layers, the x and y nodes (input layer), the u nodes, and the z nodes (output layer).

Proof Let k ≥ 2. We reduce the mod k circuit value problem to GI. We transform an instance C of the circuit value problem for mod k circuits into a graph G C by constructing for every modular gate g j of C a graph gadget. Moreover, we color the x, y, u, and z nodes of the jth gadget, respectively, with one of the colors (x, j), (y, j), (u, j), and (z, j). The coloring implies that in any automorphism the nodes corresponding to a gate are mapped to nodes from the same gate.

Proof Connections between gates are translated in the following way: If the output z of a gate in the circuit is connected to one of the inputs x of another gate, the reduction puts k additional edges connecting (for i ∈ {0,..., k − 1}) node z i from the first gate to node x i from the second gate. For an input variable v j, k nodes v j 0,..., v j k−1 are considered in the reduction. Suppose the input variables of the circuit, v 1,…,v n, take values a 1,…,a n. The output gate z takes value b ∈ {0,…,k−1} if and only if there is an automorphism in G C mapping for all i = 0,…,k−1 and j = 1,…,n, and mapping zi to

Proof All the steps in the reduction can be done locally by an AC 0 circuit. The question of whether the output of the circuit equals b ∈ {0,…,k−1} can be easily reduced to whether two graphs G b,G b ’ are isomorphic. This question can be reduced to two graphs pairs ((G,H), (I, J)) ∈ PGI, with G being isomorphic to H if the value of the circuit is b, and I being isomorphic to J otherwise. For this it suffices to define G as Gb, H as Gb, and I and J as the standard OR- function for GI of i=b(Gi,Gi).

Homework The undirected graph accessibility problem is: given an undirected graph G and two vertices u, v  G, determine whether there is a path from u to v. Show that the undirected graph accessibility problem is reducible to the complement of GI.