part i introduction to treewidth school on parameterized
play

Part I. Introduction to treewidth SCHOOL ON PARAMETERIZED - PowerPoint PPT Presentation

FEDOR V. FOMIN Part I. Introduction to treewidth SCHOOL ON PARAMETERIZED ALGORITHMS AND COMPLEXITY 17-22 August 2014 B dlewo, Poland Why treewidth? Very general idea in science: large structures can be understood by breaking them into


  1. Dynamic table The size of the largest independent set I such that I ∩ X = S , or −∞ if no such set exists. X x1 x2 T [ ∅ ] x3 T [ x 1 ] T [ x 2 ] T [ x 3 ] T [ x 1 , x 2 ] T [ x 1 , x 3 ] T [ x 2 , x 3 ] T [ x 1 , x 2 , x 3 ]

  2. Dynamic table The size of the largest independent set I such that I ∩ X = S , or −∞ if no such set exists. X x1 x2 T [ ∅ ] 4 x3 T [ x 1 ] T [ x 2 ] T [ x 3 ] T [ x 1 , x 2 ] T [ x 1 , x 3 ] T [ x 2 , x 3 ] T [ x 1 , x 2 , x 3 ]

  3. Dynamic table The size of the largest independent set I such that I ∩ X = S , or −∞ if no such set exists. X x1 x2 T [ ∅ ] 4 x3 T [ x 1 ] T [ x 2 ] T [ x 3 ] T [ x 1 , x 2 ] T [ x 1 , x 3 ] T [ x 2 , x 3 ] −∞ T [ x 1 , x 2 , x 3 ]

  4. Dynamic table The size of the largest independent set I such that I ∩ X = S , or −∞ if no such set exists. X x1 x2 T [ ∅ ] 4 x3 T [ x 1 ] T [ x 2 ] T [ x 3 ] T [ x 1 , x 2 ] T [ x 1 , x 3 ] T [ x 2 , x 3 ] 3 −∞ T [ x 1 , x 2 , x 3 ]

  5. Dynamic table The size of the largest independent set I such that I ∩ X = S , or −∞ if no such set exists. X x1 x2 T [ ∅ ] 4 x3 T [ x 1 ] 4 T [ x 2 ] 3 T [ x 3 ] 3 T [ x 1 , x 2 ] −∞ T [ x 1 , x 3 ] 3 T [ x 2 , x 3 ] 3 −∞ T [ x 1 , x 2 , x 3 ]

  6. Introduce Add a vertex x i / ∈ X to X . The vertex x i can have arbitrary neighbours in X but no other neighbours. X x1 x4 x2 x3

  7. Introduce Add a vertex x i / ∈ X to X . The vertex x i can have arbitrary neighbours in X but no other neighbours. X x1 x4 x2 x3

  8. Introduce: Updating table T Suppose x i (here x 4 ) was introduced into X , with closed neighbourhood N [ x i ] . We update the table T .

  9. Introduce: Updating table T Suppose x i (here x 4 ) was introduced into X , with closed neighbourhood N [ x i ] . We update the table T .  ∈ S, T [ S ] if x i /    T [ S ] = −∞ if x i ∈ S and S ∩ N ( x i ) � = ∅ ,   1 + T [ S \ x i ] if x i ∈ S and S ∩ N ( x i ) = ∅ .  Update time: 2 k · n O (1) [There are tricks to turn it into 2 k · k O (1) ]

  10. Forget operation Pick a vertex x i ∈ X and forget that it is special (it loses the name x i and becomes “nameless”). X x1 x4 x2 x3

  11. Forget operation Pick a vertex x i ∈ X and forget that it is special (it loses the name x i and becomes “nameless”). X x4 x1 x2 x3

  12. Forget operation Pick a vertex x i ∈ X and forget that it is special (it loses the name x i and becomes “nameless”). X x1 x2 x3

  13. Forget: Updating table T Forgetting x i (here x 4 ). � � T [ S ] = max T [ S ] , T [ S ∪ x i ] Update time: 2 k k O (1)

  14. Two questions: Two important questions are not answered so far ◮ How to find a good generating sequence?

  15. Two questions: Two important questions are not answered so far ◮ How to find a good generating sequence? ◮ While the pathwidth of a tree can be arbitrarily large, the dynamic programs we used on trees and on graphs with small pathwidth are quite similar. Is it possible to combine both approaches?

  16. Two questions: Two important questions are not answered so far ◮ How to find a good generating sequence? ◮ While the pathwidth of a tree can be arbitrarily large, the dynamic programs we used on trees and on graphs with small pathwidth are quite similar. Is it possible to combine both approaches? In what follow we provide answers to both questions. The answer to the questions will be given by making use of tree decompositions and treewidth.

  17. Path and tree Trees and separators decompositions Dynamic programming Courcelle's THeorem Computing treewidth Applications on planar graphs Irrelevant vertex technique Beyond treewidth

  18. Pathwidth (canonical definition) A path decomposition of graph G is a sequence of bags X i ⊆ V ( G ) , i ∈ { 1 , . . . , , r } , ( X 1 , X 2 , . . . , X r ) such that

  19. Pathwidth (canonical definition) A path decomposition of graph G is a sequence of bags X i ⊆ V ( G ) , i ∈ { 1 , . . . , , r } , ( X 1 , X 2 , . . . , X r ) such that (P1) � 1 ≤ i ≤ r X i = V ( G ) . (P2) For every vw ∈ E ( G ) , there exists i ∈ { 1 , . . . , , r } such that bag X i contains both v and w . (P3) For every v ∈ V ( G ) , let i be the minimum and j be the maximum indices of the bags containing v . Then for every k , i ≤ k ≤ j , we have v ∈ X k . In other words, the indices of the bags containing v form an interval. The width of a path decomposition ( X 1 , X 2 , . . . , X r ) is max 1 ≤ i ≤ r | X i | − 1 . The pathwidth of a graph G is the minimum width of a path decomposition of G .

  20. Example a b b d d i a e e e e c d c g f h h c b a abc bcd cde d e deg deg ab bc bcde de degf de i hi ehi eh deh f g h i Figure : A graph and its path-decompositions.

  21. Nice Decompositions It is more convenient to work with nice decompositions. A path decomposition ( X 1 , X 2 , . . . , X r ) of a graph G is nice if ◮ | X 1 | = | X r | = 1 , and ◮ for every i ∈ { 1 , 2 , . . . , r − 1 } there is a vertex v of G such that either X i +1 = X i ∪ { v } , or X i +1 = X i \ { v } .

  22. Nice Decompositions It is more convenient to work with nice decompositions. A path decomposition ( X 1 , X 2 , . . . , X r ) of a graph G is nice if ◮ | X 1 | = | X r | = 1 , and ◮ for every i ∈ { 1 , 2 , . . . , r − 1 } there is a vertex v of G such that either X i +1 = X i ∪ { v } , or X i +1 = X i \ { v } . Thus bags of a nice path decomposition are of the two types. Bags of the first type are of the form X i +1 = X i ∪ { v } and are introduce nodes . Bags of the form X i +1 = X i \ { v } are forget nodes .

  23. An Example a b b d d i a e e e e c d c g f h h c b a abc bcd cde d e deg deg ab bc bcde de degf de f g i hi ehi eh deh h i Figure : A graph, its path and nice path decompositions.

  24. An Example a b b d d i a e e e e c d c g f h h c b a abc bcd cde d e deg deg ab bc bcde de degf de f g i hi ehi eh deh h i Figure : A graph, its path and nice path decompositions. Exercise: Construct an algorithm that for a given path decomposition of width k constructs a nice path decomposition of width k in time O ( k 2 n ) .

  25. Equivalence of definitions

  26. What about separators? Lemma Let ( X 1 , X 2 , . . . , X r ) be a path decomposition. Then for every j ∈ { 1 , . . . , r − 1 } , ∂ ( X 1 ∪ X 2 · · · ∪ X j ) ⊆ X j ∩ X j +1 . In other words, X j ∩ X j +1 separates X 1 ∪ X 2 · · · ∪ X j from the other vertices of G . Proof.

  27. DP on graphs of small pathwidth ◮ The pathwidth( pw ( G ) ) of G is the minimum boundary size needed to construct G from the empty graph using introduce and forget operations... -1 ◮ Have seen: Maximum Independent Set can be solved in 2 k k O (1) n time if a path decomposition of width k is given as input.

  28. Tractable problems on graphs of pathwidth p O (2 p pn ) Independent Set O (3 p pn ) Dominating Set O ( q p pn ) q -Coloring O (2 p pn ) Max Cut O (3 p pn ) Odd Cycle Transversal O ( p p pn ) Hamiltonian Cycle O (2 p pn ) Partition into Triangles

  29. Tightness We will see later that up to SETH these bounds are tight O (2 k kn ) Independent Set O (3 k kn ) Dominating Set O ( q k kn ) q -Coloring O (2 k kn ) Max Cut O (3 k kn ) Odd Cycle Transversal O (2 k kn ) Partition into Triangles

  30. Pathwidth ◮ Introduced in the 80’s as a part of Robertson and Seymour’s Graph Minors project. ◮ (Bodlaender and Kloks 96) Graphs of pathwidth k can be recognized in f ( k ) n time — FPT algorithm.

  31. Another Operation: Join Operation Given two t -boundaried graphs G 1 and G 2 , the join operation glues them together at the boundaries.

Recommend


More recommend