paper

Three-in-a-Tree in Near Linear Time

arXiv:1909.07446 · doi:10.1145/3357713.3384235

Abstract

The three-in-a-tree problem is to determine if a simple undirected graph contains an induced subgraph which is a tree connecting three given vertices. Based on a beautiful characterization that is proved in more than twenty pages, Chudnovsky and Seymour [Combinatorica 2010] gave the previously only known polynomial-time algorithm, running in time, to solve the three-in-a-tree problem on an -vertex -edge graph. Their three-in-a-tree algorithm has become a critical subroutine in several state-of-the-art graph recognition and detection algorithms. In this paper we solve the three-in-a-tree problem in time, leading to improved algorithms for recognizing perfect graphs and detecting thetas, pyramids, beetles, and odd and even holes. Our result is based on a new and more constructive characterization than that of Chudnovsky and Seymour. Our new characterization is stronger than the original, and our proof implies a new simpler proof for the original characterization. The improved characterization gains the first factor in speed. The remaining improvement is based on dynamic graph algorithms.

46 pages, 12 figures, accepted to STOC 2020

Cited by in corpus (2)