An Algebraic Approach to Rule Analysis in Expert Database Systems

Expert database systems extend the functionality of conventional database systems by providing a facility for creating and automatically executing Condition-Action rules. While Condition-Action rules in database systems are very powerful, they also can be very difficult to program, due to the unstructured and unpredictable nature of rule processing. We provide methods for static analysis of Condition-Action rules; our methods determine whether a given rule set is guaranteed to terminate, and whether rule execution is confluent (has a guaranteed unique final state). Our methods are based on previous methods for analyzing rules in active database systems. We improve considerably on the previous methods by providing analysis criteria that are much less conservative: our methods often determine that a rule set will terminate or is confluent when previous methods could not. Our improved analysis is based on a ``propagation'''' algorithm, which uses a formal approach based on an extended relational algebra to accurately determine when the action of one rule can affect the condition of another. Our algebraic approach yields methods that are applicable to a broad class of expert database rule languages.

[1]  Eric N. Hanson,et al.  Rule condition testing and action execution in Ariel , 1992, SIGMOD '92.

[2]  Meichun Hsu,et al.  A Theory for Rule Triggering Systems , 1990, EDBT.

[3]  Georg Gottlob,et al.  Translating SQL Into Relational Algebra: Optimization, Semantics, and Equivalence of SQL Queries , 1985, IEEE Transactions on Software Engineering.

[4]  Jennifer Widom,et al.  Using Delta Relations to Optimize Condition Evaluation in Active Databases , 1995, Rules in Database Systems.

[5]  Nancy Martin,et al.  Programming Expert Systems in OPS5 - An Introduction to Rule-Based Programming(1) , 1985, Int. CMG Conference.

[6]  Letizia Tanca,et al.  Logic Programming and Databases , 1990, Surveys in Computer Science.

[7]  Jeffrey D. Uuman Principles of database and knowledge- base systems , 1989 .

[8]  Alon Y. Halevy,et al.  Queries Independent of Updates , 1993, VLDB.

[9]  Charles Elkan,et al.  Independence of logic database queries and update , 1990, PODS '90.

[10]  Susan D. Urban,et al.  Conditional Term Rewriting as a Formal Basis for Active Database Rules. , 1994 .

[11]  Anthony C. Klug Equivalence of Relational Algebra and Relational Calculus Query Languages Having Aggregate Functions , 1982, JACM.

[12]  Jennifer Widom,et al.  An overview of production rules in database systems , 1993, The Knowledge Engineering Review.

[13]  Mao-Yuan Hsu,et al.  Determinism in partially ordered production systems , 1991 .

[14]  Eric Simon,et al.  Implementing High Level Active Rules on Top of a Relational DBMS , 1992, VLDB.

[15]  Arno Siebes,et al.  Termination and Confluence of Rule Execution Termination and Connuence of Rule Execution , 1993 .

[16]  Jennifer Widom,et al.  Deriving Production Rules for Constraint Maintainance , 1990, VLDB.

[17]  Timos K. Sellis,et al.  Implementing large production systems in a DBMS environment: concepts and algorithms , 1988, SIGMOD '88.

[18]  Gio Wiederhold,et al.  Incremental Recomputation of Active Relational Expressions , 1991, IEEE Trans. Knowl. Data Eng..

[19]  Douglas N. Gordin,et al.  Set-oriented constructs: from Rete rule bases to database systems , 1991, SIGMOD '91.

[20]  Arno Siebes,et al.  Termination and confluence of rule execution , 1993, CIKM '93.

[21]  Arie Tzvieli On the Coupling of a Production System Shell and a DBMS , 1988, JCDKB.

[22]  Jennifer Widom,et al.  Better Termination Analysis for Active Databases , 1993, Rules in Database Systems.

[23]  Jeffrey D. Ullman,et al.  Principles of Database and Knowledge-Base Systems, Volume II , 1988, Principles of computer science series.

[24]  Daniel P. Miranker,et al.  Index support for rule activation , 1993, SIGMOD '93.

[25]  Susan Darling Urban,et al.  Conditional term rewriting as a formal basis for analysis of active database rules , 1994, Proceedings of IEEE International Workshop on Research Issues in Data Engineering: Active Databases Systems.

[26]  Scotland , 1909 .

[27]  Letizia Tanca,et al.  Logic Programming and Databases: An Overview , 1990 .

[28]  Lois M. L. Delcambre,et al.  The Relational Production Language: A Production Language for Relational Databases , 1988, Expert Database Conf..

[29]  Sharma Chakravarthy,et al.  Situation Monitoring for Active Databases , 1989, VLDB.

[30]  Jennifer Widom,et al.  Behavior of database production rules: termination, confluence, and observable determinism , 1992, SIGMOD '92.