Abstract: For a family of graphs G<math><mi mathvariant="script" is="true">G</mi></math>, the G<math><mi mathvariant="script" is="true">G</mi></math>-Contraction problem takes as an input a graph G and an integer k, and the goal is to decide if there exists a subset F⊆E(G)<math><mi is="true">F</mi><mo is="true">⊆</mo><mi is="true">E</mi><mo stretchy="false" is="true">(</mo><mi is="true">G</mi><mo stretchy="false" is="true">)</mo></math> of size at most k such that G/F<math><mi is="true">G</mi><mo stretchy="false" is="true">/</mo><mi is="true">F</mi></math> is in G<math><mi mathvariant="script" is="true">G</mi></math>. Here, G/F<math><mi is="true">G</mi><mo stretchy="false" is="true">/</mo><mi is="true">F</mi></math> is the graph obtained from G by contracting all the edges in F. In this article, we initiate the study of Grid Contraction from the parameterized complexity point of view. We present a fixed parameter tractable algorithm, running in time 2O(k)⋅|V(G)|O(1)<math><msup is="true"><mrow is="true"><mn is="true">2</mn></mrow><mrow is="true"><mi mathvariant="script" is="true">O</mi><mo stretchy="false" is="true">(</mo><mi is="true">k</mi><mo stretchy="false" is="true">)</mo></mrow></msup><mo is="true">⋅</mo><mo stretchy="false" is="true">|</mo><mi is="true">V</mi><mo stretchy="false" is="true">(</mo><mi is="true">G</mi><mo stretchy="false" is="true">)</mo><msup is="true"><mrow is="true"><mo stretchy="false" is="true">|</mo></mrow><mrow is="true"><mi mathvariant="script" is="true">O</mi><mo stretchy="false" is="true">(</mo><mn is="true">1</mn><mo stretchy="false" is="true">)</mo></mrow></msup></math>, for this problem. We complement this result by proving that unless ETH fails, there is no algorithm for Grid Contraction with running time 2o(k)⋅|V(G)|O(1)<math><msup is="true"><mrow is="true"><mn is="true">2</mn></mrow><mrow is="true"><mi is="true">o</mi><mo stretchy="false" is="true">(</mo><mi is="true">k</mi><mo stretchy="false" is="true">)</mo></mrow></msup><mo is="true">⋅</mo><mo stretchy="false" is="true">|</mo><mi is="true">V</mi><mo stretchy="false" is="true">(</mo><mi is="true">G</mi><mo stretchy="false" is="true">)</mo><msup is="true"><mrow is="true"><mo stretchy="false" is="true">|</mo></mrow><mrow is="true"><mi mathvariant="script" is="true">O</mi><mo stretchy="false" is="true">(</mo><mn is="true">1</mn><mo stretchy="false" is="true">)</mo></mrow></msup></math>. We also present a polynomial kernel for this problem.
Loading