This Article 
   
 Share 
   
 Bibliographic References 
   
 Add to: 
 
Digg
Furl
Spurl
Blink
Simpy
Google
Del.icio.us
Y!MyWeb
 
 Search 
   
A Logic Programming Framework for Modeling Temporal Objects
October 1996 (vol. 8 no. 5)
pp. 724-741

Abstract—We present a general approach for modeling temporal aspects of objects in a logic programming framework. Change is formulated in the context of a database which stores explicitly a record of all changes that have occurred to objects and thus (implicitly) all states of objects in the database. A snapshot of the database at any given time is an object-oriented database, in the sense that it supports an object-based data model. An object is viewed as a collection of simple atomic formulas, with support for an explicit notion of object identity, classes and inheritance. The event calculus is a treatment of time and change in first-order classical logic augmented with negation as failure. The paper develops a variant of the event calculus for representing changes to objects, including change in internal state of objects, creation and deletion of objects, and mutation of objects over time. The concluding sections present two natural and straightforward extensions, to deal with versioning of objects and schema evolution, and a sketch of implementation strategies for practical application to temporal object-oriented databases.

[1] S. Abiteboul and S. Grumbach,“COL: A logic-based language for complex objects,” Proc. Int’l Conf. Extending Database Technology, LNCS 303, pp. 271-293, Mar. 1988.
[2] H. Ait-Kaci and R. Nasr, "LOGIN: A Logic Programming Language with Built-In Inheritance," The J. of Logic Programming, vol. 3, no. 3, pp. 185-215, Oct. 1986.
[3] M. Atkinson et al., "The Object-Oriented Database System Manifesto," Proc. First Int'l Conf. Deductive and Object-Oriented Databases, pp. 40-57, 1989.
[4] F. Bancilhon, "Object-Oriented Database Systems," Proc. ACM SIGMOD Int'l Conf., pp. 152-162, 1988.
[5] C. Beeri, "Formal Models for Object Oriented Databases," Proc. First Int'l Conf. Deductive and Object-Oriented Databases, Kyoto,Japan, Dec.4-6, 1989.
[6] W. Chen, M. Kifer, and D.S. Warren, "Hilog: A First-Order Semantics for Higher-Order Logic Programming Constructs," North American Conf. Logic Programming, Oct. 1989.
[7] W. Chen and D.S. Warren, "C-Logic for Complex Objects," Proc. ACM SIGACT-SIGMOD-SIGART Symp. Principles of Database Systems,Philadelphia, pp. 369-378, Mar. 1989.
[8] D. Chimenti, The LDL System Prototype, IEEE Trans. on Knowledge and Data Eng., vol. 2, no. 1, March 1990, pp. 76-90.
[9] M. Dalal and D. Gangopadhyay, "OOLP: A Translation Approach to Object-Oriented Logic Programming," Proc. First Int'l Conf. Deductive and Object-Oriented Databases, pp. 555-568,Kyoto, Japan, Dec.4-6, 1989.
[10] R. Elmasri, G.T.J. Wuu, and V. Kouramajian, "A Temporal Model and Query Language for EER Databases," A. Tansel et al., eds., Temporal Databases: Theory, Design, and Implementation, chapter 9. Benjamin/Cummings, 1993.
[11] R. Elmasri, G.T.J. Wuu, and V. Kouramajian, "The Time Index and the Monotonic B+ Tree," A. Tansel et al., eds., Temporal Databases: Theory, Design and Implementation, chapter 18, pp. 433-456. Benjamin/Cummings, 1993.
[12] C. Evans, "The Macro-Event Calculus: Representing Temporal Granularity," Proc. Pacific Rim Int'l Conf. AI, pp. 363-368,Nagoya, Japan, 1990.
[13] K. Fukunaga and S. Hirose, "An Experience with a Prolog-Based Object-Oriented Language," OOPSLA '86 Proc., pp. 224-231, 1986.
[14] R.V. Indiketiya, "Event Calculus Based Temporal Database Management System," Master's thesis, Imperial College, 1992.
[15] C.S. Jensen, J. Clifford, R. Elmasri, S.K. Gaida, P. Hayes, and S. Jajodia, "A Glossary of Temporal Database Concepts," SIGMOD Record, vol. 23, no. 1, Mar. 1994.
[16] C.S. Jensen and L. Mark, "Differential Query Processing in Transaction-Time Databases," A. Tansel et al., eds., Temporal Databases: Theory, Design, and Implementation, chapter 19. Benjamin/Cummings, 1993.
[17] C.S. Jensen, M.D. Soo, and R.T. Snodgrass, “Unifying Temporal Data Models via a Conceptual Model,” Information Systems, vol. 19, no. 7, pp. 513–547, 1994.
[18] W. Kaefer, N. Ritter, and H. Schoening, "Support for Temporal Data by Complex Objects," Proc. 16th Int'l Conf. Very Large Data Bases,Brisbane, Australia, 1990.
[19] F.N. Kesim and M. Sergot, "On the Evolution of Objects in a Logic Programming Framework," Proc. Int'l Conf. Fifth Generation Computer Systems, vol. 2, June 1992.
[20] F.N. Kesim and M. Sergot, "Versioning of Objects in Deductive Databases," Proc. Third Int'l Conf. Deductive and Object-Oriented Databases, Dec. 1993.
[21] F.N. Kesim and M. Sergot, "Implementing an Object-Oriented Deductive Database Using Temporal Reasoning," Technical report, Bilkent Univ., Dec. 1994.
[22] F.N. Kesim, "Temporal Objects in Deductive Databases," PhD thesis, Dept. of Computing, Imperial College, 1993.
[23] M. Kifer and G. Lausen, “F-Logic: A Higher-Order Language for Reasoning About Objects, Inheritance, and Scheme,” Proc. ACM SIGMOD Conf., 1989.
[24] W. Kim and H.-T. Chou, "Versions of Schema for Object-Oriented Databases," Proc. Int'l Conf. Very Large Data Bases, Aug.-Sept. 1988.
[25] N. Kline, "An Update of the Temporal Database Bibliography," SIGMOD Record, vol. 22, no. 4, Dec. 1993.
[26] R. Kowalsky, “Database Updates in Event Calculus,” J. Logic Programming, vol. 12, pp. 121–146, 1992.
[27] R.A. Kowalski and F. Sadri, "The Situation Calculus and Event Calculus Compared," Proc. Int'l Symp. Logic Programming, pp. 539-553, MIT Press, 1994.
[28] R.A. Kowalski and M. Sergot, "A Logic-Based Calculus of Events," New Generation Computing, vol. 4, pp. 67-95, 1986.
[29] G.M. Kuper,“Logic programming with sets,” Proc. 6th ACM SIGACT-SIGMOD-SIGART Symp. Principles of Database Systems, pp. 11-20, 1987.
[30] D. Maier, "A Logic for Objects," Proc. Workshop Foundations of Deductive Databases and Logic Programming, pp. 6-26,Washington D.C., Aug. 1986.
[31] F.G. McCabe, "Logic and Objects: Language Application and Implementation," PhD thesis, Dept. of Computing, Imperial College, 1988.
[32] J.F. Roddick, "Schema Evolution in Database Systems—An Annotated Bibliography," SIGMOD Rec., vol. 21, no. 4, pp. 35-40. An updated version of the bibliography may be obtained from the author, 1992.
[33] E. Rose and A. Segev, "TOODM—A Temporal Object-Oriented Data Model with Temporal Constraints," Proc. 10th Int'l Conf. on the Entity-Relationship Approach, pp. 205-229, 1991.
[34] A. Segev and A. Shoshani, "A Temporal Data Model Based on Time Sequences," A. Tansel et al., eds., Temporal Databases: Theory, Design and Implementation, chapter 11, pp. 248-270. Benjamin/Cummings, 1993.
[35] M.P. Shanahan, "Representing Continuous Change in the Event Calculus," Proc. ECAI-90,Stockholm, Sweden, 1990.
[36] A.H. Skarra and S.B. Zdonik, "Type Evolution in an Object-Oriented Database," B. Shriver and P. Wegner, eds., Research Directions in Object-Oriented Programming, pp. 393-413, MIT Press, 1987.
[37] R. Snodgrass, "Temporal Object Oriented Databases: A Critical Comparison," Modern Database Systems: The Object Model, Interoperability, and Beyond, ch.. 19, W. Kim, ed., pp. 386-408. Addison-Wesley/ACM Press, 1995.
[38] P. Soper, G. Abeysinghe, and C. Ranaboldo, "A Temporal Model for Clinical and Resource Management in Vascular Surgery," Proc. Int'l Conf. Database and Expert Systems Applications, pp. 549-552,Berlin, 1991.
[39] S.M. Sripada, "Temporal Reasoning in Deductive Databases," PhD thesis, Dept. of Computing, Imperial College, 1991.
[40] J. Su, "Dynamic Constraints and Object Migration," Proc. Int'l Conf. Very Large Data Bases, pp. 283-242, 1991.
[41] A. Tansel et al. Temporal Databases: Theory, Design, and Implementation. Database Systems and Applications Series, Benjamin/Cummings, 1993.
[42] D.S. Warren, "Memoing for Logic Programs," Comm. ACM, vol. 35, no. 3, pp. 94-111, 1992.
[43] G. Wiederhold, S. Jajodia, and W. Litwin, "Integrating Temporal Data in a Heterogeneous Environment," A. Tansel et al., eds., Temporal Databases: Theory, Design, and Implementation, chapter 22. Benjamin/Cummings, 1993.
[44] G.T.J. Wuu and U. Dayal, "A Uniform Model for Temporal and Versioned Object-Oriented Databases," A. Tansel et al., eds., Temporal Databases: Theory, Design, and Implementation, chapter 10. Benjamin/Cummings, 1993.
[45] C. Zaniolo, "Object-Oriented Programming in Prolog," Proc. 1984 Int'l Symp. Logic Programming, Atlantic City, New Jersey, Feb. 1984.
[46] C. Zaniolo, "The Representation and Deductive Retrieval of Complex Objects," Proc. Very Large Databases, pp. 458,Stockholm, Sweden, 1985.
[47] S.B. Zdonik, "Object-Oriented Type Evolution," F. Bancilhon and P. Buneman, eds., Advances in Database Programming Languages, pp. 277-288. ACM Press, 1990.

Index Terms:
Object-oriented databases, object versioning, deductive databases, temporal databases, temporal reasoning, event calculus, logic programming.
Citation:
F. Nihan Kesim, Marek Sergot, "A Logic Programming Framework for Modeling Temporal Objects," IEEE Transactions on Knowledge and Data Engineering, vol. 8, no. 5, pp. 724-741, Oct. 1996, doi:10.1109/69.542026
Usage of this product signifies your acceptance of the Terms of Use.