Optimizing incremental computation of datalog programs with non-deterministic semantics

  • Françoise Fabret
  • Mireille Régnier
  • Eric Simon
Conference paper
Part of the Lecture Notes in Computer Science book series (LNCS, volume 646)


We address the problem of efficient evaluation of non-deterministic logic programs in a database context using incremental evaluation algorithms. We consider a representative non-deterministic Datalog extension which gives a formal basis to various production rule languages. We point out a clear space-time tradeoff in the choice made by some algorithms to materialize and incrementally maintain some data in order to compute the meaning of a rule program. We advocate that the data maintained by an incremental evaluation algorithm should be chosen according to some particular properties of a rule program. We identify such properties and provide means to determine them statically based on a syntactic analysis of the bodies and heads of rules. We show that using these properties, one can improve the performance of the two best known incremental evaluation algorithms TREAT and RETE.


deductive databases production rule languages Datalog extensions algorithms rule optimization 


Unable to display preview. Download preview PDF.

Unable to display preview. Download preview PDF.


  1. [AS90]
    S. Abiteboul and E. Simon. Fundamental properties of deterministic and non deterministic extensions of Datalog, Theoretical Computer Science, 78, (1991), pp. 137–158.Google Scholar
  2. [ASV90]
    S. Abiteboul, E. Simon, and V. Vianu. Non-Deterministic Languages to Express Deteiministic Transformations. In Proc. of 9-th ACM Symposium on Principles of Database Systems, Nashville, April 1990.Google Scholar
  3. [AvG92]
    S. Abiteboul and A. van Gelder. Optimizing Active Databases Using the Split Technique. In Proc. Int. Conf. on Database Theory, Berlin, Oct. 1992.Google Scholar
  4. [AV89]
    S. Abiteboul and V. Vianu. Fixpoint extensions of first order logic and datalog like languages. In Proc. of IEEE Int. Conf. on Logic in Computer Sciences, Asilomar, Ca, USA.Google Scholar
  5. [BCL89]
    Jose A. Blakeley, Neil Coburn, and Per-Ake Larson. Updating derived relations: Detecting irrelevant and autonomously computable updates. ACM Trans. on Database Systems, 14(3):369–400, 1989.Google Scholar
  6. [BFKM85]
    L. Brownston, R. Farrel, E. Kant, and N. Martin. Programming Expert Systems in OPSS: An Introduction to rule Based Programming. Addison-Wesley, 1985.Google Scholar
  7. [Ear76]
    J. Earley. High level iterators and a method for automatically designing data structures representation. J. of Computer Languages, 1, 1976.Google Scholar
  8. [FaReSi92]
    F. Fabret, M. Régnier and E. Simon. Optimising Incremental Computation of Datalog Programs with Non-deterministic Semantics. INRIA Research Report, June 1992.Google Scholar
  9. [Fon79]
    A. Fong. Inductively computable constructs in very high level languages. In Proc. of 6-th ACM Symposium on Principles of Programming Languages, San Antonio, 1976.Google Scholar
  10. [For82]
    C. Fotgy. Rete, a fast algorithm for the many patterns many objects match problem. Artificial Intelligence, 19:17–37, 1982.CrossRefGoogle Scholar
  11. [FU76]
    A. Fong and J. Ullman. Induction variables in very high level languages. In Proc. of 3-rd ACM Symposium on Principles of Programming Languages, Atlanta, 1976.Google Scholar
  12. [Han92]
    E.N. Hanson Rule Condition Testing and Action Execution in Ariel, in Proc. of the 1992 ACM SIGMOD Int. Conf., San-Diego, June 1992.Google Scholar
  13. [Mir87]
    D.P. Miranker. Treat: A better match algorithm for AI production systems. In Proc. of the 1987 National Conference on Artificial Intelligence. Seattle, Washington, 1987.Google Scholar
  14. [PK82]
    R. Paige and S. Koenig. Finite differencing of computable expressions. ACM Transactions on Programming Languages and Systems, 4(3), 1982.Google Scholar
  15. [SLR88]
    T. Sellis, C. Lin, and L. Raschid. Implementing large production systems in a DBMS environment: Concepts and algorithms. In Proc. 1988 ACM SIGMOD Int. Conf., Chicago, May 1988.Google Scholar
  16. [U1188]
    J. Ullman. Principles of Database and Knowledge Systems, volume 1. Computer Science Press, 1988.Google Scholar

Copyright information

© Springer-Verlag Berlin Heidelberg 1992

Authors and Affiliations

  • Françoise Fabret
    • 1
  • Mireille Régnier
    • 1
  • Eric Simon
    • 1
  1. 1.INRIALe ChesnayFrance

Personalised recommendations