On the sequential nature of unification
Journal of Logic Programming
Programming in Prolog (2nd ed.)
Programming in Prolog (2nd ed.)
Data structures and network algorithms
Data structures and network algorithms
One, two, three . . . infinity: lower bounds for parallel computation
STOC '85 Proceedings of the seventeenth annual ACM symposium on Theory of computing
An overview of computational complexity
Communications of the ACM
Computers and Intractability: A Guide to the Theory of NP-Completeness
Computers and Intractability: A Guide to the Theory of NP-Completeness
The Design and Analysis of Computer Algorithms
The Design and Analysis of Computer Algorithms
An ideal model for recursive polymorphic types
POPL '84 Proceedings of the 11th ACM SIGACT-SIGPLAN symposium on Principles of programming languages
Parallel algorithms for unification and other complete problems in p
ACM '84 Proceedings of the 1984 annual conference of the ACM on The fifth generation challenge
Parallelism and greedy algorithms
Parallelism and greedy algorithms
On simultaneous resource bounds
SFCS '79 Proceedings of the 20th Annual Symposium on Foundations of Computer Science
How To Share Memory In A Distributed System
SFCS '84 Proceedings of the 25th Annual Symposium onFoundations of Computer Science, 1984
An observation on time-storage trade off
Journal of Computer and System Sciences
Survey on special purpose computer architectures for AI
ACM SIGART Bulletin
Unification: a multidisciplinary survey
ACM Computing Surveys (CSUR)
Boolean unification - The story so far
Journal of Symbolic Computation
On the relationship of congruence closureand unification
Journal of Symbolic Computation
Journal of Symbolic Computation
Data structures and algorithms for disjoint set union problems
ACM Computing Surveys (CSUR)
How much can we speedup Gaussian elimination with pivoting?
SPAA '94 Proceedings of the sixth annual ACM symposium on Parallel algorithms and architectures
Efficient parallel algorithms for functional dependency manipulations
DPDS '90 Proceedings of the second international symposium on Databases in parallel and distributed systems
Improved parallel algorithms for the depth-first search and monotone circuit value problems
CSC '87 Proceedings of the 15th annual conference on Computer Science
Parallelizability of Some P-Complete Problems
IPDPS '00 Proceedings of the 15 IPDPS 2000 Workshops on Parallel and Distributed Processing
Fundamenta Informaticae - Concurrency specification and programming
Graph coloring on coarse grained multicomputers
Discrete Applied Mathematics - Special issue: The second international colloquium, "journées de l'informatique messine"
Memory-efficient and thread-safe quasi-destructive graph unification
ACL '00 Proceedings of the 38th Annual Meeting on Association for Computational Linguistics
PRO: a model for the design and analysis of efficient and scalable parallel algorithms
Nordic Journal of Computing
Graph coloring on coarse grained multicomputers
Discrete Applied Mathematics
Incremental speech translation
Incremental speech translation
A structured connectionist unification algorithm
AAAI'90 Proceedings of the eighth National conference on Artificial intelligence - Volume 1
Algorithms and theory of computation handbook
Fundamenta Informaticae - Concurrency Specification and Programming (CS&P'2002), Part 2
Computing with Time-Varying Data: Sequential Complexity and Parallel Speed-Up
Theory of Computing Systems
Hi-index | 14.98 |
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.