Table of Contents
Fetching ...

Almost-linear time parameterized algorithm for rankwidth via dynamic rankwidth

Tuukka Korhonen, Marek Sokołowski

TL;DR

The paper presents an almost-linear time, k-parameterized algorithm for rankwidth via a dynamic rankwidth framework. It builds a dynamic data structure that maintains annotated rank decompositions of width at most 4k under edge insertions/deletions, with amortized time 2^{O_k(sqrt(log n log log n))}, and supports LinCMSO1 queries; this underpins an O_k(n 2^{sqrt{log n} log log n}) + O(m) time algorithm for computing rankwidth (or certifying that it exceeds k) and yields a (2^{k+1}-1)-cliquewidth expression in the same time. The approach hinges on annotated rank decompositions, a refinement pipeline using closures, a height-reduction scheme, and a Dealternation Lemma to bound local complexity, all implemented via rank-decomposition automata that process CMSO1/LinCMSO1 specifications. The work extends prior O_k(n^2) results to near-linear performance, enabling CMSO1-expressible problems to be solved efficiently on graphs with bounded rankwidth, and provides a framework for dense updates and closures within a dynamic setting. The combination of dynamic data structures, automata-based DP on decompositions, and closure-based refinements constitutes a substantial advance in practical rankwidth/cliquewidth computation and algorithmic meta-theorems for graph problems on dense graphs.

Abstract

We give an algorithm that given a graph $G$ with $n$ vertices and $m$ edges and an integer $k$, in time $O_k(n^{1+o(1)}) + O(m)$ either outputs a rank decomposition of $G$ of width at most $k$ or determines that the rankwidth of $G$ is larger than $k$; the $O_k(\cdot)$-notation hides factors depending on $k$. Our algorithm returns also a $(2^{k+1}-1)$-expression for cliquewidth, yielding a $(2^{k+1}-1)$-approximation algorithm for cliquewidth with the same running time. This improves upon the $O_k(n^2)$ time algorithm of Fomin and Korhonen [STOC 2022]. The main ingredient of our algorithm is a fully dynamic algorithm for maintaining rank decompositions of bounded width: We give a data structure that for a dynamic $n$-vertex graph $G$ that is updated by edge insertions and deletions maintains a rank decomposition of $G$ of width at most $4k$ under the promise that the rankwidth of $G$ never grows above $k$. The amortized running time of each update is $O_k(2^{\sqrt{\log n} \log \log n})$. The data structure furthermore can maintain whether $G$ satisfies some fixed ${\sf CMSO}_1$ property within the same running time. We also give a framework for performing ``dense'' edge updates inside a given set of vertices $X$, where the new edges inside $X$ are described by a given ${\sf CMSO}_1$ sentence and vertex labels, in amortized $O_k(|X| \cdot 2^{\sqrt{\log n} \log \log n})$ time. Our dynamic algorithm generalizes the dynamic treewidth algorithm of Korhonen, Majewski, Nadara, Pilipczuk, and Sokołowski [FOCS 2023].

Almost-linear time parameterized algorithm for rankwidth via dynamic rankwidth

TL;DR

The paper presents an almost-linear time, k-parameterized algorithm for rankwidth via a dynamic rankwidth framework. It builds a dynamic data structure that maintains annotated rank decompositions of width at most 4k under edge insertions/deletions, with amortized time 2^{O_k(sqrt(log n log log n))}, and supports LinCMSO1 queries; this underpins an O_k(n 2^{sqrt{log n} log log n}) + O(m) time algorithm for computing rankwidth (or certifying that it exceeds k) and yields a (2^{k+1}-1)-cliquewidth expression in the same time. The approach hinges on annotated rank decompositions, a refinement pipeline using closures, a height-reduction scheme, and a Dealternation Lemma to bound local complexity, all implemented via rank-decomposition automata that process CMSO1/LinCMSO1 specifications. The work extends prior O_k(n^2) results to near-linear performance, enabling CMSO1-expressible problems to be solved efficiently on graphs with bounded rankwidth, and provides a framework for dense updates and closures within a dynamic setting. The combination of dynamic data structures, automata-based DP on decompositions, and closure-based refinements constitutes a substantial advance in practical rankwidth/cliquewidth computation and algorithmic meta-theorems for graph problems on dense graphs.

