Isomorphism Testing of Rooted Trees in Linear Time
Anna Lindeberg
TL;DR
Problem addressed: rooted-tree isomorphism testing. Main approach: formalizes the AHU's label assignment and compression and proves both correctness and a linear-time runtime. Key contribution: a level-label characterization equating isomorphism with level-wise equality of compressed labels, plus rigorous runtime analysis and an implementation-friendly framing. Significance: resolves a long-standing gap in the literature, clarifies the algorithm, and informs efficient isomorphism checks for rooted trees with notes on extensions to unrooted trees and large inputs.
Abstract
The AHU-algorithm solves the computationally difficult graph isomorphism problem for rooted trees, and does so with a linear time complexity. Although the AHU-algorithm has remained state of the art for almost 50 years, it has been criticized for being unclearly presented, and no complete proof of correctness has been given. In this text, that gap is filled: we formalize the algorithm's main point of assigning and compressing labels to provide a characterization of isomorphic rooted trees, and then proceed with proving the correctness and optimal runtime of the AHU-algorithm.
