Book Description
A module in a graph is like a black box: all the vertices in the module look the same to vertices not in the module. This paper gives the first $NC$ algorithm for finding the modular decomposition of a graph. The algorithm runs in $O$(log $n$) time using $O(n[superscript]{3})$ processors on a CRCW PRAM. This decomposition is used to obtain fast sequential and parallel algorithms for solving graph problems on graphs of bounded module size, e.g. the class of cographs where each module with more than one vertex is either disconnected or its complement is disconnected. These graph problems include minimum coloring, maximum clique, matching, Hamiltonian circuit, and maximum cut. Many of these problems can be solved with $O(n[superscript]{3})$ processors in $O$(log $n$) time. All of them can be solved in $NC$. Our modular decomposition algorithm can be used to obtain more efficient algorithms for recognizing and orienting comparability graphs.