Adapting the Rete-Algorithm to Evaluate F-Logic Rules

  • Florian Schmedding
  • Nour Sawas
  • Georg Lausen
Part of the Lecture Notes in Computer Science book series (LNCS, volume 4824)


The evaluation of production rules is typically based on the Rete-algorithm. The topic of the current paper is to investigate, whether set-oriented bottom-up evaluation of rules in deductive databases can also take advantage of the Rete approach. We report on our implementation of the Rete algorithm as one possible evaluation technique inside the F-Logic rule evaluation engine Florid. We demonstrate, that in situations in which several rules share common subgoals a considerable improvement of the execution time can be gained by the Rete approach. We show this by means of benchmark programs, also comparing our results with the performance of Jess, a production rule system relying on Rete.


Production Rule Hash Table Deductive Database Path Expression Production Node 
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.


Unable to display preview. Download preview PDF.

Unable to display preview. Download preview PDF.


  1. 1.
    Batory, D.: The LEAPS Algorithms.Technical Report 94-28, Department of Computer Sciences, University of Texas at Austin (1994)Google Scholar
  2. 2.
    Doorenbos, R.: Production Matching for Large Learning Systems. PhD thesis, Computer Science Department, CMU, Pittsburgh (1995)Google Scholar
  3. 3.
    Forgy, C.L.: Rete: a fast algorithm for the many pattern/many object pattern match problem. Artificial Intelligence 19, 17–37 (1982)CrossRefGoogle Scholar
  4. 4.
    Frohn, J., Lausen, G., Uphoff, H.: Access to objects by path expressions and rules. In: VLDB 1994. Proceedings of the 20th International Conference on Very Large Data Bases, pp. 273–284. Morgan Kaufmann, San Francisco, CA, USA (1994)Google Scholar
  5. 5.
    Kifer, M., Lausen, G., Wu, J.: Logical foundations of object-oriented and frame-based languages. J. ACM 42(4), 741–843 (1995)zbMATHCrossRefMathSciNetGoogle Scholar
  6. 6.
    May, W.: Florid User Manual. Technical report, Institut für Informatik, Universität Freiburg (2000)Google Scholar
  7. 7.
    May, W.: How to write F-Logic Programs in Florid. Technical report, Institut für Informatik, Universität Freiburg (2000)Google Scholar
  8. 8.
    Miranker, D.P.: TREAT: a new and efficient match algorithm for AI production systems. Morgan Kaufmann, San Francisco (1990)zbMATHGoogle Scholar
  9. 9.
    Sawas, N.: Adapting the Rete-Algorithm to F-logic and its Implementation in Florid. Institut für Informationssysteme, Technische Universität Braunschweig, master’s thesis (2007)Google Scholar
  10. 10.
    Wright, I., Marshall, J.: The execution kernel of RC++: RETE*, a faster RETE with TREAT as a special case. International Journal of Intelligent Games and Simulation 2(1), 36–48 (2003)Google Scholar

Copyright information

© Springer-Verlag Berlin Heidelberg 2007

Authors and Affiliations

  • Florian Schmedding
    • 1
  • Nour Sawas
    • 1
  • Georg Lausen
    • 1
  1. 1.University of Freiburg, Institute for Computer Science, Georges-Köhler-Allee 51, 79106 FreiburgGermany

Personalised recommendations