Table of Contents
Fetching ...

Path Contraction Faster than $2^n$

Akanksha Agrawal, Fedor V. Fomin, Daniel Lokshtanov, Saket Saurabh, Prafullkumar Tale

TL;DR

This work develops an exact exponential-time algorithm for Path Contraction, breaking the long-standing ${\mathcal O}^*(2^n)$ barrier by introducing a modular framework built around four specialized subroutines and a new subproblem, 3-Disjoint Connected Subgraphs (3-DCS). The core idea leverages witness structures that map a graph to a path, and employs targeted strategies—balancing, heavy unions, and odd/even partitions—to efficiently explore promising regions of the solution space. The combined approach yields an overall running time of ${\mathcal O}^*(1.99987^n)$ for Path Contraction, with a key auxiliary result that 3-DCS can be solved in ${\mathcal O}^*(1.88^n)$, enabling corollaries such as ${P_5}$-Contraction in the same time bound. The techniques rely on carefully bounded enumeration of small connected sets, dynamic programming over partial witness structures, and reductions to known problems like 2-Disjoint Connected Subgraphs, underscoring a broadly applicable strategy for improving brute-force graph editing algorithms.

Abstract

A graph $G$ is contractible to a graph $H$ if there is a set $X \subseteq E(G)$, such that $G/X$ is isomorphic to $H$. Here, $G/X$ is the graph obtained from $G$ by contracting all the edges in $X$. For a family of graphs $\cal F$, the $\mathcal{F}$-\textsc{Contraction} problem takes as input a graph $G$ on $n$ vertices, and the objective is to output the largest integer $t$, such that $G$ is contractible to a graph $H \in {\cal F}$, where $|V(H)|=t$. When $\cal F$ is the family of paths, then the corresponding $\mathcal{F}$-\textsc{Contraction} problem is called \textsc{Path Contraction}. The problem \textsc{Path Contraction} admits a simple algorithm running in time $2^{n}\cdot n^{\mathcal{O}(1)}$. In spite of the deceptive simplicity of the problem, beating the $2^{n}\cdot n^{\mathcal{O}(1)}$ bound for \textsc{Path Contraction} seems quite challenging. In this paper, we design an exact exponential time algorithm for \textsc{Path Contraction} that runs in time $1.99987^n\cdot n^{\mathcal{O}(1)}$. We also define a problem called \textsc{$3$-Disjoint Connected Subgraphs}, and design an algorithm for it that runs in time $1.88^n\cdot n^{\mathcal{O}(1)}$. The above algorithm is used as a sub-routine in our algorithm for {\sc Path Contraction}

Path Contraction Faster than $2^n$

TL;DR

This work develops an exact exponential-time algorithm for Path Contraction, breaking the long-standing barrier by introducing a modular framework built around four specialized subroutines and a new subproblem, 3-Disjoint Connected Subgraphs (3-DCS). The core idea leverages witness structures that map a graph to a path, and employs targeted strategies—balancing, heavy unions, and odd/even partitions—to efficiently explore promising regions of the solution space. The combined approach yields an overall running time of for Path Contraction, with a key auxiliary result that 3-DCS can be solved in , enabling corollaries such as -Contraction in the same time bound. The techniques rely on carefully bounded enumeration of small connected sets, dynamic programming over partial witness structures, and reductions to known problems like 2-Disjoint Connected Subgraphs, underscoring a broadly applicable strategy for improving brute-force graph editing algorithms.

Abstract

A graph is contractible to a graph if there is a set , such that is isomorphic to . Here, is the graph obtained from by contracting all the edges in . For a family of graphs , the -\textsc{Contraction} problem takes as input a graph on vertices, and the objective is to output the largest integer , such that is contractible to a graph , where . When is the family of paths, then the corresponding -\textsc{Contraction} problem is called \textsc{Path Contraction}. The problem \textsc{Path Contraction} admits a simple algorithm running in time . In spite of the deceptive simplicity of the problem, beating the bound for \textsc{Path Contraction} seems quite challenging. In this paper, we design an exact exponential time algorithm for \textsc{Path Contraction} that runs in time . We also define a problem called \textsc{-Disjoint Connected Subgraphs}, and design an algorithm for it that runs in time . The above algorithm is used as a sub-routine in our algorithm for {\sc Path Contraction}

Paper Structure

This paper contains 15 sections, 18 theorems, 5 equations, 5 figures, 3 algorithms.

Key Result

Lemma 2.1

For a graph $G$, a non-empty set $Q \subseteq V(G)$, and integers $a,b \in \mathbb{N}$, the number of $(Q,a,b)$-connected sets in $G$ is at most $2^{a + b - |Q|}$. Moreover, we can enumerate all $(Q,a,b)$-connected sets in $G$ in time $2^{a + b - |Q|}\cdot n^{{\mathcal{O}}(1)}$.

Figures (5)

  • Figure 1: An illustration of various sets in the proof of forward direction of Lemma \ref{['lem:algo-correct-STDCS']}.
  • Figure 2: Various subroutines for the algorithm and their usage.
  • Figure 3: An illustration of construction of the solution using solutions for instances of smaller sizes.
  • Figure 4: An intuitive illustration of the algorithm for $2$-Union Heavy PC.
  • Figure 5: An intuitive illustration of the algorithm for Near Small Odd/Even PC.

Theorems & Definitions (23)

  • Lemma 2.1
  • Lemma 2.2
  • Proposition 1: telle2013connecting Theorem 3
  • Lemma 2
  • Theorem 3
  • Lemma 4
  • Proposition 5: telle2013connecting
  • Remark 6
  • Definition 7: Immovable tri-partition
  • Claim 8
  • ...and 13 more