A Temporal Logic Approach to Object Certification

A brief overview is made of the use of temporal logic formalisms for specifying and verifying concurrent systems in general and information systems in particular. The requirements imposed by object-orientation on such formalisms are examined. A logic is proposed fulfilling those requirements (except concerning non-monotonic features), allowing the uniform treatment of both local and global properties of systems with concurrent, interacting components organized in classes, and supporting specialization. A semantics and a calculus (following an axiomatic, Hilbert style) are presented in detail. The calculus includes rules for the sound inheritance and reflection of theorems between classes. Practical aspects of the usage of such a logic for both specification and verification are considered. To this end a set of metatheorems is provided for expediting the proof of invariants. Finally, the need and availability of automatic theorem proving for systems querying is briefly discussed.

[1]  Amílcar Sernadas,et al.  Algebraic Implementation of Objects over Objects , 1989, REX Workshop.

[2]  Amílcar Sernadas,et al.  A Temporal Logic Framework for a Layered Approach to Systems Specification and Verification , 1987, Temporal Aspects in Information Systems.

[3]  Amílcar Sernadas,et al.  Formal techniques for systems specification and verification , 1991, Inf. Syst..

[4]  Jan van Leeuwen,et al.  Handbook of Theoretical Computer Science, Vol. B: Formal Models and Semantics , 1994 .

[5]  José Luiz Fiadeiro,et al.  Process Semantics of Temporal Logic Specifications , 1991, COMPASS/ADT.

[6]  Bengt Jonsson,et al.  Modular verification of asynchronous networks , 1987, PODC '87.

[7]  Joseph A. Goguen,et al.  Introducing Institutions , 1983, Logic of Programs.

[8]  Greg Nelson,et al.  Simplification by Cooperating Decision Procedures , 1979, TOPL.

[9]  E. Allen Emerson,et al.  Temporal and Modal Logic , 1991, Handbook of Theoretical Computer Science, Volume B: Formal Models and Sematics.

[10]  Hartmut Ehrig,et al.  Fundamentals of Algebraic Specification 1 , 1985, EATCS Monographs on Theoretical Computer Science.

[11]  José Luiz Fiadeiro,et al.  Abstract Object Types: A Temporal Perspective , 1987, Temporal Logic in Specification.

[12]  Peri Loucopoulos,et al.  Conceptual Modeling, Databases, and Case: An Integrated View of Information Systems Development , 1992 .

[13]  Zohar Manna Verification of Sequential Programs: Temporal Axiomatization , 1982 .

[14]  Brent Hailpern,et al.  Modular Verification of Computer Communication Protocols , 1983, IEEE Trans. Commun..

[15]  Zohar Manna,et al.  Completing the Temporal Picture , 1991, Theor. Comput. Sci..

[16]  Tom Maibaum,et al.  DESCRIBING AND STRUCTURING OBJECTS FOR CONCEPTUAL SCHEMA DEVELOPMENT , 1992 .

[17]  Amir Pnueli,et al.  Temporal Logic in Specification , 1987, Lecture Notes in Computer Science.

[18]  Amílcar Sernadas,et al.  Temporal aspects of logical procedure definiton , 1980, Inf. Syst..

[19]  Amílcar Sernadas,et al.  What is an Object, After All? , 1990, DS-4.

[20]  K. Mani Chandy,et al.  Proving safety and liveness of communicating processes with examples , 1982, PODC '82.

[21]  Cristina Sernadas,et al.  The Reification Dimension in Object-oriented Data Base Design , 1992, Specifications of Database Systems.

[22]  Brent Hailpern Verifying Concurrent Processes Using Temporal Logic , 1982, Lecture Notes in Computer Science.

[23]  Jean-Pierre Jouannaud,et al.  Rewrite Systems , 1991, Handbook of Theoretical Computer Science, Volume B: Formal Models and Sematics.

[24]  Amir Pnueli,et al.  Now you may compose temporal logic specifications , 1984, STOC '84.

[25]  José Luiz Fiadeiro,et al.  The Basic Building Blocks of Information Systems , 1989, ISCO.

[26]  Horst Herrlich,et al.  Abstract and concrete categories , 1990 .

[27]  Zohar Manna,et al.  Completing the Temporal Picture , 1989, Theor. Comput. Sci..

[28]  Amir Pnueli,et al.  A really abstract concurrent model and its temporal logic , 1986, POPL '86.

[29]  Van Nguyen,et al.  A model and temporal proof system for networks of processes , 1985, POPL '85.

[30]  Fred Kröger,et al.  Temporal Logic of Programs , 1987, EATCS Monographs on Theoretical Computer Science.

[31]  Manfred Broy,et al.  Theoretical Foundations of Programming Methodology , 1982 .

[32]  Joseph A. Goguen,et al.  Institutions: abstract model theory for specification and programming , 1992, JACM.

[33]  Cristina Sernadas,et al.  Tableaux for Reasoning About Objects , 1993 .

[34]  Ralf Jungclaus Modeling of dynamic object systems - a logic-based approach , 1993, Vieweg advanced studies in computer science.

[35]  Amir Pnueli,et al.  The temporal logic of programs , 1977, 18th Annual Symposium on Foundations of Computer Science (sfcs 1977).

[36]  Colette Rolland,et al.  Object Oriented Approach in Information Systems , 1991 .

[37]  Stefan Brass,et al.  Specication of Object Behaviour with Defaults , 1993 .

[38]  Cristina Sernadas,et al.  Object Speciication Logic , 1995 .

[39]  Grzegorz Rozenberg,et al.  Stepwise Refinement of Distributed Systems Models, Formalisms, Correctness , 1989, Lecture Notes in Computer Science.

[40]  Stefan Brass,et al.  Semantice of Inheritance in Logical Object Specifications , 1991, DOOD.

[41]  Cristina Sernadas,et al.  Object Specification Logic , 1995, J. Log. Comput..

[42]  José Luiz Fiadeiro,et al.  Sometimes "Tomorrow" is "Sometime" - Action Refinement in a Temporal Logic of Objects , 1994, ICTL.

[43]  Zohar Manna,et al.  The Temporal Logic of Reactive and Concurrent Systems , 1991, Springer New York.

[44]  William Kent,et al.  Object-Oriented Databases: Analysis, Design and Construction , 1991 .