Non-determinism in logic-based languages

  • Serge Abiteboul
  • Victor Vianu
Article

Abstract

The use of non-determinism in logic-based languages is motivated using pragmatic and theoretical considerations. Non-deterministic database queries and updates occur naturally, and there exist non-deterministic implementations of various languages. It is shown that non-determinism resolves some difficulties concerning the expressive power of deterministic languages: there are non-deterministic languages expressing low complexity classes of queries/updates, whereas no such deterministic languages are known. Various mechanisms yielding non-determinism are reviewed. The focus is on two closely related families of non-deterministic languages. The first consists of extensions of Datalog with negations in bodies and/or heads of rules, with non-deterministic fixpoint semantics. The second consists of non-deterministic extensions of first-order logic and fixpoint logics, using thewitness operator. The expressive power of the languages is characterized. In particular, languages expressing exactly the (deterministic and non-deterministic) queries/updates computable in polynomial time are exhibited, whereas it is conjectured that no analogous deterministic language exists. The connection between non-deterministic languages and determinism is also explored. Several problems of practical interest are examined, such as checking (statically or dynamically) if a given program is deterministic, detecting coincidence of deterministic and non-deterministic semantics, and verifying termination for non-deterministic programs.

Keywords

Neural Network Artificial Intelligence Complex System Nonlinear Dynamics Polynomial Time 
These keywords were added by machine and not by the authors. This process is experimental and the keywords may be updated as the learning algorithm improves.

Preview

Unable to display preview. Download preview PDF.

Unable to display preview. Download preview PDF.

