Parallel Complexity of Logical Query Programs

We consider the parallel time complexity of logic programs without function symbols, called logical query programs, or Datalog programs. We give a PRAM algorithm for computing the minimum model of a logical query program, and show that for programs with the "polynomial fringe property," this algorithm runs in logarithmic time. As a result, the "linear" and "piecewise linear" classes of logic programs are in NC. Then we examine several nonlinear classes in which the program has a single recursive rule that is an "elementary chain" We show that certain nonlinear programs are related to GSM mappings of a balanced parentheses language, and that this relationship implies the "polynomial fringe property;" hence such programs are in NC. Finally, we describe an approach for demonstrating that certain logical query programs are log space complete for P, and apply it to both elementary single rule programs and nonelementary programs.

[1]  Gary L. Miller,et al.  Efficient Parallel Evaluation of Straight-Line Code and Arithmetic Circuits , 1986, SIAM J. Comput..

[2]  Stephen A. Cook,et al.  A Taxonomy of Problems with Fast Parallel Algorithms , 1985, Inf. Control..

[3]  Robert A. Kowalski,et al.  The Semantics of Predicate Logic as a Programming Language , 1976, JACM.

[4]  守屋 悦朗,et al.  J.E.Hopcroft, J.D. Ullman 著, "Introduction to Automata Theory, Languages, and Computation", Addison-Wesley, A5変形版, X+418, \6,670, 1979 , 1980 .

[5]  Moshe Y. Vardi Querying logical databases , 1985, J. Comput. Syst. Sci..

[6]  Leslie G. Valiant,et al.  Fast Parallel Computation of Polynomials Using Few Processors , 1983, SIAM J. Comput..

[7]  Alfred V. Aho,et al.  Universality of data retrieval languages , 1979, POPL.

[8]  Mikhail J. Atallah,et al.  Solving Tree Problems on a Mesh-Connected Processor Array (Preliminary Version) , 1985, FOCS.

[9]  Stephen A. Cook,et al.  An Observation on Time-Storage Trade Off , 1974, J. Comput. Syst. Sci..

[10]  Gary L. Miller,et al.  Parallel tree contraction and its application , 1985, 26th Annual Symposium on Foundations of Computer Science (sfcs 1985).

[11]  Neil D. Jones,et al.  Complete problems for deterministic polynomial time , 1974, Symposium on the Theory of Computing.

[12]  Krzysztof R. Apt,et al.  Contributions to the Theory of Logic Programming , 1982, JACM.

[13]  Stavros S. Cosmadakis,et al.  Parallel evaluation of recursive rule queries , 1985, PODS '86.

[14]  Uzi Vishkin,et al.  Simulation of Parallel Random Access Machines by Circuits , 1984, SIAM J. Comput..

[15]  Christos H. Papadimitriou,et al.  The parallel complexity of simple chain queries , 1987, PODS '87.

[16]  S. Ginsburg,et al.  Finite-Turn Pushdown Automata , 1966 .

[17]  David Harel,et al.  Structure and complexity of relational queries , 1980, 21st Annual Symposium on Foundations of Computer Science (sfcs 1980).

[18]  Allen Van Gelder,et al.  Negation as Failure using Tight Derivations for General Logic Programs , 1988, J. Log. Program..

[19]  Walter L. Ruzzo,et al.  Tree-size bounded alternation(Extended Abstract) , 1979, J. Comput. Syst. Sci..

[20]  Ehud Y. Shapiro Alternation and the Computational Complexity of Logic Programs , 1984, J. Log. Program..

[21]  Sheila A. Greibach,et al.  The Hardest Context-Free Language , 1973, SIAM J. Comput..