Advertisement

Journal of Intelligent Information Systems

, Volume 32, Issue 2, pp 105–138 | Cite as

Specifying active databases as non-Markovian theories of actions

  • Iluju Kiringa
Article
  • 62 Downloads

Abstract

Over the last 15 years, database management systems (DBMSs) have been enhanced by the addition of rule-based programming to obtain active DBMSs. One of the greatest challenges in this area is to formally account for all the aspects of active behavior using a uniform formalism. In this paper, we formalize active relational databases within the framework of the situation calculus by uniformly accounting for them using theories embodying non-Markovian control in the situation calculus. We call these theories active relational theories and use them to capture the dynamics of active databases. Transaction processing and rule execution is modelled as a theorem proving task using active relational theories as background axioms. We show that the major components of an ADBMS, namely the rule sets and the execution models, may be given a clear semantics using active relational theories. More precisely: we represent the rule set as a program written in a suitable version of the situation calculus based language ConGolog; then we extend an existing situation calculus based framework for modelling advanced transaction models to one for modelling the execution models of active behaviors.

Keywords

Knowledge representation Situation calculus Semantic of active databases Logical foundations Action theories non-Markovian control 

References

  1. Aiken, A., Hellerstein, J. M., & Widom, J. (1995). Static analysis techniques for predicting the behaviour of active database rules. ACM Transaction on Database Systems, 20, 3–41.CrossRefGoogle Scholar
  2. Arenas, M., & Bertossi, L. (1998). Hypothetical temporal queries in databases. In A. Borgida, V. Chaudhuri, & V. Staudt (Eds.), Proceedings of the ACM SIGMOD/PODS 5th international workshop on knowledge representation meets Databases (pp. 4.1–4.8). http://sunsite.informatik.rwth-aachen.de/Publications/CEUR-WS/Vol-10/.
  3. Bailey, J., & Mikulás, S. (2001). Expressiveness issues and decision problems for active database event queries. In Proceedings of the international conference on database theory (pp. 68–82). London, UK: Springer.Google Scholar
  4. Baral, C., Lobo, J., & Trajcevski, G. (1997). Formal characterizations of active databases: Part II. In Proceedings of the international conference on deductive and object-oriented databases (pp. 247–264). Montreux, Switzerland: Springer.Google Scholar
  5. Baralis, E., Ceri, S., & Widom J. (1993). Better termination analysis for active databases. In Proceedings of the international workshop on rules in database systems (pp. 163–179). Edinburgh, Scotland: Springer.Google Scholar
  6. Bertossi, L., Pinto, J., & Valdivia, R. (1999). Specifying database transactions and active rules in the situation calculus. In H. Levesque & F. Pirri (Eds.), Logical foundations of cognitive agents. Contributions in Honor of Ray Reiter (pp. 41–56). New-York, NY: Springer.Google Scholar
  7. Bonner, A., & Kifer, M. (1992). Transaction logic programming. Technical report, University of Toronto.Google Scholar
  8. Chakravarthy, S., & Mishra, D. (1991). An event specification language (snoop) for active databases and its detection. Technical Report UF-CIS-TR-91-23, University of Florida.Google Scholar
  9. Coupaye, T., & Collet, C. (1995). Denotational semantics for an active rule execution model. In Proceedings of the international workshop on rules in database systems (pp. 36–50). Glyfada, Athens, Greece: Springer.Google Scholar
  10. De Giacomo, G., Lespérance, Y., & Levesque, H. (1997). Reasoning about concurrent execution, prioritized interrupts, and exogeneous actions in the situation calculus. In Proceedings of the international joint conference on artificial intelligence (pp. 1221–1226). Nagoya, Japan: Morgan Kaufmann.Google Scholar
  11. De Giacomo, G., Lespérance, Y., & Levesque, H. J. (2000). Congolog, a concurrent programming language based on the situation calculus: Foundations. Artificial Intelligence, 121(1-2), 109–169.MATHCrossRefMathSciNetGoogle Scholar
  12. Fernandes, A. A. A., Williams, M. H., & Paton, N. W. (1997). A logic-based integration of active and deductive databases. New Generation Computing, 15(2), 205–244.CrossRefGoogle Scholar
  13. Fraternali, P., & Tanca, L. (1995). A structured approach to the definition of the semantics of active databases. ACM Transactions on Database Systems, 20, 414–471.CrossRefGoogle Scholar
  14. Gabaldon, A. (2002). Non-markovian control in the situation calculus. In Proceedings of the national conference on artificial intelligence and the conference on innovative applications of artificial intelligence (pp. 519–524). Edmonton, Alberta, Canada: AAAI Press.Google Scholar
  15. Gatziu, S., & Dittrich, K. R. (1994). Detecting composite events in active database systems using petri nets. In: Proceeding on research issues in data engineering: Active database systems (RIDE’94) (pp. 2–9). Houston, Texas: IEEE.CrossRefGoogle Scholar
  16. Gelfond, M., & Lifschitz, V. (1998). The stable model semantics for logic programming. In Proceedings the international conference on logic programming (pp. 1070–1080). Cambridge, MA, USA: MIT Press.Google Scholar
  17. Guessoum, A., & Lloyd, J. W. (1990). Updating knowledge bases. New Generation Computing, 8(1), 71–89.MATHGoogle Scholar
  18. Harrisson, J. V., & Dietrich, S. W. (1993). Integrating active and deductive rules. In Proceedings of the international workshop on rules in database systems (pp. 288–305). Edinburgh, Scotland: Springer.Google Scholar
  19. Hsu, M., Ladin, R., & McCarthy, R. (1988). An execution model for active database management systems. In Proceedings of the international conference on data and knowledge bases (pp. 171–179). Jerusalem, Israel: Morgan Kaufmann.Google Scholar
  20. Hull, R., & Jacobs, D. (1991). Language constructs for programming active databases. In Proceedings of the international conference on very large data bases (pp. 455–467). Barcelona, Spain: Morgan Kaufmann.Google Scholar
  21. Kiringa, I. (2001). Simulation of advanced transaction models using GOLOG. In: Proceedings of the workshop on data bases and programming languages (pp. 318–341). Frascati, Italy: Springer.Google Scholar
  22. Kiringa, I. (2002). Specifying event logics for active databases. In Proceedings of the international workshop on knowledge representation meets databases. Toulouse, France: CEUR-WS.org.Google Scholar
  23. Kiringa, I. (2007). Specifying active databases as non-markovian theories of actions. Available at http://www.site.uottawa.ca/~kiringa/ADB-2007.
  24. Kiringa, I., & Reiter, R. (2002). Specifying semantics of active databases in the situation calculus (extended abstract). In Proceedings of the workshop on data bases and programming languages (pp. 110–129). Postdam, Germany: Springer.Google Scholar
  25. Levesque, H., Reiter, R., Lespérance, Y., Lin, F., & Scherl, R. B. (1997). Golog: A logic programming language for dynamic domains. Journal of Logic Programming: Special Issue on Actions, 31(1-3), 59–83.MATHGoogle Scholar
  26. Lloyd, J. W. (1988). Foundations of logic programming (2nd, extended ed.). Berlin: Springer.Google Scholar
  27. Ludäscher, B., Hamann, U., & Lausen, G. (1995). A logical framework for active rules. In Proceedings of the international conference on management of data. Pune, India: Tata.Google Scholar
  28. Lynch, N., Merritt, M. M., Weihl, W., & Fekete, A. (1994). Atomic transactions. San Mateo, USA: Morgan Kaufmann.Google Scholar
  29. Manna, Z., & Pnueli, A. (1991). The temporal logic of reactive and concurrent systems. New York: Springer.MATHGoogle Scholar
  30. McCarthy, J. (1963). Situations, actions and causal laws. Technical report, Stanford University.Google Scholar
  31. McCarthy, D., & Dayal, U. (1989). The architecture of an acctive data base management system. In Proceedings of the ACM SIGMOD international conference on management of data (pp. 215–224). Portland, USA: ACM Press.Google Scholar
  32. Minker, J. (1996). Logic and databases: A 20 year retrospective. In Proceedings of the international workshop on logic in databases (pp. 3–57). San Miniato, Italy: Springer.Google Scholar
  33. Paton, N. W. (1999). Active rules in database systems. New York: Springer.MATHGoogle Scholar
  34. Paton, N. W., Campin, J., Fernandes, A. A. A., & Williams, M. H. (1995). Formal specifications of active database functionality: A survey. In Proceedings of the international workshop on rules in database systems (pp. 21–35). Glyfada, Athens, Greece: Springer.Google Scholar
  35. Picouet, P., & Vianu, V. (1995). Semantics and expressiveness issues in active databases. In Proceedings of the ACM symposium on principles of database systems (pp. 126–138). San José, USA: ACM Press.Google Scholar
  36. Picouet, P., & Vianu, V. (1997). Expressiveness and complexity active databases. In Proceedings of the international conference on database theory (pp. 155–172). Delphi, Greece: Springer.Google Scholar
  37. Reddi, S., Poulovassilis, A., & Small, C. (1999). Pfl: An active functional dbpl. In N. W. Paton (Ed.), Active rules in databases systems (pp. 297–308). New York: Springer.Google Scholar
  38. Reiter, R. (1984). Towards a logical reconstruction of relational database theory. In M. Brodie, J. Mylopoulos, & J. Schmidt (Eds.), On conceptual modelling (pp. 163–189). New York: Springer.Google Scholar
  39. Reiter, R. (1995). On specifying database updates. Journal of Logic Programming, 25, 25–91.CrossRefGoogle Scholar
  40. Reiter, R. (2001). Knowledge in action: Logical foundations for describing and implementing dynamical systems. Cambridge: MIT Press.Google Scholar
  41. Tennent, R. D. (1976). The denotational semantics of programming languages. Communications of the ACM, 19, 437–453.MATHCrossRefMathSciNetGoogle Scholar
  42. Van Gelder, A., Ross, K. A., & Schlipf, J. S. (1988). Unfounded sets and well-founded semantics for general programs. In Proceedings the ACM symposium on principles of database systems (pp. 221–230). Austin, Texas: ACM Press.Google Scholar
  43. Widom, J. (1992). A denotational semantics for the starburst production rule language. SIGMOD RECORD, 21(3), 4–9.CrossRefGoogle Scholar
  44. Widom, J. (1993). Deductive and active databases: Two paradigms or ends of a spectrum? In N. W. Paton & H. Williams (Eds.), Rules in database systems (pp. 306–315). New-York: Springer.Google Scholar
  45. Widom, J., & Ceri, S. (1996). Active database systems: Triggers and rules for advanced database processing. San Francisco: Morgan Kaufmann.Google Scholar
  46. Winslett, M. (1990). Updating logical databases. Cambridge, MA: Cambridge University Press.MATHGoogle Scholar
  47. Zaniolo, C. (1993). A unified semantics for active and deductive databases. In N. W. Paton & H. Williams (Eds.), Rules in database systems (pp. 271–287). New-York: Springer.Google Scholar
  48. Zaniolo, C. (1995). Active database rules with transaction-conscious stable-model semantics. In Proceedings of the international conference on deductive and object-oriented databases (pp. 55–72). Berlin: Springer.Google Scholar
  49. Zimmer, D., & Unland, R. (2001). On the semantics of complex events in active database managements systems. In Proceedings of the international conference on data engineering (pp. 392–399). Sydney, Australia: IEEE Computer Society.Google Scholar

Copyright information

© Springer Science+Business Media, LLC 2007

Authors and Affiliations

  1. 1.School of Information Technology and Engineering Faculty of EngineeringUniversity of OttawaOttawaCanada

Personalised recommendations