International Colloquium on Theoretical Aspects of Computing

Theoretical Aspects of Computing - ICTAC 2015 pp 573-582 | Cite as

CAAL: Concurrency Workbench, Aalborg Edition

  • Jesper R. Andersen
  • Nicklas Andersen
  • Søren Enevoldsen
  • Mathias M. Hansen
  • Kim G. Larsen
  • Simon R. Olesen
  • Jirí Srba
  • 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.

References

  1. 1.
    Aceto, L., Ingolfsdottir, A., Larsen, K.G., Srba, J.: Reactive Systems: Modelling. Cambridge University Press, Specification and Verification (2007)CrossRefMATHGoogle 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)CrossRefMATHGoogle 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)MATHGoogle Scholar
  11. 11.
    Hennessy, M., Milner, R.: Algebraic laws for nondeterminism and concurrency. J. Assoc. Comput. Mach. 32(1), 137–161 (1985)MathSciNetCrossRefMATHGoogle Scholar
  12. 12.
    Kozen, D.: Results on the propositional \(\mu \)-calculus. Theoretical Computer Science 27, 333–354 (1983)MathSciNetCrossRefMATHGoogle 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) MATHGoogle 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
  • Jacob K. Wortmann
    • 1
  1. 1.Department of Computer ScienceAalborg UniversityAalborg ØstDenmark

Personalised recommendations