Abstract
Process algebras are formalisms for modelling concurrent systems that permit mathematical reasoning with respect to a set of desired properties. TAPAs is a tool that can be used to support the use of process algebras to specify and analyze concurrent systems. It does not aim at guaranteeing high performances, but has been developed as a support to teaching. Systems are described as process algebras terms that are then mapped to labelled transition systems (LTSs). Properties are verified either by checking equivalence of concrete and abstract systems descriptions, or by model checking temporal formulae over the obtained LTS. A key feature of TAPAs, that makes it particularly suitable for teaching, is that it maintains a consistent double representation of each system both as a term and as a graph. Another useful didactical feature is the exhibition of counterexamples in case equivalences are not verified or the proposed formulae are not satisfied.
Access this chapter
Tax calculation will be finalised at checkout
Purchases are for personal use only
Preview
Unable to display preview. Download preview PDF.
References
TAPAs: a Tool for the Analysis of Process Algebras, http://rap.dsi.unifi.it/tapas
Alur, R., Henzinger, T.: The NCSU Concurrency Workbench. In: CAV 1996. LNCS, vol. 1102, pp. 394–397. Springer, Heidelberg (1996)
Baeten, J.C.M., Weijland, W.P.: Process algebra. Cambridge Tracts in Theoretical Computer Science, vol. 18. Cambridge University Press, Cambridge (1990)
Bergstra, J.A., Klop, J.W.: Process algebra for synchronous communication. Information and Control 60(1-3), 109–137 (1984)
Bowman, H., Gomez, R.: Concurrency Theory: Calculi. an Automata for Modelling Untimed and Timed Concurrent Systems. Springer, Heidelberg (2006)
Brookes, S.D., Hoare, C.A.R., Roscoe, A.W.: A theory of communicating sequential processes. J. ACM 31(3), 560–599 (1984)
Clarke, E.M., Emerson, E.A.: Design and synthesis of synchronization skeletons using branching-time temporal logic. In: Proceedings of Logic of Programs, pp. 52–71. Springer, Heidelberg (1982)
Cleaveland, R., Madelaine, E., Sims, S.: A front-end generator for verification tools. In: Brinksma, E., Steffen, B., Cleaveland, W.R., Larsen, K.G., Margaria, T. (eds.) TACAS 1995. LNCS, vol. 1019, pp. 153–173. Springer, Heidelberg (1995)
De Nicola, R., Hennessy, M.: Testing equivalences for processes. Theor. Comput. Sci. 34, 83–133 (1984)
De Nicola, R., Vaandrager, F.W.: Action versus state based logics for transition systems. In: Guessarian, I. (ed.) Semantics of Systems of Concurrent Processes. LNCS, vol. 469, pp. 407–419. Springer, Heidelberg (1990)
Fokkink, W.: Introduction to Process Algebra. Springer, Heidelberg (2000)
Garavel, H., Lang, F., Mateescu, R.: An overview of CADP 2001. In: European Association for Software Science and Technology (EASST). Newsletter, vol. 4, pp. 13–24 (2002)
Hennessy, M., Milner, R.: Algebraic laws for nondeterminism and concurrency. J. ACM 32(1), 137–161 (1985)
Hoare, C.A.R.: A model for communicating sequential processes. In: On the Construction of Programs, pp. 229–254. Cambridge University Press, Cambridge (1980)
Hoare, C.A.R.: Communicating Sequential Processes. Prentice-Hall, Englewood Cliffs (1985)
Kozen, D.: Results on the propositional μ-calculus. Theor. Comput. Sci. 27, 333–354 (1983)
Magee, J., Kramer, J.: Concurrency: State Models and Java Programs. John Wiley and Sons Inc., Chichester (2006)
Milner, R.: A Calculus of Communication Systems. LNCS, vol. 92. Springer, Heidelberg (1980)
Milner, R.: Communication and Concurrency. Prentice-Hall, Inc., Upper Saddle River (1989)
Moller, F., Stevens, P.: Edinburgh Concurrency Workbench User Manual, http://homepages.inf.ed.ac.uk/perdita/cwb/
Olderog, E.-R.: Operational Petri net semantics for CCSP. In: Rozenberg, G. (ed.) APN 1987. LNCS, vol. 266, pp. 196–223. Springer, Heidelberg (1987)
Roscoe, A.W.: The Theory and Practice of Concurrency. Prentice-Hall, Englewood Cliffs (1997)
Schneider, S.A.: Concurrent and Real-Time Systems: The CSP Approach. Wiley & Sons, Chichester (1999)
van Glabbeek, R.J., Vaandrager, F.W.: Bundle event structures and CCSP. In: Amadio, R., Lugiez, D. (eds.) CONCUR 2003. LNCS, vol. 2761, pp. 57–71. Springer, Heidelberg (2003)
van Eijk, P.H.J., Vissers, C.A., Diaz, M.: The Formal Description Technique LOTOS. Elsevier Science Publishers B.V., Amsterdam (1989)
van Glabbeek, R.J., Weijland, W.P.: Branching time and abstraction in bisimulation semantics. J. ACM 43(3), 555–600 (1996)
Winskel, G.: Topics in Concurrency. Lecture notes, University of Cambridge (2008), http://www.cl.cam.ac.uk/~gw104/TIC08.ps
Author information
Authors and Affiliations
Editor information
Editors and Affiliations
Rights and permissions
Copyright information
© 2008 Springer-Verlag Berlin Heidelberg
About this chapter
Cite this chapter
Calzolai, F., De Nicola, R., Loreti, M., Tiezzi, F. (2008). TAPAs: A Tool for the Analysis of Process Algebras. In: Jensen, K., van der Aalst, W.M.P., Billington, J. (eds) Transactions on Petri Nets and Other Models of Concurrency I. Lecture Notes in Computer Science, vol 5100. Springer, Berlin, Heidelberg. https://doi.org/10.1007/978-3-540-89287-8_4
Download citation
DOI: https://doi.org/10.1007/978-3-540-89287-8_4
Publisher Name: Springer, Berlin, Heidelberg
Print ISBN: 978-3-540-89286-1
Online ISBN: 978-3-540-89287-8
eBook Packages: Computer ScienceComputer Science (R0)