Abstract

We give an algorithm that given a graph with vertices and edges and an integer , in time either outputs a rank decomposition of of width at most or determines that the rankwidth of is larger than ; the -notation hides factors depending on . Our algorithm returns also a -expression for cliquewidth, yielding a -approximation algorithm for cliquewidth with the same running time. This improves upon the time algorithm of Fomin and Korhonen [STOC 2022]. The main ingredient of our algorithm is a fully dynamic algorithm for maintaining rank decompositions of bounded width: We give a data structure that for a dynamic -vertex graph that is updated by edge insertions and deletions maintains a rank decomposition of of width at most under the promise that the rankwidth of never grows above . The amortized running time of each update is . The data structure furthermore can maintain whether satisfies some fixed property within the same running time. We also give a framework for performing ``dense'' edge updates inside a given set of vertices , where the new edges inside are described by a given sentence and vertex labels, in amortized time. Our dynamic algorithm generalizes the dynamic treewidth algorithm of Korhonen, Majewski, Nadara, Pilipczuk, and Sokołowski [FOCS 2023].
Paper Structure (57 sections, 110 theorems, 95 equations, 4 figures, 1 table)

This paper contains 57 sections, 110 theorems, 95 equations, 4 figures, 1 table.

Key Result

Theorem 1.1

There is an algorithm that, given an $n$-vertex $m$-edge graph $G$ and an integer $k$, in time ${\cal O}_{k}(n \cdot 2^{\sqrt{\log n} \log \log n}) + {\cal O}_{}(m)$, either outputs a rank decomposition of $G$ of width at most $k$ or determines that the rankwidth of $G$ is larger than $k$. The algor

Figures (4)

  • Figure 1: A surgery on the rank decomposition for a context factor $C = \mathcal{L}(\mathcal{T}')[x] \setminus \mathcal{L}(\mathcal{T}')[y]$. The subtrees comprising $C$ are marked gray.
  • Figure 2: (a) An example rooted rank decomposition $\mathcal{T}$. All nodes of $\mathcal{T}$ that are not $x$-mixed are contracted to rooted subtrees; white subtrees have $x$-empty roots, while the dark subtrees have $x$-full roots. The $x$-leaf points of $\mathcal{T}$ are marked by $\bullet$, while the $x$-branch points of $\mathcal{T}$ are marked by $\blacksquare$. The nodes that are $x$-mixed in $\mathcal{T}$, but neither $x$-leaf points nor $x$-branch points, are marked by $\circ$. (b) The $x$-mixed skeleton of $\mathcal{T}$.
  • Figure 3: An example swap. The right decomposition is a swap of the left decomposition along $v_0v_1v_2v_3$.
  • Figure 4: (a) A sample $x$-shuffleable path. White subtrees have $x$-empty roots and dark subtrees have $x$-full roots; the root $v_{17}$ of the red subtree is $x$-mixed. The blocks of the path are indicated by boxes; the two boundary blocks are colored yellow. (b) An example boundary-preserving $x$-block shuffle of the path. The recipe of the block shuffle is $\sigma = (1, 2, 6, 9, 10, 11, 12, 3, 4, 5, 14, 7, 8, 13, 15, 16)$.

Theorems & Definitions (208)

  • Theorem 1.1
  • Corollary 1.2
  • Theorem 1.3
  • Theorem 1.4
  • Lemma 2.1: \ref{['lem:smallclosures']}
  • Lemma 2.2: \ref{['lem:closlink', 'lem:mincloswidthbound']}
  • Lemma 2.3: Informal statement of \ref{['lem:closureprds']}
  • Lemma 2.4: dyntw
  • Lemma 2.5: \ref{['lem:dealt']}
  • Lemma 2.6: \ref{['lem:subspace-dealternation']}
  • ...and 198 more