A scalable approach to computing representative lowest common ancestor in directed acyclic graphs

  • Authors:
  • Santanu Kumar Dash;Sven-Bodo Scholz;Stephan Herhut;Bruce Christianson

  • Affiliations:
  • School of Computer Science, University of Hertfordshire, Hatfield, UK;School of Mathematical and Computer Sciences, Heriot-Watt University, Edinburgh, UK;Programming Systems Labs, Intel Labs, Santa Clara, CA, USA;School of Computer Science, University of Hertfordshire, Hatfield, UK

  • Venue:
  • Theoretical Computer Science
  • Year:
  • 2013

Quantified Score

Hi-index 5.23

Visualization

Abstract

LCA computation for vertex pairs in trees can be achieved in constant time after linear-time preprocessing. However, extension of these techniques to compute LCA for vertex-pairs in DAGs has been not possible due to the non-tree edges in a DAG. In this paper, we present an algorithm for computing the LCA for vertex pairs in a DAG which treats the DAG@?s spanning tree and its non-tree edges separately. Our approach enables us to tap the efficiency of existing LCA algorithms for trees. Furthermore, our algorithm decomposes the DAG into a set of component trees called clusters which significantly reduces the preprocessing necessary to incorporate non-tree edges in the LCA computation. Our algorithm seamlessly interpolates the performance graph between the best reported algorithms for trees and the best reported algorithms for DAGs depending on the incidence of non-tree edges in the DAG. Using the proposed techniques, it is possible to achieve near-linear preprocessing and constant query time for sparse DAGs.