Let G 1 = (V 1, E 1 ) and G 2 = (V 2, E 2 ) be graphs. Introduction. Some facts about Graph Isomorphism. Proving Graph Isomorphism completeness

Similar documents
Graph Isomorphism. Algorithms and networks

Introduction III. Graphs. Motivations I. Introduction IV

8 Colouring Planar Graphs

v V Question: How many edges are there in a graph with 10 vertices each of degree 6?

Introduction to Graph Theory

Discharging and reducible configurations

Graph Theory S 1 I 2 I 1 S 2 I 1 I 2

Necessary edges in k-chordalizations of graphs

Faster parameterized algorithms for Minimum Fill-In

Adjacent: Two distinct vertices u, v are adjacent if there is an edge with ends u, v. In this case we let uv denote such an edge.

W[1]-hardness. Dániel Marx. Recent Advances in Parameterized Complexity Tel Aviv, Israel, December 3, 2017

INTRODUCTION TO GRAPH THEORY. 1. Definitions

W[1]-hardness. Dániel Marx 1. Hungarian Academy of Sciences (MTA SZTAKI) Budapest, Hungary

REU Problems of the Czech Group

Faster parameterized algorithms for Minimum Fill-In

Optimal Linear Arrangement of Interval Graphs

Minimal Dominating Sets in Graphs: Enumeration, Combinatorial Bounds and Graph Classes

NP-Completeness. Algorithms

Fixed-parameter tractable canonization and isomorphism test for graphs of bounded treewidth

On Possible Counterexamples to Negami s Planar Cover Conjecture

Coloring edges and vertices of graphs without short or long cycles

MC 302 GRAPH THEORY 10/1/13 Solutions to HW #2 50 points + 6 XC points

Rigidity, connectivity and graph decompositions

Math 170- Graph Theory Notes

Treewidth. Kai Wang, Zheng Lu, and John Hicks. April 1 st, 2015

Common Induced Subgraph Isomorphism Structural Parameterizations and Exact Algorithms

MATH 350 GRAPH THEORY & COMBINATORICS. Contents

Vertex Cover is Fixed-Parameter Tractable

9.1 Cook-Levin Theorem

COLORING EDGES AND VERTICES OF GRAPHS WITHOUT SHORT OR LONG CYCLES

Lecture 3: Recap. Administrivia. Graph theory: Historical Motivation. COMP9020 Lecture 4 Session 2, 2017 Graphs and Trees

γ(ɛ) (a, b) (a, d) (d, a) (a, b) (c, d) (d, d) (e, e) (e, a) (e, e) (a) Draw a picture of G.

PCP and Hardness of Approximation

ON THE STRUCTURE OF SELF-COMPLEMENTARY GRAPHS ROBERT MOLINA DEPARTMENT OF MATHEMATICS AND COMPUTER SCIENCE ALMA COLLEGE ABSTRACT

Fixed-Parameter Algorithms, IA166

Computing optimal total vertex covers for trees

The k-center problem Approximation Algorithms 2009 Petros Potikas

Math 776 Homework. Austin Mohr. June 15, Theorem 1.1. The following assertions are equivalent for a graph T : (i) T is a tree;

Fixed Parameter Algorithms

FEDOR V. FOMIN. Lectures on treewidth. The Parameterized Complexity Summer School 1-3 September 2017 Vienna, Austria

ADJACENCY POSETS OF PLANAR GRAPHS

Dominating Set on Bipartite Graphs

Graph Isomorphism Completeness for Chordal bipartite graphs and Strongly Chordal Graphs

CHAPTER 2. Graphs. 1. Introduction to Graphs and Graph Isomorphism

Lecture 2 : Counting X-trees

Basic Combinatorics. Math 40210, Section 01 Fall Homework 4 Solutions

An Investigation of the Planarity Condition of Grötzsch s Theorem

arxiv: v1 [cs.dm] 21 Dec 2015

Bipartite Roots of Graphs

Interaction Between Input and Output-Sensitive

Algorithm Graph Theory: How hard is your combinatorial optimization problem?

HOMEWORK 4 SOLUTIONS. Solution: The Petersen graph contains a cycle of odd length as a subgraph. Hence,

Introduction to. Graph Theory. Second Edition. Douglas B. West. University of Illinois Urbana. ftentice iiilil PRENTICE HALL

Solving Dominating Set in Larger Classes of Graphs: FPT Algorithms and Polynomial Kernels

Approximation Algorithms

Preprocessing for treewidth

Applied Mathematics Letters. Graph triangulations and the compatibility of unrooted phylogenetic trees

Problem Set 3. MATH 776, Fall 2009, Mohr. November 30, 2009

Trees. Arash Rafiey. 20 October, 2015

On the Complexity of Various Parameterizations of Common Induced Subgraph Isomorphism

Graph Algorithms Matching

