Abstract
Model checking tools face a combinatorial blow up of the state-space (commonly known as the state explosion problem) that must be addressed to formally verify concurrent systems. We propose an approach combining abstraction techniques and heuristic search to overcome the problem above. In particular, heuristic search can avoid the bottleneck of the exhaustive exploration of the global state graph of a system, while retaining the advantages of abstraction techniques.
Similar content being viewed by others
References
Alur, R., Wang, B.-Y.: “Next” heuristic for on-the-fly model checking. In: Proceedings of the 10th International Conference on Concurrency Theory (CONCUR’99). Lecture Notes in Computer Science, vol. 1664, pp. 98–113 (1999)
Anastasi G., Bartoli A., De Francesco N.: Efficient verification of a multicast protocol for mobile computing. Comput. J. 44(1), 21–30 (2001)
Anastasi, G., Spadoni, F., Bartoli, A.: Group multicast in distributed mobile systems with unreliable wireless network. In: Proceedings of the 18th IEEE Symposium on Reliable Distributed Systems (SRDS’99), IEEE Computer Society, vol. 14, pp. 14–23 (1999)
Arnold, A., Begay, D., Crubille, P.: Construction and Analysis of Transition Systems with MEC (Chapter 6). World Scientific, Singapore (1994)
Barbuti, R., De Francesco, N., Santone, A., Vaglini, G.: Selective mu-calculus: new modal operators for proving properties on reduced transition systems. In: Proceedings of FORTE X/PSTV XVII’97, pp. 519–534. Chapman & Hall, London (1997)
Barbuti R., De Francesco N., Santone A., Vaglini G.: Selective mu-calculus and formula-based equivalence of transition systems. J. Comput. Syst. Sci. 59(3), 537–556 (1999)
Bertoli, P., Cimatti, A., Slaney, J., Thiebaux, S.: Solving power supply restoration problems with planning via symbolic model-checking. In: Proceedings of the Sixth International Conference on AI Planning and Scheduling (AIPS’02), AAAI Press, pp. 23–29 (2002)
Bloem, R., Ravi, K., Somenzi, F.: Efficient decision procedures for model checking of linear time logic properties. In: Proceedings of the 11th International Conference on Computer-Aided Verification (CAV’99). Lecture Notes in Computer Science, vol. 1633, pp. 222–235 (1999)
Bosnacki D., Leue S., Lluch-Lafuente A.: Partial-order reduction for general state exploring algorithms. Int. J. Softw. Tools Technol. Transf. 11(1), 39–51 (2009)
Bryant R.E.: Graph-based algorithms for Boolean function manipulation. IEEE Trans. Comput. C-35(8), 677–691 (1986)
Clarke E.M., Emerson E.A., Sistla A.P.: Automatic verification of finite-state concurrent systems using temporal logic verification. ACM Trans. Program. Lang. Syst. 8, 244–263 (1986)
Clarke E.M., Grumberg O., Long D.E.: Model checking and abstraction. ACM Trans. Program. Lang. Syst. 16(5), 1512–1542 (1994)
Clarke E.M., Grumberg O., Peled D.: Model Checking. MIT Press, Cambridge (2000)
Cleaveland, R., Sims, S.: The NCSU concurrency workbench. In: Proceedings of the Eighth International Conference on Computer-Aided Verification (CAV’96). Lecture Notes in Computer Science, vol. 1102, pp. 394–397 (1996)
Edelkamp, S., Lluch-Lafuente, A., Leue, S.: Directed explicit model checking with HSF-SPIN. In: Proceedings of the 8th International SPIN Workshop on Model Checking Software. Lecture Notes in Computer Science, vol. 2057, pp. 57–79 (2001)
Edelkamp, S., Lluch-Lafuente, A., Leue, S.: Trail-directed model checking. In: Proceedings of Computer Aided Verification (CAV) Workshops. Electronic Notes in Theoretical Computer Science, vol. 55 (2001)
Edelkamp S., Lluch-Lafuente A., Leue S.: Directed explicit-state model checking in the validation of communication protocols. Int. J. Softw. Tools Technol. Transf. 5, 246–267 (2004)
Edelkamp, S., Reffel, F.: OBDDs in heuristic search. In: Proceedings of the 22nd Annual German Conference on Artificial Intelligence (KI’98). Lecture Notes in Computer Science, vol. 1504, pp. 81–92 (1998)
Edelkamp, S.: Symbolic pattern databases in heuristic search planning. In: Proceedings of the Sixth International Conference on AI Planning and Scheduling (AIPS’02), AAAI Press (2002)
Edelkamp, S., Lluch-Lafuente, A.: Abstraction databases in theory and model checking practice. In: ICAPS Workshop on Connecting Planning (2004)
Feng, Z., Hansen, E.: Symbolic heuristic search for factored Markov decision processes. In: Proceedings of the Eighteenth National Conference on Artificial Intelligence (AAAI’02), AAAI Press, pp. 455–460 (2002)
Godefroid, P.: Partial-Order Methods for the Verification of Concurrent Systems. LNCS, vol. 1032 (1996)
Gradara S., Santone A., Villani M.L.: DELFIN+: an efficient deadlock detection tool for CCS processes. J. Comput. Syst. Sci. 72(8), 1397–1412 (2006)
Gradara, S., Santone, A., Villani, M.L.: Formal verification of concurrent systems via directed model checking. In: Proceedings of the 6th International Workshop on Automated Verification of Critical Systems (AVoCS 2006). Electronic Notes in Theoretical Computer Science, vol. 185, pp. 93–105 (2007)
Graf, S., Saidi, H.: Construction of abstract state graphs with PVS. In: Proceedings of Computer Aided Verification (CAV), 1997. Lecture Notes in Computer Science, vol. 1254, pp. 72–83 (1997)
Groce, A., Visser, W.: Heuristic model checking for Java programs. In: Proceedings of the 9th International SPIN Workshop (SPIN’02). Lecture Notes in Computer Science, vol. 2318, pp. 242–245 (2002)
Groote, J.F., van de Pol, J.: A bounded retransmission protocol for large data packets. In: Proceedings of Algebraic Methodology and Software Technology. Lecture Notes in Computer Science, vol. 1101, pp. 536–550. Springer (1996)
Havelund, K., Shankar, N.: Experiments in theorem proving and model checking for protocol verification. In: Industrial Benefit and Advances in Formal Methods (FME’96), pp. 662–681. Springer, Berlin (1996)
Holzmann G.J.: The SPIN Model Checker: Primer and Reference Manual. Addison-Wesley, Reading (2003)
Jard, C., Jéron, T.: Bounded-memory algorithms for verification on-the-fly. In: Proceedings of the Third International Conference on Computer-Aided Verification (CAV’91). Lecture Notes in Computer Science, vol. 575, pp. 192–201 (1991)
Jensen, R.M., Bryant, R.E., Veloso, M.M.: SetA*: an efficient bdd-based heuristic search algorithm. In: Proceedings of the Eighteenth National Conference on Artificial Intelligence and Fourteenth Conference on Innovative Applications of Artificial Intelligence (AAAI/IAAI’02), AAAI Press, pp. 668–673 (2002)
Kupferschmid, S., Wehrle, M.: Abstractions and pattern databases: the quest for succinctness and accuracy. In: Proceedings of Tools and Algorithms for the Construction and Analysis of Systems (TACAS 2011). Lecture Notes in Computer Science, vol. 6605, pp. 276–290 (2011)
Kurshan R.P.: Computer-Aided Verification of Coordinating Processes: The Automata-Theoretic Approach. Princeton University Press, Princeton (1995)
Lin, F.J., Chu, P.M., Liu, M.T.: Protocol verification using reachability analysis: the state space explosion problem and relief strategies. ACM, pp. 126–135 (1988)
Lluch-Lafuente, A.: Symmetry reduction and heuristic search for error detection in model checking. In: Proceedings of Workshop of Model Checking and Artificial Intelligence (MoChArt-03) (2003)
McMillan K.: Symbolic Model Checking. Kluwer, Boston (1993)
Milner R.: Communication and Concurrency. Prentice-Hall, Englewood Cliffs (1989)
Moller, M.O., Alur, R.: Heuristics for hierarchical partitioning with application to model checking. In: Proceedings of the 11th IFIP WG 10.5, Advanced Research Working Conference on Correct Hardware Design and Verification Methods (CHARME’01). Lecture Notes in Computer Science, vol. 2144, pp. 71–85 (2001)
Parrow, J.: An introduction to the pi-calculus. In: Bergstra, J.A., Ponse, A., Smolka, S.A. (eds.) Handbook of Process Algebra, pp. 479–543. Elsevier, Amsterdam (2001)
Pearl J.: Heuristics: Intelligent Search Strategies for Computer Problem Solving. Addison-Wesley, Reading (1984)
Peled, D.: All from one, one for all, on model-checking using representatives. In: Proceedings of the Fifth International Conference on Computer-Aided Verification (CAV’93). Lecture Notes in Computer Science, vol. 679, pp. 409–423 (1993)
Santone A.: Heuristic search + local model checking in selective mu-calculus. IEEE Trans. Softw. Eng. 29(6), 510–523 (2003)
Seppi K.S., Jones M., Lamborn P.: Guided Model Checking with a Bayesian Meta-heuristic. Fundam. Inform. 70(1–2), 111–126 (2006)
Stirling, C.: An Introduction to Modal and Temporal Logics for CCS. In: Concurrency: Theory, Language, and Architecture. Lecture Notes in Computer Science, vol. 391 (1989)
Stirling C., Walker D.: Local model checking in the modal mu-calculus. Theor. Comput. Sci. 89, 161–177 (1991)
Valmari, A.: A stubborn attack on state explosion. In: Proceedings of the Second International Conference on Computer-Aided Verification (CAV’90). Lecture Notes in Computer Science, vol. 531, pp. 156–165 (1990)
Visser, W., Havelund, K., Brat, G., Park, S.: Model checking programs. In: IEEE International Conference on Automated Software Engineering (ASE) (2000)
Wehrle, M., Kupferschmid, S.: Context-enhanced directed model checking. In: Proceedings of 17th International Workshop (SPIN10). Lecture Notes in Computer Science, vol. 6349, pp. 88–105 (2010)
Author information
Authors and Affiliations
Corresponding author
Rights and permissions
About this article
Cite this article
Santone, A., Vaglini, G. Abstract reduction in directed model checking CCS processes. Acta Informatica 49, 313–341 (2012). https://doi.org/10.1007/s00236-012-0161-3
Received:
Accepted:
Published:
Issue Date:
DOI: https://doi.org/10.1007/s00236-012-0161-3