Advertisement

CAAL: Concurrency Workbench, Aalborg Edition

  • Jesper R. Andersen
  • Nicklas Andersen
  • Søren Enevoldsen
  • Mathias M. Hansen
  • Kim G. Larsen
  • Simon R. Olesen
  • Jirí SrbaEmail author
  • Jacob K. Wortmann
Conference paper
Part of the Lecture Notes in Computer Science book series (LNCS, volume 9399)

Abstract

We present the first official release of Caal, a web-based tool for modelling and verification of concurrent processes. The tool is primarily designed for educational purposes and it supports the classical process algebra CCS together with its timed extension TCCS. It allows to compare processes with respect to a range of strong/weak and timed/untimed equivalences and preorders (bisimulation, simulation and traces) and supports model checking of CCS/TCCS processes against recursively defined formulae of Hennessy-Milner logic. The tool offers a graphical visualizer for displaying labelled transition systems, including their minimization up to strong/weak bisimulation, and process behaviour can be examined by playing (bi)simulation and model checking games or via the generation of distinguishing formulae for non-equivalent processes. We describe the modelling and analysis features of Caal, discuss the underlying verification algorithms and show a typical example of a use in the classroom environment.

Keywords

Model Check Dependency Graph Label Transition System Process Algebra Game Module 
These keywords were added by machine and not by the authors. This process is experimental and the keywords may be updated as the learning algorithm improves.

References

  1. 1.
    Aceto, L., Ingolfsdottir, A., Larsen, K.G., Srba, J.: Reactive Systems: Modelling. Cambridge University Press, Specification and Verification (2007)CrossRefzbMATHGoogle Scholar
  2. 2.
    Bartlett, K.A., Scantlebury, R.A., Wilkinson, P.T.: A note on reliable full-duplex transmission over half-duplex links. Commun. ACM 12(5), 260–261 (1969)CrossRefGoogle Scholar
  3. 3.
    Birgisson, A.: CCS model checker in Haskell (2009). https://github.com/arnar/ccs-searching. Accessed on 03 August 2015
  4. 4.
    Calzolai, F., De Nicola, R., Loreti, M., Tiezzi, F.: TAPAs: a tool for the analysis of process algebras. Trans. Petri Nets Other Models Concurr. 5100, 54–70 (2008)MathSciNetCrossRefGoogle Scholar
  5. 5.
    Cleaveland, R., Parrow, J., Steffen, B.: The concurrency workbench: a semantics-based tool for the verification of concurrent systems. ACM Trans. Program. Lang. Syst. 15(1), 36–72 (1993)CrossRefGoogle Scholar
  6. 6.
    Cleaveland, R., Sims, S.: The NCSU concurrency workbench. In: Alur, R., Henzinger, T.A. (eds.) CAV 1996. LNCS, vol. 1102, pp. 394–397. Springer, Heidelberg (1996) CrossRefGoogle Scholar
  7. 7.
    Freiberger, F., Biewer, S., Held, P.: PseuCo (2014). http://pseuco.com. Accessed on 03 August 2015
  8. 8.
    Garavel, H., Lang, F., Mateescu, R., Serwe, W.: CADP 2011: a toolbox for the construction and analysis of distributed processes. Int. J. Softw. Tools Technol. Transfer 15(2), 89–107 (2013)CrossRefzbMATHGoogle Scholar
  9. 9.
    Gibson-Robinson, T., Armstrong, P., Boulgakov, A., Roscoe, A.W.: FDR3 — a modern refinement checker for CSP. In: Ábrahám, E., Havelund, K. (eds.) TACAS 2014 (ETAPS). LNCS, vol. 8413, pp. 187–201. Springer, Heidelberg (2014) CrossRefGoogle Scholar
  10. 10.
    Groote, J.F., Mousavi, M.R.: Modeling and Analysis of Communicating Systems. The MIT Press, Cambridge (2014)zbMATHGoogle Scholar
  11. 11.
    Hennessy, M., Milner, R.: Algebraic laws for nondeterminism and concurrency. J. Assoc. Comput. Mach. 32(1), 137–161 (1985)MathSciNetCrossRefzbMATHGoogle Scholar
  12. 12.
    Kozen, D.: Results on the propositional \(\mu \)-calculus. Theoretical Computer Science 27, 333–354 (1983)MathSciNetCrossRefzbMATHGoogle Scholar
  13. 13.
    Liu, X., Smolka, S.A.: Simple linear-time algorithms for minimal fixed points. In: Larsen, K.G., Skyum, S., Winskel, G. (eds.) ICALP 1998. LNCS, vol. 1443, p. 53. Springer, Heidelberg (1998) CrossRefGoogle Scholar
  14. 14.
    Milner, R.: A Calculus of Communicating Systems. LNCS, vol. 92. Springer, Berlin (1980) zbMATHGoogle Scholar
  15. 15.
    Mosegaard, M., Brabrand, C.: The bisimulation game (2006). http://www.brics.dk/bisim/. Accessed on 03 August 2015
  16. 16.
    Verdejo, A., Marti-Oliet, N.: Executing and verifying CCS in Maude. Technical report, Dpto. Sistemas Informaticos y Programacion, Universidad Complutense de (2002). http://maude.cs.uiuc.edu/maude1/casestudies/ccs/

Copyright information

© Springer International Publishing Switzerland 2015

Authors and Affiliations

  • Jesper R. Andersen
    • 1
  • Nicklas Andersen
    • 1
  • Søren Enevoldsen
    • 1
  • Mathias M. Hansen
    • 1
  • Kim G. Larsen
    • 1
  • Simon R. Olesen
    • 1
  • Jirí Srba
    • 1
    Email author
  • Jacob K. Wortmann
    • 1
  1. 1.Department of Computer ScienceAalborg UniversityAalborg ØstDenmark

Personalised recommendations