Reductions of Graph Isomorphism Problems. Margareta Ackerman. Technical Report 08

arxiv: v5 [cs.dm] 9 May 2016

4-critical graphs on surfaces without contractible cycles of length at most 4

Basics of Graph Theory

Lecture outline. Graph coloring Examples Applications Algorithms

Complexity Results on Graphs with Few Cliques

Explicit homomorphisms of hexagonal graphs to one vertex deleted Petersen graph

Math 575 Exam 3. (t). What is the chromatic number of G?

arxiv: v3 [cs.ds] 26 Sep 2013

Missouri State University REU, 2013

Proposition 1. The edges of an even graph can be split (partitioned) into cycles, no two of which have an edge in common.

arxiv: v2 [cs.dm] 2 Nov 2016

Number Theory and Graph Theory

Exponential time algorithms for the minimum dominating set problem on some graph classes

Finding a winning strategy in variations of Kayles

MAS341 Graph Theory 2015 exam solutions

Graph Algorithms. Chromatic Polynomials. Graph Algorithms

On Pseudo trees and Graph Isomorphism. Abstract

R u t c o r Research R e p o r t. Graphs whose complement and square are isomorphic (extended version)

CS473-Algorithms I. Lecture 13-A. Graphs. Cevdet Aykanat - Bilkent University Computer Engineering Department

Treewidth and graph minors

GRAPHS, GRAPH MODELS, GRAPH TERMINOLOGY, AND SPECIAL TYPES OF GRAPHS

Extremal functions for rooted minors

K 4,4 e Has No Finite Planar Cover

A Lower Bound for the Distributed Lovász Local Lemma

Applied Mathematical Sciences, Vol. 5, 2011, no. 49, Július Czap

Math 776 Graph Theory Lecture Note 1 Basic concepts

A step towards the Bermond-Thomassen conjecture about disjoint cycles in digraphs

Treewidth: Preprocessing and Kernelization

Parameterized Reductions

Graph Theory. Part of Texas Counties.

Two Characterizations of Hypercubes

Free groups, Lecture 2, Part 2

Paths, Flowers and Vertex Cover

Max-Cut and Max-Bisection are NP-hard on unit disk graphs

Introduction to Parameterized Complexity

Coloring Fuzzy Circular Interval Graphs

A Structure of the Subgraph Induced at a Labeling of a Graph by the Subset of Vertices with an Interval Spectrum

Characterizing Graphs (3) Characterizing Graphs (1) Characterizing Graphs (2) Characterizing Graphs (4)

Transcription:

Graph Let G 1 = (V 1, E 1 ) and G 2 = (V 2, E 2 ) be graphs. Algorithms and Networks Graph Hans Bodlaender and Stefan Kratsch March 24, 2011 An G 1 to G 2 is a bijection φ : V 1 V 2 s.t.: {u, v} E 1 {φ(u), φ(v)} E 2 G 1 and G 2 are isomorphic: there exists an isomorphism of G 1 to G 2 injective: φ(u) = φ(v) u = v 1 2 Two isomorphic graphs The Graph problem x u z y w v 1 2 3 4 6 5 Graph Input: Two graphs G 1 and G 2. Output: Are G 1 and G 2 isomorphic? naive algorithm: try all n! injective functions from V (G 1 ) to V (G 2 ) φ(u) = 6 φ(v) = 5 φ(w) = 3 φ(x) = 1 φ(y) = 4 φ(z) = 2 natural extension: colored or labeled graphs 3 4

Applications Outline chemistry: check whether two given molecules are the same (e.g., to find a molecule in a database) automated circuit design: does the circuit layout match the initial design? as a subroutine in other algorithms (e.g., maintaining a set of subproblems that were already solved) 5 6 Outline Complexity of the Graph problem not known to be in P: no polynomial time algorithm is known best known worst-case runtime: O(c n log n ) it is contained in NP: a given isomorphism can be checked in polynomial time unlikely to be NP-complete: Schoening s lowness proof not known to be in conp: are there short proofs of non-isomorphism? Theorem: If Graph is NP-complete then the polynomial hierarchy collapses. [Schoening] 7 8

Intermediate? Outline Ladner s Theorem: If P NP then there exist intermediate problems in NP that are neither in P nor NP-complete. problem constructed by Ladner s Theorem is artificial however, many researchers believe Graph to be intermediate introduced class of problems that are as hard as GI A problem is Graph complete if it is equivalent to Graph under polynomial time many-one reductions. 9 10 Some GI-complete problems GI-complete special cases of Graph hypergraphs colored graphs finite automata checking whether a graph is self-complementary counting the number of isomorphisms between two graphs in particular: Graph is GI-complete even when restricted to various simple graph classes Graph on C graphs Input: Two graphs G 1, G 2 C. Output: Are G 1 and G 2 isomorphic? various graph classes C with GI-complete isomorphism problem: connected graphs, graphs of minimum degree at least c, directed acyclic graphs, bipartite graphs, split graphs, chordal graphs,... on co C if it is GI-complete on C Concept: If there would be a polynomial-time, e.g., bipartite graphs, that could be used to efficiently decide general graphs. 11 12

