@string{brics = "{BRICS}"} @string{daimi = "Department of Computer Science, University of Aarhus"} @string{iesd = "Department of Mathematics and Computer Science, Aalborg University"} @string{rs = "Research Series"} @string{ns = "Notes Series"} @string{ls = "Lecture Series"} @string{ds = "Dissertation Series"} @TechReport{BRICS-LS-97-1, author = "Jan Chomicki and David Toman", title = "Temporal Logic in Information Systems", institution = brics, year = 1997, type = ls, number = "LS-97-1", address = daimi, month = nov, note = "viii+42~pp. Full version to appear in: Logics for Database and Information Systems, Chomicki and Saake (eds.), Kluwer Academic Publishers, 1998.", abstract = "Temporal logic is obtained by adding temporal connectives to a logic language. Explicit references to time are hidden inside the temporal connectives. Different variants of temporal logic use different sets of such connectives. In this chapter, we survey the fundamental varieties of temporal logic and describe their applications in information systems.\bibpar Several features of temporal logic make it especially attractive as a query and integrity constraint language for temporal databases. First, because the references to time are hidden, queries and integrity constraints are formulated in an abstract, representation-independent way. Second, temporal logic is amenable to efficient implementation. Temporal logic queries can be translated to an algebraic language. Temporal logic constraints can be efficiently enforced using auxiliary stored information. More general languages, with explicit references to time, do not share these properties.\bibpar Recent research has proposed various implementation techniques to make temporal logic practically useful in database applications. Also, the relationships between different varieties of temporal logic and between temporal logic and other temporal languages have been clarified. We report on these developments and outline some of the remaining open research problems. \subsubsection*{Contents} \begin{itemize} \item[1] Introduction \item[2] Temporal Databases \begin{itemize} \item[2.1] Abstract Temporal Databases \item[2.2] Relational Database Histories \end{itemize} \item[3] Temporal Queries \begin{itemize} \item[3.1] Abstract Temporal Query Languages \item[3.2] Expressive Power \item[3.3] Space-efficient Encoding of Temporal Databases \item[3.4] Concrete Temporal Query Languages \item[3.5] Evaluation of Abstract Query Languages using Compilation \item[3.6] SQL and Derived Temporal Query Languages \end{itemize} \item[4] Temporal Integrity Constraints \begin{itemize} \item[4.1] Notions of constraint satisfaction \item[4.2] Temporal Integrity Maintenance \item[4.3] Temporal Constraint Checking \end{itemize} \item[5] Multidimensional Time \begin{itemize} \item[5.1] Why Multiple Temporal Dimensions? \item[5.2] Abstract Query Languages for Multi-dimensional Time \item[5.3] Encoding of Multi-dimensional Temporal Databases \end{itemize} \item[6] Beyond First-order Temporal Logic \item[7] Conclusion \end{itemize}", linkhtmlabs = "", linkdvi = "", linkps = "", linkpdf = "" }