Reconstruction Algorithm for Permutation Graphs

Report 4 Downloads 147 Views
Reconstruction Algorithm for Permutation Graphs Masashi Kiyomi, Toshiki Saitoh, and Ryuhei Uehara School of Information Science Japan Advanced Institute of Science and Technology

Graph Reconstruction Problem  

Deck of Graph G=(V, E): multi-set {G-v | v∈V} Preimage of multi-set D: a graph whose deck is D deck of G

v1

v4

v1

v2

v3

v5

v3

v5

preimage v2

v4

v2

v4

G-v2

v1 v3

v5

graph G

v3

v5

G-v1

G-v4

v2

v4

v1

v2

v1

v5

v3

v4

G-v3

G-v5

Graph Reconstruction Problem  

Input: multi-set D whose has n graph with n-1 vertices Question: Is there a preimage whose deck is D?

Input: D

Unlabeled Graphs

Graph Reconstruction Conjecture 

For any multi-set D of graphs with n-1 vertices, there is at most 1 preimage whose deck is D (n≧3).

Input: D

Graph G

Different graph of G

Graph Reconstruction Conjecture 

Proposed by Ulam and Kelly [1941] 



Open problem

Reconstructible graph classes (the conjecture is true) 

regular graphs, trees, disconnected graphs, etc.

Related research  Reconstructible 



degree sequence, chromatic number, etc.

Many graph isomorphism-related complexity results 

Isomorphism problem is not easier than reconstruction problem.

Naive Reconstruction Algorithm 1. 2. 3. 4.

Select G∈D and add a vertex v to G. Add edges incident to v (GN(v)). Construct the deck DN(v) of GN(v). Check that DN(v) is equal to D (Deck Checking).  If DN(v) = D then GN(v) is preimage of D.  Else goto 2.

Input: D

Deck of GN(v)

v

Graph GN(v)

Naive Reconstruction Algorithm 1. 2. 3. 4.

Select G∈D and add a vertex v to G. Add edges incident to v (GN(v)). Construct the deck DN(v) of GN(v). Check that DN(v) is equal to D (Deck Checking).  If DN(v) = D then GN(v) is preimage of D.  Else goto 2.

Input: D

Deck of GN(v)

≠ D is not a deck of GN(v)

v

Graph GN(v)

Naive Reconstruction Algorithm 1. 2. 3. 4.

Select G∈D and add a vertex v to G. Add edges incident to v (GN(v)). Construct the deck DN(v) of GN(v). Check that DN(v) is equal to D (Deck Checking).  If DN(v) = D then GN(v) is preimage of D.  Else goto 2. Deck of GN(v)

Input: D

= D is a deck of GN(v)

v

Graph GN(v)

Naive Reconstruction Algorithm Select G∈D and add a vertex v to G. Add edges incident to v (GN(v)). Construct the deck DN(v) of GN(v). Check that DN(v) is equal to D (Deck Checking).  If DN(v) = D then GN(v) is preimage of D.  Else goto 2.

1. 2. 3. 4.

Exponential Polynomial time Isomorphism

This algorithm is very slow! 

Polynomial time algorithms  Input: restrict 

the graphs in multi-set D

The input graphs can solve the isomorphism problem in polynomial time.

GI-complete: the isomorphism problem is as hard as on general graphs

Our Contribution GI-complete

Perfect graphs

HHD-free graphs Comparability graphs Chordal graphs GI can be solved in polynomial time

Kiyomi, et al. 2009 Interval graphs

Distancehereditary graphs

Permutation graphs

Exist reconstruction algorithms

The conjecture is true. Proper interval graphs

Tree

Threshold graphs

Reconstruction Problem on Permutation Graphs  

Input: multi-set D Question: Is there a permutation graph whose deck is D?

Input: D

・ ・ ・

Permutation graph

Permutation Graphs 

A graph is called a permutation graph if the graph has a line representation. (also, permutation diagraph) 1

2

3

4

5

6 1

6 4

3

3

6 4 1 5 2 Line representation

2

5

Permutation graph

Permutation Graphs Lemma 1

Induced subgraphs of a permutation graph are permutation graphs. 1

2

3

4

5

6 1

6

4

3

6 4 1 5 2 Line Representation

3

2

5

Permutation graph

A preimage G is a permutation graph ⇒ each graph of the deck of G is a permutation graph.

Reconstruction Problem on Permutation Graphs 



Input: multi-set D  Each graph G∈D is a permutation graph Question: Is there a permutation graph whose deck is D? Permutation graphs

Input: D

・ ・ ・

Reconstruction Algorithm for Permutation Graphs?  Adding

a line segment to line representation of Gi in Deck.

There exist exponentially many line representations. Input: D

Graph Gi O(n2) time?

・・ ・ Unique line representation

Unique Line Representation Lemma 2 [T. Ma and J. Spinrad, 1994]

A permutation graph G that is a prime with respect to modular decomposition has a unique representation. Input: D

Graph G

・・ ・

O(n2) time

Modular Decomposition 

A module M is a set of vertices s.t. vertices of V-M are adjacent to either all vertices of M, or no vertex of M.





Module M is trivial if M=φ, M=V, or |M|=1. G is a prime if G contains only trivial modules.

Not prime

Prime

Unique Line Representation Lemma 2 [T. Ma and J. Spinrad, 1994]

A permutation graph G that is a prime with respect to modular decomposition has a unique representation. Lemma 3 [J.H. Schmerl, W.T. Trotter, 1993]

Let a graph G is a prime. There is a vertex v s.t. G-v is a prime ⇔ G is not isomorphic to H2n or, H2n x1 x2

Prime Prime

y1 y2

・・ xi ・ ・・ x ・ n

・・ ・ y i ・・ ・ y

n

Graph H2n

Algorithm (a preimage is a prime) 1. 2. 3. 4. 5.

Foreach graph G in D do If G is a prime then Add a line segment to the line representation of G. If there is no prime then Check that a preimage is H2n, or H2n 

When a preimage is not a prime 

By using modular decomposition tree, we reduce the problem to “the prime case”.

Overlap : M1  M 2   , M1 \ M 2   , and M 2 \ M1  

Modular Decomposition Tree 

A module M is set of vertices 

 

s.t. vertices of V-M are adjacent to either all vertices of M, or no vertex of M.

A module M is strong if M does not overlap any other modules. Modular decomposition tree (strong modules M1, M2)  M1 is an ancestor of M2 ⇔ M1 contains M2 M4 M1 M1

M5

M2 M3

M2

M3 M4

M5

Modular Decomposition and Line Representation M4 M1

M2

M1

M2

M1 M3

M3 M4 M2

M5M5 M3

M53 M M4 M1 MM 2 5 M3

M4

M5

A line representation of a minimal strong module is unique.

Algorithm (Preimage is not a prime) 1. 2. 3. 4. 5.

Foreach graph G∈D do Construct modular decomposition of G. Foreach minimal strong module M do Add a line segment to the line representation of M. Check that a preimage has H2n, H2n, or twins.

Conclusions and Future Works Perfect graph

GI-complete

HHD-free graph Comparability graph

Chordal graph GI can be solved in polynomial time

Circle graph

Circular-arc graph

Is the Interval graph conjecture true?

DistanceHereditary graph

Permutation graph

Propose polynomial time algorithms Exist reconstruction algorithms The conjecture is true. Proper Interval graph

Tree

Threshold graph