Skip to main content
Log in

Reduced Models for Efficient CCS Verification

  • Published:
Formal Methods in System Design Aims and scope Submit manuscript

Abstract

Verification of a concurrent system can be accomplished by model checking the properties on a structure representing the system; this structure is, in general, a transition system which contains a prohibitive number of states. In this paper, we apply a method to reduce the state explosion problem by pointing out the events of the system to be ignored on the basis of the property to be verified. We evaluate the method by means of a real application used as a case study: the system is specified by a CCS program, then the program is reduced by means of syntactic rules; afterwards, the corresponding transition system is built by means of a non-standard operational semantics, which performs further reductions during the construction. Prototype tools perform both kinds of reductions; finally the required properties are checked by means of the model checkers of the CWB-NC.

This is a preview of subscription content, log in via an institution to check access.

Access this article

Price excludes VAT (USA)
Tax calculation will be finalised during checkout.

Instant access to the full article PDF.

Similar content being viewed by others

References

  1. A. Aziz, T.R. Shiple, V. Singhal, and A.L. Sangiovanni-Vincentelli, “Formula-dependent equivalence for compositional CTL model checking,” in Proceedings of Workshop on Computer Aided Verification (CAV’94), Lecture Notes in Computer Science 818, 1994, pp. 324–337.

  2. R. Barbuti, N. De Francesco, A. Santone, and G. Vaglini, “Selective mu-calculus: New modal operators for proving properties on reduced transition systems,” in Proceedings of FORTE X/PSTV XVII ‘97. Chapman & Hall, 1997, pp. 519–534.

  3. R. Barbuti, N. De Francesco, A. Santone, and G. Vaglini, “Loreto: A tool for reducing state explosion in verification of LOTOS programs,” Software-Practice and Experience, Vol. 29, No. 12, pp. 1123–1147, 1999.

    Article  Google Scholar 

  4. R. Barbuti, N. De Francesco, A. Santone, and G. Vaglini. “Selective mu-calculus and formula-based equivalence of transition systems,” Journal of Computer and System Sciences, Vol. 59, No. 3, pp. 537–556, 1999.

    Article  Google Scholar 

  5. S. Bensalem, A. Bouajjani, C. Loiseaux, and J. Sifakis, “Property Preserving Simulations,” in Proceedings of Workshop on Computer Aided Verification (CAV’92), Lecture Notes in Computer Science 663, 1992, pp. 260–273.

  6. A. Bouajjani, J.C. Fernandez, S. Graf, C. Rodriguez, and J. Sifakis, “Safety for branching time semantics”, in Proceedings of the 18th International Colloquium on Automata, Languages and Programming. Lecture Notes in Computer Science 510, 1991, pp. 76–92.

  7. A. Bouajjani, J.C. Fernandez, N. Halbwachs, P. Raymond, and C. Ratel, “Minimal state graph generation,” Science of Computer Programming, Vol. 18, pp. 247–271, 1992.

    Article  Google Scholar 

  8. T. Bolognesi and E. Brinksma, “Introduction to ISO specification language LOTOS,” Comp. Networks and ISDN Systems, Vol. 14, pp. 25–59, 1987.

    Article  Google Scholar 

  9. J. Bradfield and C. Stirling, “Verifying temporal properties of processes” in Proceedings of International Conference on Concurrency Theory (CONCUR’90), Lecture Notes in Computer Science 458, 1990, pp. 115–125.

  10. G. Bruns, “A case study in safety-critical design,” in Proceedings of Workshop on Computer Aided Verification (CAV’92), Lecture Notes in Computer Science 663, 1992, pp. 220–233.

  11. G. Bruns, “A practical technique for process abstraction” in Proceedings of International Conference on Concurrency Theory (CONCUR’93), Lecture Notes in Computer Science 714, 1993, pp. 37–49.

  12. E.M. Clarke, E.A. Emerson, and A.P. Sistla, “Automatic verification of finite-state concurrent systems using temporal logic verification,” ACM Transactions on Programming Languages and Systems, Vol. 8, pp. 244–263, 1986.

    Article  Google Scholar 

  13. E.M. Clarke, O. Grumberg, and D.E. Long. “Model checking and abstraction,” ACM Transactions on Programming Languages and Systems, Vol. 16, pp. 343–354, 1992.

  14. R. Cleveland, “Tableau-based model checking in the propositional Mu-calculus,” Acta Informatica, Vol. 27, pp. 725–747, 1990.

    Article  Google Scholar 

  15. R. Cleaveland and S. Sims. “The NCSU concurrency workbench,” in Proceedings of Workshop on Computer Aided Verification (CAV’96), Lecture Notes in Computer Science 1102, 1996, pp. 394–397.

  16. CWB-NC User’s Manual: http://www.cs.sunysb.edu/cwb.

  17. P. Cousot and R. Cousot, “Inductive definitions, semantics and abstract interpretations,” ACM Symp. Principles of Programming Languages, pp. 83–94 1992.

  18. D. Dams, O. Grumberg, and R. Gerth. “Abstract interpretation of reactive systems,” ACM Transaction on Programming Languages and Systems, Vol. 19, pp. 253–291, 1997.

  19. E.A. Emerson, C.S. Jutla, and A.P. Sistla, “On model-checking for fragments of mu-calculus,” in Proceedings of the Fifth International Conference on Computer-Aided Verification (CAV’93), Lecture Notes in Computer Science 679, 1993, pp. 385–396.

  20. J.C. Fernandez, A. Kerbrat, and L. Mounier. “Symbolic equivalence checking,” in Proceedings of the 5th International Conference on Computer-Aided Verification, Lecture Notes in Computer Science, 697, 1993, pp. 85–96.

  21. J.C. Fernandez and L. Mounier, “Verifying bisimulation on the fly”, in Third International Conference on Formal Description Techniques, FORTE’90, Madrid, November 1990.

  22. J.C. Fernandez et al., “CADP a protocol validation and verification toolbox,” in Proceedings of the Third International Conference on Computer-Aided Verification, Lecture Notes in Computer Science 1102, 1996, pp. 437–440.

  23. R.J van Glabbeek, “The linear time-branching time spectrum,” in Proceedings of International Conference on Concurrency Theory (CONCUR’90), Lecture Notes in Computer Science 458, 1990, pp. 278–297.

  24. P. Godefroid, “Partial-order methods for the verification of concurrent systems,” LNCS 1032, 1996.

  25. J.F. Groote and J.C. van de Pol, “A bounded retransmission protocol for large data packets,” Technical Report Logic Group Preprint Series 100, Utrecht University, October 1993.

  26. K. Havelund and N. Shankar, “Experiments in theorem proving and model checking for protocol verification,” in Proceedings of FME ‘96.

  27. L. Helmink, M.P.A. Sellink, and F.W. Vaandrager, “Proof-checking a data link protocol,” in Proceedings of 1st International Workshop “Types for Proofs and Programs,” Lecture Notes in Computer Science 806, 1994, pp. 127–165.

  28. C. Jard and T. Jéron, “Bounded-memory algorithms for verification on-the-fly”, in Proceedings of the Third International Conference on Computer-Aided Verification, Lecture Notes in Computer Science 575, 1991, pp. 192–201.

  29. D. Kozen, “Results on the propositional mu-calculus,” Theoretical Computer Science, Vol. 27, pp. 333–354, 1983.

    Article  Google Scholar 

  30. Y.S. Kwong, “On reduction of asynchronous systems,” Theoretical Computer Science, Vol. 5, pp. 25–50, 1977.

    Article  Google Scholar 

  31. R. Mateescu, “Formal description and analysis of a bounded retransmission protocol,” in Proceedings of the COST 247 International Workshop on Applied Formal Methods in System Design, Slovenia, June 1996. Also available as INRIA Research Report RR-2965. Available on-line at: ftp://ftp.inrialpes.fr/pub/vasy/publications/cadp/Mateescu-96.ps.Z

  32. R. Milner, “Communication and concurrency,” Prentice-Hall, 1989.

  33. The NCSU Concurrency Workbench home page. URL http://www4.ncsu.edu/eos/users/r/rance/WWW/ncsu-cw.html.

  34. D. Peled, “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 679, 1993, pp. 409–423.

  35. C. Stirling, “An introduction to modal and temporal logics for CCS,” in Concurrency: Theory, Language, and Architecture, Lecture Notes in Computer Science 391, 1989.

  36. C. Stirling and D. Walker, “Local model checking in the modal mu-calculus,” Theoretical Computer Science, Vol. 89, pp. 161–177, 1991.

    Article  Google Scholar 

  37. A. Valmari, “A stubborn attack on state explosion,” in Proceedings of International Conference on Computer-Aided Verification (CAV’90), Lecture Notes in Computer Science 531, 1990, pp. 156–165.

  38. D. Vergamini, “Auto/mauto user manual,” INRIA Report, 1992.

Download references

Author information

Authors and Affiliations

Authors

Corresponding author

Correspondence to Roberto Barbuti.

Rights and permissions

Reprints and permissions

About this article

Cite this article

Barbuti, R., De Francesco, N., Santone, A. et al. Reduced Models for Efficient CCS Verification. Form Method Syst Des 26, 319–350 (2005). https://doi.org/10.1007/s10703-005-1634-6

Download citation

  • Issue Date:

  • DOI: https://doi.org/10.1007/s10703-005-1634-6

Keywords

Navigation