References

  1. [1]
    S. Abiteboul and G. Grahne, Update semantics for incomplete databases,Int. Conf. on Very Large Data Bases (1985) 1–12.Google Scholar
  2. [2]
    S. Abiteboul and E. Simon, Fundamental properties of deterministic and non-deterministic extensions of Datalog, submitted to Theor. Comp. Sci.Google Scholar
  3. [3]
    S. Abiteboul, E. Simon and V. Vianu, Non-deterministic languages to express deterministic transformations,Proc. ACM SIGACT-SIGMOD-SIGART Symp. on Principles of Database Systems (1990) pp. 218–229.Google Scholar
  4. [4]
    S. Abiteboul and V. Vianu, Procedural languages for database queries and updates, J. Comp. Syst. Sci. 41 (2) (1990).Google Scholar
  5. [5]
    S. Abiteboul and V. Vianu, Procedural and declarative database update languages,Proc. ACM SIGACT-SIGMOD-SIGART Symp. on Principles of Database Systems (1988) pp. 240–250.Google Scholar
  6. [6]
    S. Abiteboul and V. Vianu, Datalog extensions for database queries and updates, INRIA Technical Report No.715 (1988), to appear in J. Comp. Syst. Sci.Google Scholar
  7. [7]
    S. Abiteboul and V. Vianu, Fixpoint extensions of first-order logic and Datalog-like languages,Proc. Symp. on Logic in Computer Science (1989) pp. 71–79.Google Scholar
  8. [8]
    S. Abiteboul and V. Vianu, A transaction-based approach to relational database specification, J. ACM 36(4) (1989) 758–789.Google Scholar
  9. [9]
    S. Abiteboul and V. Vianu, The connection of static constraints with determinism and boundedness of dynamic specifications,Proc. 3rd Int. Conf. on Data and Knowledge Bases (Morgan Kaufmann, 1988) pp. 324–334.Google Scholar
  10. [10]
    L. Brownston, R. Farrel, E. Kant and N. Martin,Programming Expert Systems in OPS5 (Addison-Wesley, 1985).Google Scholar
  11. [11]
    A.K. Chandra, Programming primitives for database languages,Proc. ACM Symp. on Principles of Programming Languages, Williamsburg (1981) pp. 50–62.Google Scholar
  12. [12]
    A.K. Chandra and D. Harel, Computable queries for relational databases, J. Comp. Syst. Sci. 21(2) (1980) 156–178.Google Scholar
  13. [13]
    A.K. Chandra and D. Harel, Structure and complexity of relational queries, J. Comp. Syst. Sci. 25(1) (1982) 99–128.Google Scholar
  14. [14]
    A. Chandra and M. Vardi, The implication problem for functional and inclusion dependencies is undecidable, SIAM J. Comp. 14(3) (1985) 671–677.Google Scholar
  15. [15]
    E. Dahlhaus,Skolem Normal Forms Concerning the Least Fixpoint, Computation and Logic, Lecture Notes in Computer Science (Springer Verlag, 1987).Google Scholar
  16. [16]
    R. Fagin, Generalized first-order spectra and polynomial-time recognizable sets,Complexity of Computation, ed. R. Karp, SIAM-AMS Proc. 7 (1974) pp. 43–73.Google Scholar
  17. [17]
    L. Farinas and A. Herzig, Reasoning about database updates,Workshop on Foundations of Logic Programming and Deductive Databases, J. Minker (ed.) (1986).Google Scholar
  18. [18]
    Y. Gurevich, Logic and the challenge of computer science, in:Trends in Theoretical Computer Science, E. Borger (ed.) (Computer Science Press, New York, 1988) pp. 1–57.Google Scholar
  19. [19]
    Y. Gurevich and S. Shelah, Fixed-point extensions of first-order logic,26th Symp. on Foundations of Computer Science (1985) pp. 346–353.Google Scholar
  20. [20]
    T. Imielinski and W. Lipski, Incomplete information in relational databases, J. ACM 31(4) (1984) 761–791.Google Scholar
  21. [21]
    T. Imielinski and S. Naqvi, Explicit control of logic programs through rule algebra,Proc. ACM SIGACT-SIGART-SIGMOD Symp. on Principles of Database Systems (1988) pp. 103–116.Google Scholar
  22. [22]
    N. Immerman, Relational queries computable in polynomial time, Inf. Control 68 (1986) 86–104.Google Scholar
  23. [23]
    N. Immerman, Languages which capture complexity classes, SIAM J. Comp. 16(4) (1987) 760–778.Google Scholar
  24. [24]
    P.C. Kanellakis, Elements of relational database theory, to appear as a chapter in:Handbook of Theoretical Computer Science (North-Holland).Google Scholar
  25. [25]
    J. de Kleer, An assumption-based truth maintenance system, Art. Int. 28 (1) (1986) 127–162.Google Scholar
  26. [26]
    KEE Reference Manual, release 3.0, Intellicorp (1986).Google Scholar
  27. [27]
    P. Kolaitis, The expressive power of stratified logic programs, to appear in Inf. Comp.Google Scholar
  28. [28]
    S. Naqvi and R. Krishnamurthy, Non-deterministic choice in Datalog,Proc. 3rd Int. Conf. on Data and Knowledge Bases (Morgan Kaufmann, Los Altos, 1988) pp. 416–424.Google Scholar
  29. [29]
    A.C. Leisenring,Mathematical Logic and Hilbert's ∈-symbol. (Gordon and Breach, 1969).Google Scholar
  30. [30]
    C. de Maindreville and E. Simon, Modelling non-deterministic queries and updates in deductive databases,Proc. Int. Conf. on Very Large Databases, Los Angeles (1988) pp. 395–407.Google Scholar
  31. [31]
    S. Manchanda and D.S. Warren, A logic-based language for database updates, in:Foundations of Logic Programming and Deductive Databases, ed. J. Minker (1987).Google Scholar
  32. [32]
    S. Naqvi and S. Tsur,A Logical Language for Data and Knowledge Bases (Computer Science Press, New York, 1989).Google Scholar
  33. [33]
    D. Sacca and C. Zaniolo, Stable models and non-determinism in logic programs with negation,Proc. ACM SIGACT-SIGMOD-SIGART Symp. on Principles of Database Systems (1990) pp. 205–217.Google Scholar
  34. [34]
    Y. Sagiv, Optimizing datalog programs,Proc. 6th ACM Symp. on Principles of Database Systems (1987) pp. 349–362.Google Scholar
  35. [35]
    E. Simon and C. de Maindreville, Deciding whether a production rule is relationally computable,Proc. 2nd Int. Conf. on Database Theory, Bruges, Belgium (1988) pp. 205–222.Google Scholar
  36. [36]
    Y. Shen, IDLOG: Extending the expressive power of deductive database languages,Proc. ACM SIGMOD Int. Conf. on Management of Data (1990) pp. 54–63.Google Scholar
  37. [37]
    J.D. Ullman,Principles of Database and Knowledge Base Systems (Computer Science Press, New York, 1988).Google Scholar
  38. [38]
    M. Vardi, Relational queries computable in polynomial time,14th ACM Symp. on Theory of Computing (1982) pp. 137–146.Google Scholar
  39. [39]
    D.S. Warren, Database updates in pure Prolog,Proc. Int. Conf. on Fifth Generation Computer Systems (1984).Google Scholar

Copyright information

© J.C. Baltzer A.G. Scientific Publishing Company 1991

Authors and Affiliations

  • Serge Abiteboul
    • 1
  • Victor Vianu
    • 2
  1. 1.INRIA, Rocquencourtle Chesnay CedexFrance
  2. 2.University of California at San DiegoSan DiegoUSA

Personalised recommendations