Published on Thu Oct 28 2021

Recognizing k-leaf powers in polynomial time, for constant k

See More ...

A graph is a -leaf power if there exists a tree whose leaf set is , and such that if and only if the distance between and in is at most . The graph classes of -leaf powers have several applications in computational biology, but recognizing them has remained a challenging algorithmic problem for the past two decades. The best known result is that -leaf powers can be recognized in polynomial time. In this paper, we present an algorithm that decides whether a graph is a -leaf power in time for some function that depends only on (but has the growth rate of a power tower function). Our techniques are based on the fact that either a -leaf power has a corresponding tree of low maximum degree, in which case finding it is easy, or every corresponding tree has large maximum degree. In the latter case, large degree vertices in the tree imply that has redundant substructures which can be pruned from the graph. In addition to solving a longstanding open problem, we hope that the structural results presented in this work can lead to further results on -leaf powers.