arXiv · 1712.05517
New and Improved Algorithms for Unordered Tree Inclusion
Abstract
The tree inclusion problem is, given two node-labeled trees $P$ and $T$ (the ``pattern tree'' and the ``target tree''), to locate every minimal subtree in $T$ (if any) that can be obtained by applying a sequence of node insertion operations to $P$. Although the ordered tree inclusion problem is solvable in polynomial time, the unordered tree inclusion problem is NP-hard. The currently fastest algorithm for the latter is a classic algorithm by Kilpel\"{a}inen and Mannila from 1995 that runs in $O(2^{2d} mn)$ time, where $m$ and $n$ are the sizes of the pattern and target trees, respectively, and $d$ is the degree of the pattern tree. Here, we develop a new algorithm that runs in $O(2^{d} mn^2)$ time, improving the exponential factor from $2^{2d}$ to $2^d$ by considering a particular type of ancestor-descendant relationships that is suitable for dynamic programming. We also study restricted variants of the unordered tree inclusion problem.
Explore related subjects
Keep this discovery
Tatsuya Akutsu, Jesper Jansson, Ruiming Li, Atsuhiro Takasu, Takeyuki Tamura. 2017-12-15. New and Improved Algorithms for Unordered Tree Inclusion. https://arxiv.org/abs/1712.05517
Cite the original work for its findings. Save a collection to share your selection of sources.