Successfully reported this slideshow.
We use your LinkedIn profile and activity data to personalize ads and to show you more relevant ads. You can change your ad preferences anytime.

Expansions for Reductions

889 views

Published on

Published in: Sports
  • Be the first to comment

  • Be the first to like this

Expansions for Reductions

  1. 1. Expansionsfor Reductions
  2. 2. Expansionsfor Reductions Joint work with Fedor Fomin, Daniel Lokshtanov, Geevarghese Philip, and Saket Saurabh University of Bergen University of California, San Diego The Institute of Mathematical Sciences
  3. 3. Talk Outline
  4. 4. Talk Outline q matchings, mutually disjoint in B |N(S)| q|S|
  5. 5. Talk Outline q matchings, mutually disjoint in B |N(S)| q|S| q-Expansion Lemma
  6. 6. Talk Outline q-Expansion Lemma with applications to Vertex Cover, Feedback Vertex set, and beyond.
  7. 7. Part 1 A Tale of q Matchings
  8. 8. A B Consider a bipartite graph one of whose parts (say B) is at least twice as big as the other (call this A).
  9. 9. A B Assume that there are no isolated vertices in B. bleh
  10. 10. Suppose, further, that for every subset S in A, N(S) is at least twice as large as |S|.
  11. 11. S N(S) Suppose, further, that for every subset S in A, N(S) is at least twice as large as |S|.
  12. 12. A B en there exist two matchings saturating A, bleh
  13. 13. A B en there exist two matchings saturating A, bleh
  14. 14. A B en there exist two matchings saturating A, and disjoint in B.
  15. 15. Claim: If N(A) q|A|, then there exists a subset S of A such that: there q matchings saturating the subset S that are vertex-disjoint in B. provided B does not have any isolated vertices.
  16. 16. Claim: If N(A) q|A|, then there exists a subset S of A such that: there q matchings saturating the subset S that are vertex-disjoint in B. provided B does not have any isolated vertices.
  17. 17. Claim: If |B| q|A|, then there exists a subset S of A such that: there q matchings saturating the subset S that are vertex-disjoint in B, provided B does not have any isolated vertices.
  18. 18. Crucially: it turns out that the endpoints of the matchings in B (the larger set) do not have neighbors outside S.
  19. 19. A B
  20. 20. Part 2 Two-Expansions and FVS
  21. 21. Ingredients
  22. 22. Ingredients a high-degree vertex, v
  23. 23. Ingredients a high-degree vertex, v a small hitting set, sans v
  24. 24. Given a high-degree vertex v, finding a small hitting set that does not contain v. Any hitting set whose size is a polynomial function of k. When the largest collection of vertex disjoint paths from N(v) to N(v) is small.
  25. 25. Given a high-degree vertex v, finding a small hitting set that does not contain v. A subset whose removal makes the graph acyclic. When the largest collection of vertex disjoint paths from N(v) to N(v) is small.
  26. 26. Given a high-degree vertex v, finding a small hitting set that does not contain v. A polynomial function of k. When the largest collection of vertex disjoint paths from N(v) to N(v) is small.
  27. 27. Given a high-degree vertex v, finding a small hitting set that does not contain v. At least twice the size of the hitting set. When the largest collection of vertex disjoint paths from N(v) to N(v) is small.
  28. 28. Given a high-degree vertex v, finding a small hitting set that does not contain v. Find an approximate hitting set T. When the largest collection of vertex disjoint paths from N(v) to N(v) is small.
  29. 29. Given a high-degree vertex v, finding a small hitting set that does not contain v. If T does not contain v, we are done. When the largest collection of vertex disjoint paths from N(v) to N(v) is small.
  30. 30. Given a high-degree vertex v, finding a small hitting set that does not contain v. Else: v ∈ T. Delete T v from G. When the largest collection of vertex disjoint paths from N(v) to N(v) is small.
  31. 31. Given a high-degree vertex v, finding a small hitting set that does not contain v. e only remaining cycles pass through v. When the largest collection of vertex disjoint paths from N(v) to N(v) is small.
  32. 32. Given a high-degree vertex v, finding a small hitting set that does not contain v. Find an optimal cut set for paths from N(v) to N(v). When the largest collection of vertex disjoint paths from N(v) to N(v) is small.
  33. 33. Given a high-degree vertex v, finding a small hitting set that does not contain v. Why is this cut set small enough? When the largest collection of vertex disjoint paths from N(v) to N(v) is small.
  34. 34. Given a high-degree vertex v, finding a small hitting set that does not contain v. When is this cut set small enough? When the largest collection of vertex disjoint paths from N(v) to N(v) is small.
  35. 35. Given a high-degree vertex v, finding a small hitting set that does not contain v. When is this cut set small enough? When the largest collection of vertex disjoint paths from N(v) to N(v) is small.
  36. 36. Given a high-degree vertex v, finding a small hitting set that does not contain v. When is this cut set small enough? When the largest collection of vertex disjoint paths from N(v) to N(v) is not small...
  37. 37. Given a high-degree vertex v, finding a small hitting set that does not contain v. When is this cut set small enough? When the largest collection of vertex disjoint paths from N(v) to N(v) is not small... we get a reduction rule.
  38. 38. Given a high-degree vertex v, finding a small hitting set that does not contain v. When is this cut set small enough? More than k vertex-disjoint paths from N(v) to N(v) → v belongs to any hitting set of size at most k.
  39. 39. Given a high-degree vertex v, finding a small hitting set that does not contain v. When is this cut set small enough? So either v “forced”, or we have hitting set of suitable size. Notice that we arrive at either situation in polynomial time.
  40. 40. forest hitting set that excludes v v
  41. 41. forest hitting set that excludes v v
  42. 42. forest hitting set that excludes v v
  43. 43. forest hitting set that excludes v v
  44. 44. forest hitting set that excludes v v
  45. 45. forest hitting set that excludes v v
  46. 46. forest hitting set that excludes v v
  47. 47. forest hitting set that excludes v v
  48. 48. forest hitting set that excludes v v
  49. 49. forest hitting set that excludes v v
  50. 50. forest hitting set that excludes v v by 2-expansion lemma:
  51. 51. forest hitting set that excludes v v by 2-expansion lemma:
  52. 52. forest hitting set that excludes v v by 2-expansion lemma:
  53. 53. forest hitting set that excludes v v by 2-expansion lemma:
  54. 54. e Forward Direction
  55. 55. e Forward Direction FVS k in G ⇒ FVS k in H
  56. 56. forest hitting set that excludes v v by 2-expansion lemma:
  57. 57. If G has a FVS that either contains v or all of S, we are in good shape.
  58. 58. Consider now a FVS that: • Does not contain v, • and omits at least one vertex of S.
  59. 59. Notice that this does not lead to a larger FVS:
  60. 60. Notice that this does not lead to a larger FVS: For every vertex v in S that a FVS of G leaves out,
  61. 61. Notice that this does not lead to a larger FVS: For every vertex v in S that a FVS of G leaves out, it must pick a vertex u that kills no more than all of S.
  62. 62. e Reverse Direction
  63. 63. e Reverse Direction FVS k in G ⇐ FVS k in H
  64. 64. forest hitting set that excludes v v by 2-expansion lemma:
  65. 65. e Only Danger Cycles that: • pass through v, • non-neighbors of v in H¹ • and do not pass through S. ¹neighbors in G, however
  66. 66. Part q q-Expansions for Hitting θq-minor models
  67. 67. Ingredients a high-degree vertex, v a hitting set, sans v
  68. 68. Ingredients a high-degree vertex, v a hitting set, sans v
  69. 69. Ingredients a high-degree vertex, v an approximate hitting set
  70. 70. Ingredients a high-degree vertex, v a way of detecting (k+1)-flowers
  71. 71. Assuming we have a small hitting set, and a vertex of large degree...
  72. 72. theta-q-free area hitting set that excludes v v
  73. 73. theta-q-free area hitting set that excludes v v degree q into any component?
  74. 74. So the degree into every component is bounded by (q − 1),
  75. 75. So the degree into every component is bounded by (q − 1), but there could be lots of components!
  76. 76. So the degree into every component is bounded by (q − 1), but there could be lots of components! If there are at least q|HS| components,
  77. 77. So the degree into every component is bounded by (q − 1), but there could be lots of components! If there are at least q|HS| components, we get a q-expansion!
  78. 78. So the degree into every component is bounded by (q − 1), but there could be lots of components! If there are at least q|HS| components, we get a q-expansion! If we can handle the expansion, note that we will end up with a degree bound of: (q − 1)q|HS|.
  79. 79. So the degree into every component is bounded by (q − 1), but there could be lots of components! If there are at least q|HS| components, we get a q-expansion! If we can handle the expansion, note that we will end up with a degree bound of: (q − 1)q|HS|.
  80. 80. So the degree into every component is bounded by (q − 1), but there could be lots of components! If there are at least q|HS| components, we get a q-expansion! If we can handle the expansion, note that we will end up with a degree bound of: (q − 1)qpoly(k).
  81. 81. theta-q-free area hitting set that excludes v v
  82. 82. v
  83. 83. v
  84. 84. v
  85. 85. e Forward Direction
  86. 86. e Forward Direction Solution k in G ⇒ Solution k in H
  87. 87. If G has a solution that either contains v or all of S, we are in good shape.
  88. 88. Consider now a solution that: • Does not contain v, • and omits at least one vertex of S.
  89. 89. v
  90. 90. Notice that this does not lead to a larger solution:
  91. 91. Notice that this does not lead to a larger solution: For every vertex v in S that a solution in G leaves out,
  92. 92. Notice that this does not lead to a larger solution: For every vertex v in S that a solution in G leaves out, it must pick a vertex u that kills no more minor models than all of S.
  93. 93. e Reverse Direction
  94. 94. e Reverse Direction Solution k in G ⇐ Solution k in H
  95. 95. v
  96. 96. e Only Danger Minor models that: • pass through v, • non-neighbors of v in H² • and do not pass through S. ²neighbors in G, however
  97. 97. e Only Danger Minor models that: • pass through v, • non-neighbors of v in H² • and do not pass through S. ²neighbors in G, however
  98. 98. v
  99. 99. v If there were minor models here, then v would be a cut-vertex. Since θq is a 2-connected graph: contradiction!
  100. 100. What’s left? Finding the small hitting set that avoids v.
  101. 101. What’s left? Finding the small hitting set that avoids v. • Assume we have an approximation algorithm. If v is not in the approximate solution, then we are done. If v is in the approximate solution, again, delete all of the hitting set except v, so the remaining graph only has minor models passing through v.
  102. 102. eorem Let F be a minor-closed family of graphs such that its obstruction set contains a planar graph. Given a graph G, in polynomial time we can find a subset T ⊆ V(G) such that G[V T] is an element of F and |T| (OPT · log3/2 OPT). Here OPT is the size of smallest such set T.
  103. 103. eorem Let F be a minor-closed family of graphs such that its obstruction set contains a planar graph. Given a graph G, in polynomial time we can find a subset T ⊆ V(G) such that G[V T] is an element of F and |T| (k · log3/2 k). Here OPT is the size of smallest such set T.
  104. 104. What’s left? Finding the small hitting set that avoids v.
  105. 105. What’s left? Finding the small hitting set that avoids v. • So we have an approximate solution, T.
  106. 106. What’s left? Finding the small hitting set that avoids v. • So we have an approximate solution, T. • If v is not in the approximate solution, then we are done.
  107. 107. What’s left? Finding the small hitting set that avoids v. • So we have an approximate solution, T. • If v is not in the approximate solution, then we are done. • If v is in the approximate solution, again, delete all of the hitting set except v, so the remaining graph only has minor models passing through v.
  108. 108. In this graph, all minor models of θq pass through v.
  109. 109. In this graph, all minor models of θq pass through v. e graph G T has constant treewidth:
  110. 110. In this graph, all minor models of θq pass through v. e graph G T has constant treewidth: free of θc minor models + large treewidth = (q × q) grid minor ⇒ θc minor model
  111. 111. In this graph, all minor models of θq pass through v. e graph G T ∪ {v} has constant treewidth. free of θc minor models + large treewidth = (q × q) grid minor ⇒ θc minor model
  112. 112. Promise: v is not at the center of a (k + 1)-flower.
  113. 113. Promise: v is not at the center of a (k + 1)-flower. Stare at the tree decomposition of G S.
  114. 114. Promise: v is not at the center of a (k + 1)-flower. Stare at the tree decomposition of G S. At every bag, compute the number of vertex-disjoint minor models that pass through v in the graph G S ∪ {v}
  115. 115. Promise: v is not at the center of a (k + 1)-flower. Stare at the tree decomposition of G S. At every bag, compute the number of vertex-disjoint minor models that pass through v in the graph G S ∪ {v} Note the bags at which this measure flips.
  116. 116. ere are at most k such bags of constant size.
  117. 117. ere are at most k such bags of constant size. Add all vertices in all these bags to the hitting set.
  118. 118. Checking if v is at the center of a (k + 1) flower:
  119. 119. Checking if v is at the center of a (k + 1) flower: maximum number of vertex-disjoint minor models of θq passing through v. max |S|{ ∀p ∈ S ∃Xp ⊆ V, ∀p ∈ S, q ∈ S : p = q ⇒ Xp ∩ Xq = ∅ φq(Xp ∪ v) }
  120. 120. Checking if v is at the center of a (k + 1) flower: maximum number of vertex-disjoint minor models of θq passing through v. max |S|{ ∀r ∈ S ∃Xr ⊆ V, ∀p ∈ S, q ∈ S : p = q ⇒ Xp ∩ Xq = ∅ φq(Xp ∪ v) }
  121. 121. Checking if v is at the center of a (k + 1) flower: maximum number of vertex-disjoint minor models of θq passing through v. max |S|{ ∀r ∈ S ∃Xr ⊆ V, ∀p ∈ S, q ∈ S : p = q ⇒ Xp ∩ Xq = ∅ φq(Xp∪v) }
  122. 122. Checking if v is at the center of a (k + 1) flower: maximum number of vertex-disjoint minor models of θq passing through v. max |S|{ ∀r ∈ S ∃Xr ⊆ V, ∀p ∈ S, q ∈ S : p = q ⇒ Xp ∩ Xq = ∅ φq(Xp∪v) }
  123. 123. Checking if v is at the center of a (k + 1) flower: maximum number of vertex-disjoint minor models of θq passing through v. max |S|{ ∀r ∈ S ∃Xr ⊆ V, ∀p ∈ S, q ∈ S : p = q ⇒ Xp ∩ Xq = ∅ φq(Xp∪v) }
  124. 124. On a graph of constant treewidth, detecting large flowers is polynomial time.
  125. 125. On a graph of constant treewidth, detecting large flowers is polynomial time. And thus we are (finally!) done.
  126. 126. Dank u wel

×