Skip to main content
Log in

Specifying active databases as non-Markovian theories of actions

  • Published:
Journal of Intelligent Information Systems Aims and scope Submit manuscript

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.

This is a preview of subscription content, log in via an institution to check access.

Access this article

Price excludes VAT (USA)
Tax calculation will be finalised during checkout.

Instant access to the full article PDF.

Fig. 1
Fig. 2
Fig. 3

Similar content being viewed by others

Notes

  1. The terminology internal versus external action is also used in Lynch et al. (1994), though with a different meaning.

  2. Transactions may be concatenated to form a longer sequence of actions.

  3. We omit the foundational axioms, precondition axioms for external actions, and dependency axioms; they play no role in the sequel of this paper. Furthermore, we assume classical flat transactions as the underlying transaction mechanism (Kiringa 2001).

  4. The ConGolog programs we are referring to in this paper are called well formed. The formal definition of these programs is given in the longer version of this paper (Kiringa 2007).

  5. Readers from Knowledge Representation might get confused by the qualification “Knowledge” in the title of this section. It seems that a title like “Specifying Events” or “Specifying Active Relational Theories” would be a more appropriate title of the section. However, due to Paton (1999), “Knowledge model” is now prevalent in active databases to denote all aspects of active behavior related to events.

  6. For example, in Starburst (Widom and Ceri 1996), r will be considered in the future course of actions only from the time point where it last stopped being considered.

  7. They were first introduced in the HiPAC system (Hsu et al. 1988) and have since been widely used in most ADBMS proposals (Paton 1999). Our presentation is slightly more general than the original one, in which the relationships between coupling modes and execution models, and those between transactions and execution models were not conceptually separated.

  8. This constraint is in fact stricter than a similar constraint found in Hsu et al. (1988), where it is stated that “A cannot be executed before C is evaluated”. The formulation of Hsu et al. (1988), however, does not rule out simultaneous action executions and condition evaluations, a situation that obviously can lead to disastrous behaviors.

  9. Notice that this semantics means that transitions may in fact be big leaps involving many actions. This may prevent some desirable concurrency. We leave this problem out of the scope of this document.

  10. This sentence expresses the so-called confluence property of active rules. This property ensures that whenever a rule program reaches two final database states, then the two states are the same, independently of the order of the execution of non-prioritized rules.

References

  • 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.

    Article  Google Scholar 

  • 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/.

  • 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 

  • 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 

  • 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 

  • 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 

  • Bonner, A., & Kifer, M. (1992). Transaction logic programming. Technical report, University of Toronto.

  • 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.

  • 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 

  • 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 

  • 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.

    Article  MATH  MathSciNet  Google Scholar 

  • 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.

    Article  Google Scholar 

  • 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.

    Article  Google Scholar 

  • 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 

  • 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.

    Chapter  Google Scholar 

  • 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 

  • Guessoum, A., & Lloyd, J. W. (1990). Updating knowledge bases. New Generation Computing, 8(1), 71–89.

    MATH  Google Scholar 

  • 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 

  • 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 

  • 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 

  • 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 

  • 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 

  • Kiringa, I. (2007). Specifying active databases as non-markovian theories of actions. Available at http://www.site.uottawa.ca/~kiringa/ADB-2007.

  • 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 

  • 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.

    MATH  Google Scholar 

  • Lloyd, J. W. (1988). Foundations of logic programming (2nd, extended ed.). Berlin: Springer.

    Google Scholar 

  • 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 

  • Lynch, N., Merritt, M. M., Weihl, W., & Fekete, A. (1994). Atomic transactions. San Mateo, USA: Morgan Kaufmann.

    Google Scholar 

  • Manna, Z., & Pnueli, A. (1991). The temporal logic of reactive and concurrent systems. New York: Springer.

    MATH  Google Scholar 

  • McCarthy, J. (1963). Situations, actions and causal laws. Technical report, Stanford University.

  • 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 

  • 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 

  • Paton, N. W. (1999). Active rules in database systems. New York: Springer.

    MATH  Google Scholar 

  • 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 

  • 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 

  • 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 

  • 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 

  • 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 

  • Reiter, R. (1995). On specifying database updates. Journal of Logic Programming, 25, 25–91.

    Article  Google Scholar 

  • Reiter, R. (2001). Knowledge in action: Logical foundations for describing and implementing dynamical systems. Cambridge: MIT Press.

    Google Scholar 

  • Tennent, R. D. (1976). The denotational semantics of programming languages. Communications of the ACM, 19, 437–453.

    Article  MATH  MathSciNet  Google Scholar 

  • 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 

  • Widom, J. (1992). A denotational semantics for the starburst production rule language. SIGMOD RECORD, 21(3), 4–9.

    Article  Google Scholar 

  • 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 

  • Widom, J., & Ceri, S. (1996). Active database systems: Triggers and rules for advanced database processing. San Francisco: Morgan Kaufmann.

    Google Scholar 

  • Winslett, M. (1990). Updating logical databases. Cambridge, MA: Cambridge University Press.

    MATH  Google Scholar 

  • 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 

  • 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 

  • 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 

Download references

Author information

Authors and Affiliations

Authors

Corresponding author

Correspondence to Iluju Kiringa.

Additional information

An early version of this paper appeared in Kiringa and Reiter (2002), Kiringa (2002). Detailed technical specifications, as well as proofs of theorems are given in Kiringa (2007).

Rights and permissions

Reprints and permissions

About this article

Cite this article

Kiringa, I. Specifying active databases as non-Markovian theories of actions. J Intell Inf Syst 32, 105–138 (2009). https://doi.org/10.1007/s10844-007-0050-3

Download citation

  • Received:

  • Revised:

  • Accepted:

  • Published:

  • Issue Date:

  • DOI: https://doi.org/10.1007/s10844-007-0050-3

Keywords

Navigation