A logic programming framework for modeling temporal objects

Kesim F. N., Sergot M.

IEEE TRANSACTIONS ON KNOWLEDGE AND DATA ENGINEERING, vol.8, no.5, pp.724-741, 1996 (SCI-Expanded) identifier identifier

  • Publication Type: Article / Article
  • Volume: 8 Issue: 5
  • Publication Date: 1996
  • Doi Number: 10.1109/69.542026
  • Journal Indexes: Science Citation Index Expanded (SCI-EXPANDED), Scopus
  • Page Numbers: pp.724-741
  • Keywords: object-oriented databases, object versioning, deductive databases, temporal databases, temporal reasoning, event calculus, logic programming, EVENT CALCULUS
  • Middle East Technical University Affiliated: No


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, acid 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.