Abstract
Substantial research efforts have been expended to deal with the complexity of concurrent systems that is inherent to their analysis, e.g., works that tackle the well-known state space explosion problem. Approaches differ in the classes of properties that they are able to suitably check and this is largely a result of the way they balance the trade-off between analysis time and space employed to describe a concurrent system. One interesting class of properties is concerned with behavioral characteristics. These properties are conveniently expressed in terms of computations, or runs, in concurrent systems. This article introduces the theory of untanglings that exploits a particular representation of a collection of runs in a concurrent system. It is shown that a representative untangling of a bounded concurrent system can be constructed that captures all and only the behavior of the system. Representative untanglings strike a unique balance between time and space, yet provide a single model for the convenient extraction of various behavioral properties. Performance measurements in terms of construction time and size of representative untanglings with respect to the original specifications of concurrent systems, conducted on a collection of models from practice, confirm the scalability of the approach. Finally, this article demonstrates practical benefits of using representative untanglings when checking various behavioral properties of concurrent systems.
Similar content being viewed by others
References
Best E, Desel J (1990) Partial order behaviour and structure of Petri nets. Form Asp Comput 2(2): 123–138
Desel J, Esparza J (1995) Free choice Petri nets. Cambridge tracts in theoretical computer science, vol 40. Cambridge University Press, Cambridge
Desel J (2000) Validation of process models by construction of process nets. In: Business process management (BPM). LNCS, vol 1806. Springer, Berlin, pp 110–128
Esparza J, Heljanko K (2008) Unfoldings: a partial-order approach to model checking. Monographs in theoretical computer science. An EATCS series. Springer, Berlin
Esparza J, Römer S, Vogler W (2002) An improvement of McMillan’s unfolding algorithm. Form Methods Syst Des 20(3): 285–310
Fahland D (2010) From Scenarios to Components. PhD thesis, Humboldt-Universität zu Berlin, Berlin, Germany
Fahland D, Favre C, Koehler J, Lohmann N, Völzer H, Wolf K (2011) Analysis on demand: Instantaneous soundness checking of industrial business process models. Data Knowl Eng 70(5): 448–466
Goltz U, Reisig W (1983) The non-sequential behavior of Petri nets. Inf Control (IANDC) 57(2–3): 125–147
Godefroid P, Wolper P (1993) Using partial orders for the efficient verification of deadlock freedom and safety properties. Form Methods Syst Des 2(2): 149–164
Hack M (1975) Decidability questions for Petri nets. Outstanding dissertations in the computer sciences. Garland Publishing, New York
Khomenko V (2003) Model checking based on prefixes of Petri net unfoldings. PhD thesis, University of Newcastle upon Tyne, School of Computing Science, Newcastle upon Tyne, UK
Khomenko V, Kondratyev A, Koutny M, Vogler W (2006) Merged processes: a new condensed representation of Petri net behaviour. Acta Informatica 43(5): 307–330
Khomenko V, Mokhov A (2011) An algorithm for direct construction of complete merged processes. In: Petri nets. LNCS, vol 6709. Springer, Berlin, pp 89–108
Lee EA, Sangiovanni-Vincentelli AL (1998) A framework for comparing models of computation. IEEE Trans Comput Aided Des Integr Circuits Syst 17(12): 1217–1229
McMillan KL (1992) Using unfoldings to avoid the state explosion problem in the verification of asynchronous circuits. In: Computer aided verification (CAV). LNCS, vol 663. Springer, Berlin, pp 164–177
McMillan KL (1995) A technique of state space search based on unfolding. Form Methods Syst Des 6(1): 45–65
Melzer S, Römer S (1997) Deadlock checking using net unfoldings. In: Computer aided verification (CAV). LNCS, vol 1254. Springer, Berlin, pp 352–363
Murata T (1989) Petri nets: properties, analysis and applications. Proc IEEE 77(4): 541–580
Nielsen M, Plotkin GD, Winskel G (1981) Petri nets, event structures and domains. Part I. Theor Comput Sci 13: 85–108
Petri CA (1977) Non-sequential processes. Translation of a Lecture given at the IMMD Jubilee Colloquium on “Parallelism in Computer Science”, Unversität Erlangen-Nürnberg. Translated by Philip Krause and John Low, Petri, CA, St. Augustin: Gesellschaft fnr Mathematik und Datenverarbeitung Bonn, Interner Bericht ISF-77-5
Polyvyanyy A, La Rosa M, ter Hofstede AHM (2014) Indexing and efficient instance-based retrieval of process models using untanglings. In: Advanced information systems engineering (CAiSE). LNCS, vol 8484. Springer International Publishing, Berlin, pp 439–456
Pnueli A (1977) The temporal logic of programs. In: annual symposium on foundations of computer science (FOCS). IEEE Computer Society, pp 46–57
Polyvyanyy A, Weidlich M (2013) Towards a compendium of process technologies: the jBPT library for process model analysis. In: CAiSE forum. CEUR workshop proceedings, vol 998. CEUR-WS.org, pp 106–113
Polyvyanyy A, Weidlich M, Conforti R, La Rosa M, ter Hofstede AHM (2014) The 4C spectrum of fundamental behavioral relations for concurrent systems. In: Petri nets. LNCS, vol 8489. Springer International Publishing, Berlin, pp 210–232
Rackoff C (1978) The covering and boundedness problems for vector addition systems. Theor Comput Sci 6(2): 223–231
Reisig W(2013) Understanding Petri nets: modeling techniques, analysis methods, case studies. Springer, Berlin
Rodríguez C, Schwoon S, Khomenko V. (2013) Contextual merged processes. In: Petri nets. LNCS, vol 7927. Springer, Berlin, pp 29–48
Sassone V, Nielsen M, Winskel G (1996) Models for concurrency: towards a classification. Theor Comput Sci 170(1–2): 297–348
Tarasyuk IV (1997) Equivalence notions for models of concurrent and distributed systems. PhD thesis, A.P. Ershov Institute of Informatics Systems, Siberian Division of the Russian Academy of Sciences, Novosibirsk, Russia
van der Aalst WMP (1997) Verification of workflow nets. In: Petri nets. LNCS, vol 1248. Springer, Berlin, pp 407–426
van Glabbeek RJ, Vaandrager FW (1987) Petri net models for algebraic theories of concurrency. In: Parallel architectures and languages Europe (PARLE). LNCS, vol 259. Springer, Berlin, pp 224–242
Author information
Authors and Affiliations
Corresponding author
Additional information
Jim Woodcock
Rights and permissions
About this article
Cite this article
Polyvyanyy, A., La Rosa, M., Ouyang, C. et al. Untanglings: a novel approach to analyzing concurrent systems. Form Asp Comp 27, 753–788 (2015). https://doi.org/10.1007/s00165-014-0329-4
Received:
Revised:
Accepted:
Published:
Issue Date:
DOI: https://doi.org/10.1007/s00165-014-0329-4