Anti Tai Mapping for Unordered Labeled Trees

17 Jul 2021  ·  Mislav Blažević, Stefan Canzar, Khaled Elbassioni, Domagoj Matijević ·

The well-studied Tai mapping between two rooted labeled trees $T_1(V_1, E_1)$ and $T_2(V_2, E_2)$ defines a one-to-one mapping between nodes in $T_1$ and $T_2$ that preserves ancestor relationship. For unordered trees the problem of finding a maximum-weight Tai mapping is known to be NP-complete. In this work, we define an anti Tai mapping $M\subseteq V_1\times V_2$ as a binary relation between two unordered labeled trees such that any two $(x,y), (x', y')\in M$ violate ancestor relationship and thus cannot be part of the same Tai mapping, i.e. $(x\le x' \iff y\not \le y') \vee (x'\le x \iff y'\not \le y)$, given an ancestor order $x<x'$ meaning that $x$ is an ancestor of $x'$. Finding a maximum-weight anti Tai mapping arises in the cutting plane method for solving the maximum-weight Tai mapping problem via integer programming. We give an efficient polynomial-time algorithm for finding a maximum-weight anti Tai mapping for the case when one of the two trees is a path and further show how to extend this result in order to provide a polynomially computable lower bound on the optimal anti Tai mapping for two unordered labeled trees. The latter result stems from the special class of anti Tai mapping defined by the more restricted condition $x\sim x' \iff y\not\sim y'$, where $\sim$ denotes that two nodes belong to the same root-to-leaf path. For this class, we give an efficient algorithm that solves the problem directly on two unordered trees in $O(|V_1|^2|V_2|^2)$.

PDF Abstract
No code implementations yet. Submit your code now

Categories


Data Structures and Algorithms Discrete Mathematics

Datasets


  Add Datasets introduced or used in this paper