Abstract
Process algebras are used to study the behaviour of parallel systems. The mCRL2 toolset has been designed to analyse process algebraic models of such systems. Given that almost any contemporary desktop computer has multiple processors on board it seems natural that a toolset to analyse parallel behaviour now also employs parallelism.
This paper gives a compact account of the recently developed parallel term library [13]; terms are used to represent almost any main concept in the mCRL2 toolset. It subsequently reports on how the library is used to make parallel implementations of the generation of state spaces and the instantiation of Parameterised Boolean Equation Systems (PBES). We show that a gain of an order of magnitude is possible using parallel processing on contemporary hardware.
Partially supported by the projects 612.001.751 (NWO, AVVA) and 00795160 (TTW, MASCOT).
Access this chapter
Tax calculation will be finalised at checkout
Purchases are for personal use only
Notes
- 1.
Henri Korver, Wan Fokkink and Jan Friso Groote participated also.
References
ISO 8807:1989. Information processing systems - Open Systems Interconnection - LOTOS - A formal description technique based on the temporal ordering of observational behaviour (1989). ISO/IECJTC1/SC7
Blom, S., Lisser, B., van de Pol, J., Weber, M.: A database approach to distributed state space generation. Electron. Notes Theor. Comput. Sci. 198(1), 17–32 (2008)
Blom, S., van de Pol, J.: Distributed branching bisimulation minimization by inductive signatures. In: Brim, L., van de Pol, J. (eds.) Proceedings 8th International Workshop on Parallel and Distributed Methods in verifiCation, PDMC 2009, Eindhoven, The Netherlands, 4th November 2009, volume 14 of EPTCS, pp. 32–46 (2009)
van den Brand, M.G., de Jong, H.A., Klint, P., Olivier, P.A.: Efficient annotated terms. Softw. Pract. Experience 30(3), 259–291 (2000)
Calude, C.S., Jain, S., Khoussainov, B., Li, W., Stephan, F.: Deciding parity games in quasipolynomial time. In: STOC, pp. 252–263. ACM (2017)
Cranen, S., Luttik, B., Willemse, T.A.C.: Proof graphs for parameterised Boolean equation systems. In: D’Argenio, P.R., Melgratti, H. (eds.) CONCUR 2013. LNCS, vol. 8052, pp. 470–484. Springer, Heidelberg (2013). https://doi.org/10.1007/978-3-642-40184-8_33
Cranen, S., Luttik, B., Willemse, T.A.: Evidence for fixpoint logic. In: CSL, Volume 41 of LIPIcs, pp. 78–93 (2015). Schloss Dagstuhl - Leibniz-Zentrum für Informatik
van Dam, A., Ploeger, B., Willemse, T.A.C.: Instantiation for parameterised Boolean equation systems. In: Fitzgerald, J.S., Haxthausen, A.E., Yenigun, H. (eds.) ICTAC 2008. LNCS, vol. 5160, pp. 440–454. Springer, Heidelberg (2008). https://doi.org/10.1007/978-3-540-85762-4_30
Engel, A.J.P.M., Feijs, L.M.G., Groote, J.F., van de Pol, J.C., Springintveld, J.: Specification, design and simulation of services and protocols for a PDA using the infra red medium. Technical report RWB-510-re-95012, Information and Software Technology, Philips research. confidential (1995)
Gao, H., Groote, J.F., Hesselink, W.H.: Lock-free dynamic hash tables with open addressing. Distrib. Comput. 18(1), 21–42 (2005). https://doi.org/10.1007/s00446-004-0115-2
Gao, H., Groote, J.F., Hesselink, W.H.: Lock-free parallel and concurrent garbage collection by mark &sweep. Sci. Comput. Program. 64(3), 341–374 (2007)
Gazda, M., Willemse, T.A.: Zielonka’s recursive algorithm: dull, weak and solitaire games and tighter bounds. In: GandALF, Volume 119 of EPTCS, pp. 7–20 (2013)
Groote, J.F., Laveaux, M., van Spaendonck, P.H.M.: A thread-safe term library. arXiv preprint arXiv:2111.02706 (2021)
Groote, J.F., Mathijssen, A., Van Weerdenburg, M., Usenko, Y.: From \(\mu \)CRL to mCRL2: motivation and outline. Electron. Notes Theor. Comput. Sci. 162, 191–196 (2006)
Groote, J.F., Mousavi, M.R.: Modeling and Analysis of Communicating Systems. MIT Press, Cambridge (2014)
Groote, J.F., Ponse, A.: The syntax and semantics of \(\mu \)CRL. Technical report CS-R9076, CWI, Amsterdam (1990)
Groote, J.F., Ponse, A.: Proof theory for \(\rm \mu \)CRL: a language for processes with data. In: Andrews, D.J., Groote, J.F., Middelburg, C.A. (eds.) Semantics of Specification Languages (SoSL). WC, pp. 232–251. Springer, London (1994). https://doi.org/10.1007/978-1-4471-3229-5_13
Groote, J.F., Sellink, M.P.A.: Confluence for process verification. Theor. Comput. Sci. 170(1–2), 47–81 (1996)
Groote, J.F., Willemse, T.A.C.: A checker for modal formulae for processes with data. In: de Boer, F.S., Bonsangue, M.M., Graf, S., de Roever, W.-P. (eds.) FMCO 2003. LNCS, vol. 3188, pp. 223–239. Springer, Heidelberg (2004). https://doi.org/10.1007/978-3-540-30101-1_10
Groote, J.F., Willemse, T.A.: Model-checking processes with data. Sci. Comput. Program. 56(3), 251–273 (2005)
Groote, J.F., Willemse, T.A.: Parameterised Boolean equation systems. Theor. Comput. Sci. 343(3), 332–369 (2005)
Hesselink, W.H., Groote, J.F.: Wait-free concurrent memory management by create and read until deletion (carud). Distrib. Comput. 14(1), 31–39 (2001). https://doi.org/10.1007/PL00008924
Jurdziński, M.: Small progress measures for solving parity games. In: Reichel, H., Tison, S. (eds.) STACS 2000. LNCS, vol. 1770, pp. 290–301. Springer, Heidelberg (2000). https://doi.org/10.1007/3-540-46541-3_24
Keiren, J.J., Reniers, M.A., Willemse, T.A.: Structural analysis of Boolean equation systems. ACM Trans. Comput. Logic (TOCL) 13(1), 1–35 (2012)
Koolen, R.P.J., Willemse, T.A.C., Zantema, H.: Using SMT for solving fragments of parameterised Boolean equation systems. In: Finkbeiner, B., Pu, G., Zhang, L. (eds.) ATVA 2015. LNCS, vol. 9364, pp. 14–30. Springer, Cham (2015). https://doi.org/10.1007/978-3-319-24953-7_3
Larsen, K.G.: Efficient local correctness checking. In: von Bochmann, G., Probst, D.K. (eds.) CAV 1992. LNCS, vol. 663, pp. 30–43. Springer, Heidelberg (1993). https://doi.org/10.1007/3-540-56496-9_4
Laveaux, M., Wesselink, W., Willemse, T.A.C.: On-the-fly solving for symbolic parity games. In: Fisman, D., Rosu, G. (eds.) TACAS 2022. Lecture Notes in Computer Science, vol. 13244, pp. 137–155. Springer, Cham (2022). https://doi.org/10.1007/978-3-030-99527-0_8
Luttik., B.: Description and formal specification of the link layer of P1394. In: International Workshop on Applied Formal Methods in System Design, pp. 43–56 (1997)
Mader, A.: Verification of modal properties using Boolean equation systems. Ph.D. thesis, Technical University Munich (1997)
Mateescu, R.: Vérification des propriétés temporelles des programmes parallèles. Ph.D thesis, Institut National Polytechnique de Grenoble (1998)
Mauw, S., Veltink, G.: A process specification formalism. Fundamenta Informaticae 13, 85–139 (1990)
Nagae, Y., Sakai, M.: Reduced dependency spaces for existential parameterised Boolean equation systems (2018). arXiv preprint arXiv:1802.06496
Neele, T., Willemse, T.A.C., Groote, J.F.: Solving parameterised boolean equation systems with infinite data through quotienting. In: Bae, K., Ölveczky, P.C. (eds.) FACS 2018. LNCS, vol. 11222, pp. 216–236. Springer, Cham (2018). https://doi.org/10.1007/978-3-030-02146-7_11
Ploeger, B., Wesselink, J.W., Willemse, T.A.: Verification of reactive systems via instantiation of parameterised Boolean equation systems. Inf. Comput. 209(4), 637–663 (2011)
Pol, J.: JITty: a rewriter with strategy annotations. In: Tison, S. (ed.) RTA 2002. LNCS, vol. 2378, pp. 367–370. Springer, Heidelberg (2002). https://doi.org/10.1007/3-540-45610-4_26
Rockström, A., Saracco, R.: SDL-CCITT specification and description language. IEEE Trans. Commun. 30(6), 1310–1318 (1982)
ITU-T Telecommunication standardisation sector of ITU. CHILL - The ITU-T programming language. ITU-T recommendation Z.200. Technical report, International Telecommunication Union (1999)
Usenko, Y.: Linearisation in \(\mu \)CRL. Ph. D thesis, Eindhoven University of Technology (2002)
Wesselink, W., Willemse, T.A.C.: Evidence extraction from parameterised Boolean equation systems. In ARQNL@IJCAR, volume 2095 of CEUR Workshop Proceedings, pp. 86–100. CEUR-WS.org (2018)
Zielonka, W.: Infinite games on finitely coloured graphs with applications to automata on infinite trees. Theor. Comput. Sci. 200(1–2), 135–183 (1998)
Author information
Authors and Affiliations
Corresponding author
Editor information
Editors and Affiliations
Rights and permissions
Copyright information
© 2022 The Author(s), under exclusive license to Springer Nature Switzerland AG
About this chapter
Cite this chapter
Groote, J.F., Jilissen, K.H.J., Laveaux, M., van Spaendonck, P.H.M., Willemse, T.A.C. (2022). Using the Parallel ATerm Library for Parallel Model Checking and State Space Generation. In: Jansen, N., Stoelinga, M., van den Bos, P. (eds) A Journey from Process Algebra via Timed Automata to Model Learning . Lecture Notes in Computer Science, vol 13560. Springer, Cham. https://doi.org/10.1007/978-3-031-15629-8_16
Download citation
DOI: https://doi.org/10.1007/978-3-031-15629-8_16
Published:
Publisher Name: Springer, Cham
Print ISBN: 978-3-031-15628-1
Online ISBN: 978-3-031-15629-8
eBook Packages: Computer ScienceComputer Science (R0)