Formal specification of fault tolerant real time systems using minimal 3-sorted modal logic
Fault tolerance is the property of a system to provide a specified service despite the occurrence of faults, i. e. to prevent a system from failing even in the presence of faults. In this paper, we will contribute to the area of formal specification of fault tolerant real time systems to make fault tolerance and real time formally treatable in a unified approach.
According to the paradigm of separation of concerns we get separation in two directions: In real time systems, a distinction can be made between functional, locational, and temporal properties. To explicitly state such properties in a formal specification we will use a three- sorted modal logic.
In fault tolerant systems, two kinds of behaviour can be distinguished from each other: normal behaviour, which takes place if no fault occurs during system execution, and exceptional behaviour, which takes place just in the case of a fault occurrence. To separate system properties according to that a logical connective C (Combine) will be defined. This connective allows to state predicates about normal behaviour as well as exceptional behaviour and it also provides the possibility to specify the conditions under which the one or the other behaviour will be reached. To ensure that a fault tolerant real time system has precisely the properties stated in its formal specification minimal model interpretation is applied to the logical formulae.
Unable to display preview. Download preview PDF.
- J. van Benthem, Modal and Classical Logic, Bibliopolis, Naples, 1985Google Scholar
- J. van Benthem, Semantic Parallels in Natural Language and Computation, in: Logic Colloquium, Granada, M. Garrido (ed.), 1988Google Scholar
- F. Cristian, A Rigorous Approach to Fault-tolerant Programming, in: IEEE Transactions on Software Engineering, Vol. SE-11, No. 1, January 1985Google Scholar
- F. Cristian, Exception Handling, in: “Dependability of Resilient Computers”, T. Anderson (ed.), Blackwell Scientific Publications, 1989Google Scholar
- D. Gabbay, Intuitionistic Basis for Non-Monotonic Logic, in: Lecture Notes in Computer Science 138, “Proceedings of the 6th Conference on Automated Deduction”, D. W. Loveland (ed.), pp. 260–273, 1982Google Scholar
- C. A. R. Hoare, An Axiomatic Basis for Computer Programming, in: Communica-tions of the ACM, Vol. 12, pp. 576–580, 1969Google Scholar
- J. Hooman, Specification and Compositional Verification of Real-Time Systems, Ph.D. Thesis, Eindhoven University of Technology, 1991Google Scholar
- R. Koymans, Specifying Message Passing and Time-Critical Systems with Temporal Logic, Ph.D. Thesis, Eindhoven University of Technology, 1989Google Scholar
- Lamport, Specifying Concurrent Program Modules, ACMGoogle Scholar
- K. G. Larsen, Proof Systems for Hennessy-Milner Logic with Recursion, Aalborg University Center, Institute for Electronic Systems, Department of Mathematics and Computer Science, Denmark, April 1987Google Scholar
- Z. Manna, A. Pnueli, The Anchored Version of the Temporal Framework, in: Lecture Notes in Computer Science 354, “Linear Time, Branching Time and Partial Order in Logics and Models for Concurrency”, de Bakker, de Roever, Rozenberg (eds.), Springer, 1989Google Scholar
- A. Pnueli, E. Harel, Applications of Temporal Logic to the Specification of Real Time Systems, in: Lecture Notes in Computer Science 331, “Proceedings of a Symposium on Formal Techniques in Real-Time and Fault-Tolerant Systems”, M. Joseph (ed.), Springer, 1989Google Scholar
- B. Randell, P. A. Lee, P. C. Treleaven, Reliability Issues in Computing System Design, in: ACM Computing Surveys, Vol. 10, No. 2, June 1978Google Scholar
- N. Rescher, A. Urquhart, Temporal Logic, Springer, 1971Google Scholar
- H. Schepers, Terminology and Paradigms for Fault-tolerance, Department of Mathematics and Computing Science, Eindhoven University of Technology, Computing Science Notes 91/08, 1991Google Scholar
- M. J. Wieczorek, J. Vytopil, Specification and Verification of Distributed Real-Time Systems, in: “Proceedings of the Second International Conference on Reliability and Robustness of Engineering Software II”, Brebbia/Ferrante (eds.), Wessex Institute of Technology, pp. 99–113, 1991Google Scholar
- G. Winskel, An introduction to event structures, in: Lecture Notes in Computer Science 354, “Linear Time, Branching Time and Partial Order in Logics and Models for Concurrency”, de Bakker, de Roever, Rozenberg (eds.), Springer, 1989Google Scholar