230 likes | 352 Views
Reconstruction Algorithm for Permutation Graphs. Masashi Kiyomi, Toshiki Saitoh, and Ryuhei Uehara School of Information Science Japan Advanced Institute of Science and Technology. v 1. v 2. v 2. v 4. v 3. v 5. v 1. v 3. v 5. v 2. v 4. v 1. v 4. v 2. v 4. v 1. v 2.
E N D
Reconstruction Algorithm for Permutation Graphs Masashi Kiyomi, Toshiki Saitoh, and Ryuhei Uehara School of Information Science Japan Advanced Institute of Science and Technology
v1 v2 v2 v4 v3 v5 v1 v3 v5 v2 v4 v1 v4 v2 v4 v1 v2 graph G v3 v3 v5 v3 v5 v1 v5 v4 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 preimage G-v2 G-v4 G-v1 G-v5 G-v3
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 1preimage 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 • 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 thenGN(v) is preimage of D. • Else goto 2. v Graph GN(v) Deck of GN(v) Input: D
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 thenGN(v) is preimage of D. • Else goto 2. v Graph GN(v) Deck of GN(v) Input: D ≠ D is not a deck of 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 thenGN(v) is preimage of D. • Else goto 2. v Graph GN(v) Deck of GN(v) Input: D = D is a deck of GN(v)
Naive Reconstruction Algorithm Exponential • 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 thenGN(v) is preimage of D. • Else goto 2. Isomorphism Polynomial time 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 Perfectgraphs HHD-free graphs Comparability graphs Chordalgraphs GI can be solved in polynomial time Kiyomi, et al. 2009 Distance-hereditary graphs Interval graphs Permutation graphs Exist reconstruction algorithms The conjecture is true. Tree Thresholdgraphs Proper intervalgraphs
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 2 5 3 6 4 1 5 2 Permutation graph Line representation
1 2 3 4 5 6 1 4 3 2 5 3 6 4 1 5 2 Permutationgraph Line Representation Permutation Graphs Lemma 1 Induced subgraphs of a permutation graph are permutation graphs. 6 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 graphwhose 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 isa prime with respect to modular decomposition has a unique representation. Input: D Graph G O(n2)time ・・・
Modular Decomposition • AmoduleM 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 ifM=φ, M=V, or |M|=1. • G is a prime if G contains only trivial modules. Not prime Prime
x1 y1 x2 y2 ・・・ ・・・ xi yi ・・・ ・・・ xn yn 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 Gis a prime. There is a vertex v s.t. G-v is a prime ⇔G is not isomorphic to H2n or, H2n Prime Prime Graph H2n
Algorithm (a preimage is a prime) • 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”.
M1 M2 M3 M4 M5 Modular Decomposition Tree • AmoduleM 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 strongif M does not overlap any other modules. • Modular decomposition tree(strong modules M1, M2) • M1 is an ancestor of M2 ⇔ M1 contains M2 M4 M5 M2 M1 M3
M1M2M3 M4 M2 M1 M5 M3 M4 M5 M4M5 M5 Modular Decompositionand Line Representation A line representation of a minimal strong module is unique. M3 M1 M2 M3 M4 M5 M2 M1 M3
Algorithm (Preimage is not a prime) • Foreach graph G∈D do • Construct modular decomposition of G. • Foreachminimal strong moduleMdo • Add a line segment to the line representation of M. • Check that a preimage has H2n, H2n, or twins.
Conclusions and Future Works Perfectgraph GI-complete HHD-freegraph Comparabilitygraph Chordal graph GI can be solved in polynomial time Circlegraph Circular-arcgraph Is the conjecture true? Distance-Hereditarygraph Permutation graph Intervalgraph Propose polynomial time algorithms Exist reconstruction algorithms The conjecture is true. Tree Thresholdgraph Proper Interval graph