Abstract
The attractions and drawbacks of data-driven programming are discussed in the context of rule-based forward chaining systems. The relationships between data-driven and command-driven programming are analyzed in the context of a course-registration example. A new form of production rule, called an activation pattern controlled rule, that generalizes classical forward chaining rules is introduced. Activation pattern controlled rules are triggered by calls of commands; that is, by the intension to perform a command but not necessarily by the result of applying the command itself. We demonstrate that activation pattern controlled rules facilitate the integration of data-driven and command-driven programming, support preventive programming as well, and allow for writing rule-based programs more transparently. We also survey our experiences in implementing an inference engine for activation pattern controlled rules.
Similar content being viewed by others
References
J. Blakeley, N. Coburn, and P. Larsen, “Updating derived relations: Detecting irrelevant and autonomously computable updates,” ACM Transaction and Database Systems, vol. 14, no. 3, pp. 369–400, 1989.
A. Alashur, S. Su, and H. Lam, “A rule-based language for deductive object-oriented databases,” in Proc. Sixth Int. Conference on Data Engineering, Los Angeles, 1990. pp. 58–67.
H. Decker, “Integrity enforcement on deductive data-bases”, in L. Kerschberg, Proc. First Int. Conf. on Expert Data Base Systems. Menlo Park: Benjamin/Cummings Publishing Company, pp. 381–396, 1987.
R. Kowalski, F. Sadri, and P. Soper, “Integrity checking in deductive databases,” in Proc. Int. Conf. on Very Large Databases, Brighton, 1989, pp. 61–69.
P. Sheu, and W. Sull, “Knowledge management in deductive object bases,” Data & Knowledge Engineering, vol. 5, no. 1, pp. 29–58, 1990.
Inference Corporation, ART Reference Manual; Los Angeles: Inference Corporation, 1986.
IntelliCorp, KEE Primer KEE Version 3.1. IntelliCorp publication number K3.1-P-1, 1988.
CODASYL Data Description Language Committee, “CODASYL data description language: Journal of development,” in NBS Handbook 113, 1973.
M. Stonebraker, and L. Rowe, “The design of POSTGRES,” in Proc. ACM-SIGMOD Conference on Management of Data,” Washington, 1986, pp. 340–355.
D. McCarthy, and U. Dayal, “The architecture of an active data base management system,” in Proc. ACM-SIGMOD Conference on Management of Data, Portland, 1989, pp. 215–224.
J. Widom, and S. Finkelstein, “Set-oriented production rules in relational database systems,” in Proc. ACM-SIGMOD Conference on Management of Data, 1990, pp. 259–270.
A. Kotz, K. Dittrich, and J. Mülle, “Supporting semantic rules by a generalized event-trigger mechanism,” in Proc. Int. Conf. Extending Database Technology, Venice, 1988.
K.P. Eswaran et al., “The notations of consistency and predicate locks in a database system,” CACM, vol. 19, no. 11, pp. 624–633, 1976.
D.D. Chamberlin et al., “SEQUEL 2: A unified approach to data definition, data manipulation, manipulation and control,” IBM Journal of Research and Development, pp. 561–575, 1976.
M. Stonebraker, “Triggers and inference in database systems,” in M.L. Brodie et al. (eds.), On Knowledge Base Management Systems. Berlin: Springer Verlag, pp. 297–314, 1986.
M. Stonebraker, H. Hanson, and S. Potomianos, “The POSTGRES rule manager,” IEEE Transactions on Software Engineering, vol. 14, no. 7, pp. 897–907, 1988.
L. Browston, R. Farrell, E. Kant, and N. Martin, Programming Expert Systems in OPS5—An Introduction to Rule-Based Programming. Reading: Addison-Wesley Publishing Company, 1985.
J. Giarrantano, and G. Riley, Expert System—Principles and Programming. Boston: PWS-KENT Publishing Company, 1989.
C. Eick et al., “Computer bridge—A challenge for AI,” in Proc. Fifth Int. Symposium on Methodologies for Intelligent Systems, Knoxville, 1990.
E. Soloway, J. Bachant, and K. Jensen, “Accessing the maintainability of XCON-in-RIME: Coping with problems of a VERY large rule-base,” in Proc. Sixth National Conference on Artificial Intelligence, Seattle, 1987, pp. 824–829.
C. Eick, R. Kochlar, and S. Kumar, “DALI—a knowledge base management system,” in Proc. First Int. Conf. on Industrial and Engineering Applications of Expert Systems and Artificial Intelligence, Tullahoma, 1988, pp. 837–846.
C. Eick, and T. Raupp, “Towards a formal semantics and inference rules for conceptual data models,” Data & Knowledge Engineering, vol. 6, no. 4, pp. 297–317, 1991.
C. Eick, J. Liu, and P. Werstein, “Integration of rules into a knowledge base management system,” in Proc. First Int. IEEE Conference on Systems Integration, Morristown, 1990. pp. 86–95.
C. Eick, and P. Werstein, “Rule-based consistency enforcement for knowlege-based systems,” accepted for IEEE Transactions on Knowledge and Data Engineering. Technical Report #UH-CS-90-08, University of Houston, 1990.
M.L. Brodie et al. (eds.), On Knowledge Base Management Systems. Berlin: Springer Verlag, 1986.
J. Augusti-Cullell, C. Sierra, and D. Sanella, “Adding generic modules to flat rule-based languages: A low cost approach,” in Z. Ras (eds.), Methodologies for Intelligent Systems, 4. New York: North Holland, 1989. pp. 43–51.
V. Barker, and D. O'Connor, “Expert systems for configuration at Digital: XCON and Beyond,” CACM, Vol. 32, No. 3, pp. 298–318, 1989.
R. Jacob, and J. Froscher, “A software engineering methodology for rule-based systems,” IEEE Transactions on Knowledge and Data Engineering, vol. 2, no. 2, 1990. pp. 173–189.
P. Werstein, “Speeding up rules in integrated knowledge bases,” Master's Thesis, University of Houston, 1990.
D. Miranker, “TREAT—A better match algorithm for AI production systems,” in Proc. Sixth Nat. Conference on Artificial Intelligence, Seattle, 1987, pp. 42–47.
C. Forgy, “RETE: A fast algorithm for the many patterns/many objects pattern matching problem,” Artificial Intelligence, vol. 33, no. 1, pp. 17–37, 1982.
J. Liu, “Efficient access to knowledge bases,” Master's Thesis, University of Houston, 1989.
D. Miranker, and D. Brant, “An algorithmic basis for integrating production systems and large databases,” in Proc. Sixth Int. Conference on Data Engineering, Los Angeles, 1990, pp. 353–360.
Author information
Authors and Affiliations
Rights and permissions
About this article
Cite this article
Eick, C.F. Activation pattern controlled rules: Towards an integration of data-driven and command-driven programming. Appl Intell 2, 75–91 (1992). https://doi.org/10.1007/BF00058576
Received:
Revised:
Issue Date:
DOI: https://doi.org/10.1007/BF00058576