Parallel-Depth Search for Acyclic Digraphs

Abstract In this paper a parallel algorithm is presented for the construction of a “deepest spanning forest” (DSF) for an acyclic directed graph. A deepest spanning forest is a spanning forest in which the path (if any) between a pair of nodes is one of the longest paths contained in the original graph between that pair of nodes. The algorithm requires O(n4) processors and runs in O(log2n) parallel time on a PRAM-CREW model of computation. Essentially, the algorithm is based on the idea of generating a redundant structure including all the existing paths from each vertex to the others (by replicating vertices), and then extracting the DSF from the structure. A method of utilizing the previous algorithm in order to derive a topological sorting of an acyclic digraph in O(log2n) time with O(n4) processors is also shown.