Skip to main content
Log in

Non-determinism in logic-based languages

  • Published:
Annals of Mathematics and Artificial Intelligence Aims and scope Submit manuscript

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.

This is a preview of subscription content, log in via an institution to check access.

Access this article

Price excludes VAT (USA)
Tax calculation will be finalised during checkout.

Instant access to the full article PDF.

Similar content being viewed by others

References

  1. S. Abiteboul and G. Grahne, Update semantics for incomplete databases,Int. Conf. on Very Large Data Bases (1985) 1–12.

  2. S. Abiteboul and E. Simon, Fundamental properties of deterministic and non-deterministic extensions of Datalog, submitted to Theor. Comp. Sci.

  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.

  4. S. Abiteboul and V. Vianu, Procedural languages for database queries and updates, J. Comp. Syst. Sci. 41 (2) (1990).

  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.

  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.

  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.

  8. S. Abiteboul and V. Vianu, A transaction-based approach to relational database specification, J. ACM 36(4) (1989) 758–789.

    Google Scholar 

  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.

  10. L. Brownston, R. Farrel, E. Kant and N. Martin,Programming Expert Systems in OPS5 (Addison-Wesley, 1985).

  11. A.K. Chandra, Programming primitives for database languages,Proc. ACM Symp. on Principles of Programming Languages, Williamsburg (1981) pp. 50–62.

  12. A.K. Chandra and D. Harel, Computable queries for relational databases, J. Comp. Syst. Sci. 21(2) (1980) 156–178.

    Google Scholar 

  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. 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. E. Dahlhaus,Skolem Normal Forms Concerning the Least Fixpoint, Computation and Logic, Lecture Notes in Computer Science (Springer Verlag, 1987).

  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.

  17. L. Farinas and A. Herzig, Reasoning about database updates,Workshop on Foundations of Logic Programming and Deductive Databases, J. Minker (ed.) (1986).

  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. Y. Gurevich and S. Shelah, Fixed-point extensions of first-order logic,26th Symp. on Foundations of Computer Science (1985) pp. 346–353.

  20. T. Imielinski and W. Lipski, Incomplete information in relational databases, J. ACM 31(4) (1984) 761–791.

    Google Scholar 

  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.

  22. N. Immerman, Relational queries computable in polynomial time, Inf. Control 68 (1986) 86–104.

    Google Scholar 

  23. N. Immerman, Languages which capture complexity classes, SIAM J. Comp. 16(4) (1987) 760–778.

    Google Scholar 

  24. P.C. Kanellakis, Elements of relational database theory, to appear as a chapter in:Handbook of Theoretical Computer Science (North-Holland).

  25. J. de Kleer, An assumption-based truth maintenance system, Art. Int. 28 (1) (1986) 127–162.

    Google Scholar 

  26. KEE Reference Manual, release 3.0, Intellicorp (1986).

  27. P. Kolaitis, The expressive power of stratified logic programs, to appear in Inf. Comp.

  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. A.C. Leisenring,Mathematical Logic and Hilbert's ∈-symbol. (Gordon and Breach, 1969).

  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.

  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).

  32. S. Naqvi and S. Tsur,A Logical Language for Data and Knowledge Bases (Computer Science Press, New York, 1989).

    Google Scholar 

  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.

  34. Y. Sagiv, Optimizing datalog programs,Proc. 6th ACM Symp. on Principles of Database Systems (1987) pp. 349–362.

  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.

  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.

  37. J.D. Ullman,Principles of Database and Knowledge Base Systems (Computer Science Press, New York, 1988).

    Google Scholar 

  38. M. Vardi, Relational queries computable in polynomial time,14th ACM Symp. on Theory of Computing (1982) pp. 137–146.

  39. D.S. Warren, Database updates in pure Prolog,Proc. Int. Conf. on Fifth Generation Computer Systems (1984).

Download references

Author information

Authors and Affiliations

Authors

Additional information

Work supported by the Projet de Recherche Coordonnée BD3.

Work supported in part by the National Science Foundation under grants IRI-8816078 and INT-8817874. The work was done in part while the author was visiting INRIA.

Rights and permissions

Reprints and permissions

About this article

Cite this article

Abiteboul, S., Vianu, V. Non-determinism in logic-based languages. Ann Math Artif Intell 3, 151–186 (1991). https://doi.org/10.1007/BF01530924

Download citation

  • Issue Date:

  • DOI: https://doi.org/10.1007/BF01530924

Keywords

Navigation