Compositionality for Improving Model Checking
Model checking is an automatic technique for verifying finite state systems: in this approach, properties are expressed in a temporal logic and systems are modelled as transition systems. A main problem of model checking is state explosion: very complex systems are often represented by transition systems with a prohibitive number of states. The primary cause of this problem is the parallel composition of interacting processes. Many techniques have been proposed to attack this problem, among them compositional techniques. These techniques reduce state explosion exploiting the natural decomposition of complex systems into processes. In this paper we present a formula-based compositional rule that allows us to deduce a property of a parallel composition of processes by checking it only on a component process.
Keywordsmodel checking compositionality temporal logic state explosion.
- H.R. Andersen, G. Winskel. Compositional Checking of Satisfaction. Formal Methods in System Design, 1(4), 1992.Google Scholar
- R. Barbuti, N. De Francesco, A. Santone, G. Vaglini. Selective Mu-Calculus: New Modal Operators for Proving Properties on Reduced Transition Systems. In Proceedings of FORTE X/PSTV XVII ‘87. Chapman & Hall, 1997. 519–534Google Scholar
- R. Barbuti, N. De Francesco, A. Santone, G. Vaglini. Selective Mu-Calculus and Formula-Based Abstractions of Transition Systems. Journal of Computer and System Sciences, 59(3), 1999. 537–556.Google Scholar
- T. Bolognesi, E. Brinksma. Introduction to ISO Specification Language LOTOS. Comp. Networks and ISDN Systems, 14, 1987. 2559.Google Scholar
- J. Burch, E. Clarke, K. McMillan, D. Dill, L. Hwang. Symbolic Model Checking: 1020 States and Beyond. In Proceedings of Fifth Annual IEEE Symposium on Logic in Computer Science,1990. 428–439.Google Scholar
- E.M. Clarke, O.Grumberg, D.E. Long. Model Checking and Abstraction. ACM Transactions on Programming Languages and Systems, 16(5), 1994. 1512–1542.Google Scholar
- E.M. Clarke, D.E. Long, K.L. McMillan. Compositional Model Checking. In Proceedings of the Fourth Annual IEEE Symposium on Logic in Computer Science, 1989. 353–362.Google Scholar
- J.C. Fernandez, L. Mounier. Verifying Bisimulation on the fly. In Proceedings of the Third International Conference on Formal Description Techniques, FORTE’90, 1990.Google Scholar
- E. Madelaine, D. Vergamini. Finiteness Conditions and Structural Construction of Automata for all Process Algebras. In Proceedings of 2nd Workshop on Computer-Aided Verification. DIMACS Technical Report 90–31, 1990.Google Scholar
- R. Milner. Communication and Concurrency. Prentice-Hall, 1989.Google Scholar
- R. Paige, R. Tarjan. Three Partition Refinement Algorithms. SIAM Journal of Computing, 16(6), 1987. 973–989.Google Scholar
- A. Pnueli. In Transition for Global to Modular Temporal Reasoning about Programs Logics and Models of Concurrent Systems. NATO ASI Series. Series F, Computer and System Sciences, 13. Springer-Verlag, 1984.Google Scholar
- C. Stirling. An Introduction to Modal and Temporal Logics for CCS. In Concurrency: Theory, Language, and Architecture, Lecture Notes in Computer Science 391, 1989.Google Scholar