Using truth-preserving reductions to improve the clarity of kripke-models
We present an approach by means of which temporal logic models may be replaced by smaller ones without affecting the truth values of any formulas of a fairly standard linear-time temporal logic without a nexttime-operator. The main advantage of the approach is the increased readability of a model, as we can concentrate on some features of the model and hide irrelevant details. Two other advantages are the potential for increased model-checking speed, and the inherent compositionality of the method.
Our method is based on the observation that instead of recording the truth values of atomic propositions in the states of a model, it is enough to record the truth values in the initial state of the model and attach to each transition a label telling how the truth values of the atomic propositions change when that transition is taken. This allows us to handle a temporal logic model as a labelled transition system and apply process-algebraic reduction methods to it. Specifically, it is noted that the process-algebraic equivalence class defined by initial stability, stable failures and divergences, is truth-preserving w.r.t the logic applied in this paper.
KeywordsState Space Model Check Temporal Logic Critical Section Linear Temporal Logic
Unable to display preview. Download preview PDF.
- [AHU74]Aho, A.V. & Hopcroft, J.E. & Ullman, J.D.: The Design and Analysis of Computer Algorithms, Addison-Wesley, 1974Google Scholar
- [BB87]Bolognesi, T. & Brinksma, E.: Introduction to the ISO Specification language LOTOS in Computer Networks and ISDN Systems 14, 1987, pp. 25–59, also in The Formal Description Language LOTOS, North-Holland, 1989, pp. 23–73Google Scholar
- [BCG87]Browne, M. C. & Clarke, E. M. & Grümberg, O.: Characterizing Kripke Structures in Temporal Logic, in Ehrig, H. & Kowalski, R. & Levi, G. & Montanari, U. (eds.): TAPSOFT '87, vol. I, Lecture Notes in Computer Science, vol. 249, Springer-Verlag, Berlin, 1987, pp. 256–270Google Scholar
- [CES85]Clarke, E. M. & Emerson, E. A. & Sistla, A. P.: Automatic Verification of Finite-State Concurrent Systems Using Temporal Logic Specifications, in ACM Transactions on Programming Languages and Systems, vol. 8, no. 2, April 1986, pp. 244–263Google Scholar
- [CLM89]Clarke, E. M. & Long, D. E. & McMillan, K. L.: Compositional Model Checking, in Proceedings of the Fourth IEEE Symposium on Logic in Computer Science, 1989, pp. 353–362Google Scholar
- [CPS90]Cleaveland, R. & Parrow, J. & Steffen, B.: The Concurrency Workbench, in Proceedings of the Workshop on Automatic Verification Methods for Finite State Systems, Lecture Notes in Computer Science 407, Springer-Verlag, Berlin, 1990, pp.24–37Google Scholar
- [EL84]Emerson, E. A. & Lei, C-L.: Modalities for Model Checking: Branching Time Strikes Back, in Conference Record of the Twelfth Annual ACM Symposium on Principles of Programming Languages, 1984, pp. 84–96, also in Science of Computer Programming, vol. 8, no. 3, 1987, pp. 275–306Google Scholar
- [Lam83]Lamport, L.: What Good is Temporal Logic?, in Proceedings of the IFIP 9th World Computer Congress, 1983, pp. 657–668Google Scholar
- [LP85]Lichtenstein. O, & Pnueli, A.: Checking That Finite State Concurrent Programs Satisfy Their Linear Specification, in Conference Record of the Twelfth Annual ACM Symposium on Principles of Programming Languages, 1985, pp. 97–107Google Scholar
- [SW89]Stirling, C. & Walker, D.: CCS, Liveness and Local Model Checking in the Linear Time mu-Calculus, in Proceedings of the Workshop on Automatic Verification Methods for Finite State Systems, Grenoble, June 12–14, 1989Google Scholar
- [VT91]Valmari, A. & Tienari, M.: An Improved Failures Equivalence for Finite-State Systems with a Reduction Algorithm, to appear in Proceedings of the 11th International IFIP WG 6.1 Symposium on Protocol Specification, Testing and Verification, Stockholm, June 17–20, 1991, 16 p.Google Scholar