Journal of Intelligent Information Systems

, Volume 19, Issue 2, pp 231–259 | Cite as

Hypothetical Temporal Reasoning in Databases

  • Marcelo Arenas
  • Leopoldo Bertossi


In this paper we integrate a history–encoding based methodology for checking dynamic database integrity constraints into a situation-calculus based specification of relational database updates. By doing this, we are able to: (1) Answer queries about a whole hypothetical evolution of a database, without having to update the entire database and keep all the information associated to the generated states, (2) State and prove dynamic integrity constraints as static integrity constraints, (3). Transform history dependent preconditions for updates into local preconditions.

The methodology presented here is based on the introduction of operators of predicate past temporal logic as macros into the specifications, written in the situation calculus, of the dynamics of a database. Temporal subformulas of a query are treated as auxiliary views with the corresponding specification of their dynamics. An implementation of hypothetical temporal query answering is presented.

database dynamics hypothetical reasoning historical queries dynamic integrity constraints 


Unable to display preview. Download preview PDF.

Unable to display preview. Download preview PDF.


  1. Abiteboul, S., Herr, L., and Van der Bussche, J. (1996). Temporal versus First-Order Logic to Query Temporal Databases. In Proc. ACM Symposium on Principles of Database Systems (PODS'96) (pp. 49–57).Google Scholar
  2. Arenas, M. and Bertossi, L. (1998). Hypothetical Temporal Reasoning with History Encoding. In G. De Giacomo and D. Nardi (Eds.), Proc. ESSLLI-98 Workshop on Reasoning about Actions: Foundations and Applications (pp. 1–15). Saarbruecken.Google Scholar
  3. Arenas, M. and Bertossi, L. (1998). Hypothetical Temporal Queries in Databases. In A. Borgida, V. Chaudhuri, and M. Staudt (Eds.), Proc. 5th International Workshop on Knowledge Representation meets Databases (KRDB'98): Innovative Application Programming and Query Interfaces (pp. 4.1–4.8). ACM SIGMOD/PODS 98, Seattle.Google Scholar
  4. Arenas, M. and Bertossi, L. (1998). The Dynamics of Database Views. In H. Decker, B. Freitag, M. Kifer, and A. Voronkov (Eds.), Transactions and Change in Logic Databases (pp. 197–226). Springer, LNCS 1472.Google Scholar
  5. Arenas, M., Bertossi, L., and Pinto, J. (1998). Representation of Temporal Knowledge in the Situation Calculus. Available at Scholar
  6. Baier, J. and Pinto, J. (1998). Non-Instantaneous Actions and Concurrency in the Situation Calculus (Extended Abstract). In G. De Giacomo and D. Nardi (Ed.), Proc. ESSLLI-98 Workshop on Reasoning about Actions: Foundations and Applications, Saarbruecken.Google Scholar
  7. Bertossi, L., Arenas, M., and Ferretti, C. SCDBR. (1998). An Automated Reasoner for Specifications of Database Updates. Journal of Intelligent Information Systems, 10(3), 253–280.Google Scholar
  8. Bertossi, L., Pinto, J., Saez, P., Kapur, D., and Subramaniam, M. (1996). Automating Proofs of Integrity Constraints in the Situation Calculus. In Z.W. Ras and M. Michalewiccz (Eds.), Foundations of Intelligent Systems (pp. 212–222). Lecture Notes Artificial Intelligence 1079, Springer.Google Scholar
  9. Bonner, A. (1990). Hypothetical Datalog: Complexity and Expressivity. Theoretical Computer Science, 76(1), 3–51.Google Scholar
  10. Bonner, A. (1999). Workflow, Transactions, and Datalog. In Proc. ACM Symposium on Principles of Database Systems (PODS'99) (pp. 294–305).Google Scholar
  11. Bonner, A. and Kifer, M. (1998). Transaction Logic Programming. In J. Chomicki and G. Saake (Eds.), Logics for Databases and Information Systems, Dordrecht: Kluwer Academic Publishers.Google Scholar
  12. Chaudhuri, S. and Dayal, U. (1997). An Overview of Datawarehousing and OLAP Technology. ACM SIGMOD Record, 26(1), 65–74.Google Scholar
  13. Chen, W. (1997). Programming with Logical Queries, Bulk Updates, and Hypothetical Reasoning. IEEE Transactions on Data and Knowledge Engineering, 9(4), 587–599.Google Scholar
  14. Chittaro, L. and Montanari, A. (2000). Temporal Representation and Reasoning in Artificial Intelligence: Issues and Approaches. Annals of Mathematics and Artificial Intelligence, 28(1–4), 47–106.Google Scholar
  15. Chomicki, J. (1995). Efficient Checking of Temporal Integrity Constraints Using Bounded History Encoding. ACM Transactions on Database Systems, 20(2), 149–186.Google Scholar
  16. Chomicki, J., Lobo, J., and Naqvi, S.A. (2000). A Logic Programming Approach to Conflict Resolution in Policy Management. In Principles of Knowledge Representation and Reasoning: Proceedings of the Seventh International Conference (KR'2000), Morgan Kaufmann (pp. 121–132).Google Scholar
  17. Davulcu, H., Kifer, M., Ramakrishnan, C.R., and Ramakrishnan, I.V. (1998). Logic Based Modeling and Analysis of Workflows. In Proc. ACM Symposium on Principles of Database Systems (PODS'98) (pp. 25–33).Google Scholar
  18. Gabbay, D., Hodkinson, I., and Reynolds, M. (1994). Temporal Logic: Mathematical Foundations and Computational Aspects. Vol. 1, Oxford University Press.Google Scholar
  19. Hanks, S. and McDermott, D. (1986). Default Reasoning, Nonmontonic Logics, and the Frame Problem. In Proc. National Conference on Artifical Intelligence (pp. 328–333).Google Scholar
  20. Levesque, H., Reiter, R., Lesperance, Y., Lin, F., and Scherl, S. (1997). GOLOG. A Logic Programming Language for Dynamic Domains. Journal of Logic Programming, Special Issue on Reasoning about Action and Change, 31(1–3), 59–84.Google Scholar
  21. Lin, F. and Reiter, R. (1994). State Constraints Revisited. Journal of Logic and Computation. Special Issue on Action and Processes, 4(5), 655–678.Google Scholar
  22. Lin, F. and Reiter, R. (1997). How to Progress a Database. Artificial Intelligence, 92(1/2), 131–167.Google Scholar
  23. McCarthy, J. and Hayes, P. (1969). Some Philosophical Problems from the Standpoint of Artificial Intelligence. In B. Meltzer and D. Michie (Eds.), Machine Intelligence, 4, 463–502. Edinburgh University Press, Edinburgh, Scotland.Google Scholar
  24. Pinto, J. (1894). Temporal Reasoning in the Situational Calculus. PhD Thesis, Department of Computer Science, University of Toronto, Canada.Google Scholar
  25. Reiter, R. (1984). Towards a Logical Reconstruction of Relational Database Theory. In J. Mylopoulos and J. Schmidt (Eds.), On Conceptual Modelling: Perspectives from Artificial Intelligence, Databases and Programming Languages (pp. 191–233). Berlin: Springer-Verlag.Google Scholar
  26. Reiter, R. (1991). The Frame Problem in the Situation Calculus: A Simple Solution (Sometimes) and a Completeness Result for Goal Regression. In V. Lifschitz (Ed.), Artificial Intelligence and Mathematical Theory of Computation: Papers in Honor of John McCarthy (pp. 359–380). Academic Press.Google Scholar
  27. Reiter, R. (1995). On Specifying Database Updates. Journal of Logic Programming, 25(1), 53–91.Google Scholar
  28. Reiter, R. (1996). Natural Actions, Concurrency and Continuous Time in the Situation Calculus. In Principles of Knowledge Representation and Reasoning: Proceedings of the Fifth International Conference (KR'96), San Mateo, CA: Morgan Kaufmann.Google Scholar
  29. Reiter, R. (1998). Sequential, Temporal GOLOG. In Principles of Knowledge Representation and Reasoning: Proceedings of the Sixth International Conference (KR'98) (pp. 547–556). San Mateo, CA: Morgan Kaufmann.Google Scholar
  30. Reiter, R. (2001). Knowledge in Action: Logical Foundations for Specifying and Implementing Dynamical Systems. Cambridge, MA: MIT Press.Google Scholar
  31. Siu, B. and Bertossi, L. (1996). Answering Historical Queries in Databases (extended abstract). In M.V. Zelkowitz and P. Straub (Eds.), Proc. XVI International Conference of the Chilean Computer Science Society (SCCC'96) (pp. 56–66). Valdivia.Google Scholar
  32. Snodgrass, R. and Ahn, I. (1986). Temporal Databases. IEEE Computer, 35–42.Google Scholar
  33. Trajcevski, G., Baral, Ch., and Lobo, J. (2000). Formalizing (and Reasoning About) the Specifications of Work-flows. In Proc. CoopIS, pp. 1–17.Google Scholar

Copyright information

© Kluwer Academic Publishers 2002

Authors and Affiliations

  • Marcelo Arenas
    • 1
  • Leopoldo Bertossi
    • 2
  1. 1.Departamento de Ciencia de ComputacionPontificia Universidad Catolica de Chile, Escuela de IngenieriaSantiagoChile
  2. 2.School of Computer ScienceCarleton UniversityOttawaCanada

Personalised recommendations