Simple hardness proofs GI- of GI on bipartite graphs I Theorem: Graph of connected graphs is GI-complete. idea: add a universal vertex to both graphs Lemma: Two graphs are isomorphic if and only if they are isomorphic after adding a universal vertex to both. Given a graph G = (V, E). Replace each edge {u, v} of G by two edges {u, x u,v } and {x u,v, v} where x u,v is a new vertex. Subdividing all edges. Let π(g) denote the obtained graph on V + E vertices and 2 E edges. Theorem: Graph of graphs with minimum degree at least c is GI-complete. idea: add?? universal vertices to both graphs Lemma: Two graphs G 1 and G 2 of minimum degree at least 3 are isomorphic if and only if π(g 1 ) and π(g 2 ) are isomorphic. 13 14 GI- of GI on bipartite graphs II Outline Lemma: Two graphs G 1 and G 2 of minimum degree at least 3 are isomorphic if and only if π(g 1 ) and π(g 2 ) are isomorphic. Theorem: Graph of bipartite graphs is GI-complete. 15 16

Graph classes with efficient isomorphism testing Polynomial time tree isomorphism planar graphs interval graphs graphs of bounded genus graphs of bounded degree graphs of bounded treewidth colored graphs such that each vertex has either bounded degree or bounded co-degree into each color... Given two G 1 and G 2, decide whether they are isomorphic. basic ideas: every nontrivial tree has (at least two) leaves proceed in rounds: each round remove all leaves use colors to encode the removed leaves 17 18 Polynomial time tree isomorphism Polynomial time tree isomorphism first try: (in both given ) remove all leaves assign each vertex an integer (the color) = number of adjacent leaves that were removed recurse/iterate? second try: given two colored both on n vertices ( n colors) remove all leaves n = number of remaining vertices (return NO if different) assign each vertex an integer array (a1, a 2,..., a n ) a i = number of adjacent leaves of color i that were removed observation: must be able to handle colored input good: two vertices have the same color lost the same number of leaves (don t need to know how many!) replace the arrays by numbers 1,..., n < n: same array entries same number repeat, while n > 2 if both are colored K1 or K 2 then compare colors return: YES if same, NO if different 19 20

Outline Why s? no algorithm is known that provably decides isomorphism in polynomial time but: Graph is easy on most instances it often very easy to show that two graphs are not isomorphic: different number of vertices or edges different degree sequences mismatch in any other isomorphism invariant property 21 22 : Central idea : Central idea (again) for isomorphism φ from G1 to G 2 it must hold that {u, v} E 1 {φ(u), φ(v)} E 2 in particular u has the same degree as deg(u) thus for any constant c: vertices of degree c in G1 must be mapped to vertices of degree c in G 2 the same is true for the number of neighbors that have degree c... of course we don t have φ yet, but we will use these properties to find it (if it exists) partition the vertices of both graphs into classes each class of G1 has a corresponding class in G 2 vertices of any class must be mapped to vertices of the corresponding class refine classes as long as possible finally: check all possible mappings that remain 23 24

: step by step : step by step given G = (V, E) and G = (V, E ) return non-isomorphic if V V or E E partition the vertices according to degree: V = V 0 V 1... V n 2 V n 1 V = V 0 V 1... V n 2 V n 1 where V c = {v V deg(v) = c} (ditto for V c) clearly φ(vc ) = V c for any G 1 to G 2 return non-isomorphic if Vc V c for any c {0,..., n 1} now let s refine the sets further: if a vertex v Vc has t neighbors in V c then φ(v) V c and it has t neighbors in V c refine the sets V c according to the number of neighbors in sets V c (in both graphs) if any two corresponding sets differ in size, then return non-isomorphic if any two corresponding sets have size one, then each isomorphism must respect that keep refining until all vertices from any set have the same number of neighbors in any (other) set 25 26 : other properties : Wrap-up other properties of vertices to refine by number of triangles that contain v (or any other such small graphs) shortest path distances from v (e.g., 5 vertices at distance one, 10 vertices at distance two,...) <your-suggestion-here> trade-off: more time investment possibly smaller sets partition the vertex sets of both graphs and refine as much as possible try all possible isomorphisms that map vertices from each set to vertices of the corresponding set in the second graph hopefully safe a lot of time as compared to trying all n! possible isomorphisms in practice this is highly successful (most of the time it will quickly discover a proof for non-isomorphism) does this work for colored graphs? certainly! 27 28

Outline is Graph in P? is Graph in conp? assuming P NP, can one show GI / P? 29 30