Issue No. 05 - May (1986 vol. 35)
J.S. Vitter , Mathematical Sciences Research Institute
Previous theoretical work in computational complexity has suggested that any problem which is log-space complete for P is not likely in NC, and thus not parallelizable. In practice, this is not the case. To resolve this paradox, we introduce new complexity classes PC and PC* that capture the practical notion of parallelizability we discuss in this paper. We show that foqur complete problems for P (nonsparse versions of unification, path system accessibility, monotone circuit value, and ordered depth-first search) are parallelizable. That is, their running times are O(E + V) on a sequential RAM and O(E/P + V log P) on an EXCLUSIVE-READ EXCLUSIVE-WRITE Parallel RAM with P processors where V and E are the numbers of vertices and edges in the inputed instance of the problem. These problems are in PC and PC*, since an appropriate choice of P can speed up their sequential running times by a factor of ?(P). Several interesting open questions are raised regarding these new parallel complexity classes PC and PC*. Unification is particularly important because it is a basic operation in theorem proving, in type inference algorithms, and in logic programming languages such as Prolog. A fast parallel implementation of Prolog is needed for software development in the Fifth Generation project.
WRAM, Circuit value, completeness, computational complexity, depth-first search, fifth generation, parallel algorithms, path system, PRAM, RAM, random access, unification, union-find
R. Simons and J. Vitter, "New Classes for Parallel Complexity: A Study of Unification and Other Complete Problems for P," in IEEE Transactions on Computers, vol. 35, no. , pp. 403-418, 1986.