Subcubic algorithm for (Unweighted) Unrooted Tree Edit Distance

Abstract

The tree edit distance problem is a natural generalization of the classic string edit distance problem. Given two ordered, edge-labeled trees T1T_1 and T2T_2, the edit distance between T1T_1 and T2T_2 is defined as the minimum total cost of operations that transform T1T_1 into T2T_2. In one operation, we can contract an edge, split a vertex into two or change the label of an edge. For the weighted version of the problem, where the cost of each operation depends on the type of the operation and the label on the edge involved, O(n3)\mathcal{O}(n^3) time algorithms are known for both rooted and unrooted trees. The existence of a truly subcubic O(n3ϵ)\mathcal{O}(n^{3-\epsilon}) time algorithm is unlikely, as it would imply a truly subcubic algorithm for the APSP problem. However, recently Mao (FOCS'21) showed that if we assume that each operation has a unit cost, then the tree edit distance between two rooted trees can be computed in truly subcubic time. In this paper, we show how to adapt Mao's algorithm to make it work for unrooted trees and we show an O~(n(7ω+15)/(2ω+6))O(n2.9417)\widetilde{\mathcal{O}}(n^{(7\omega + 15)/(2\omega + 6)}) \leq \mathcal{O}(n^{2.9417}) time algorithm for the unweighted tree edit distance between two unrooted trees, where ω2.373\omega \leq 2.373 is the matrix multiplication exponent. It is the first known subcubic algorithm for unrooted trees. The main idea behind our algorithm is the fact that to compute the tree edit distance between two unrooted trees, it is enough to compute the tree edit distance between an arbitrary rooting of the first tree and every rooting of the second tree.Comment: 20 page

    Similar works

    Full text

    thumbnail-image

    Available Versions