Modular State Level Analysis of Distributed Systems Techniques and Tool Support

  • Peter Buchholz
  • Peter Kemper
Conference paper
Part of the Lecture Notes in Computer Science book series (LNCS, volume 1579)


Techniques from different areas are combined to analyze parallel and distributed software within a common framework. They include bisimulation equivalences known from process algebras, Kronecker representations of labelled (stochastic) transitions systems known from performance analysis using Markov chains, and ordered natural decision diagrams (ONDDs) as a generalization of ordered binary decision diagrams famous in hardware verification as well as for the analysis of Boolean functions in general. The employed analysis tools are all part of a toolbox built on the abstract Petri net notation (APNN), a model interchange format using Petri nets. In this context we experience a cross fertilization of different research fields within a Petri net context. We exercise Lamport’s mutual exclusion algorithm to discuss the strengths and limitations of the presented approach.


Software analysis Petri nets Kronecker algebra bisimulation ordered natural decision diagrams model checking 


  1. 1.
    A. Arnold. Finite Transition systems. Prentice Hall, 1994.Google Scholar
  2. 2.
    G. Balbo, S. C. Bruell, P. Chen, and G. Chiola. An example of modelling and evaluation of a concurrent program using coloured stochastic Petri nets: Lamport’s fast mutual exclusion algorithm. IEEE Trans. on Parallel and Distributed Systems, 3(2):221–240, 1992.CrossRefGoogle Scholar
  3. 3.
    F. Bause, P. Buchholz, and P. Kemper. A toolbox for functional and quantitative analysis of DEDS. In R. Pujanger, N. N. Savino, and B. Serra, editors, Quant. Eval. of Comp. and Comm. Sys., pp. 356–359. Springer LNCS 1469, 1998.Google Scholar
  4. 4.
    F. Bause, P. Kemper, and P. Kritzinger. Abstract Petri nets notation. Petri Net Newsletter, (49):9–27, 1995.Google Scholar
  5. 5.
    E. Best, W. Fraczak, R. P. Hopkins, H. Klaudel, and E. Pelz. M-nets: An algebra of high-level Petri nets, with an application to the semantics of concurrent programming languages. Acta Informatica, 35(10):813–857, 1998.zbMATHCrossRefMathSciNetGoogle Scholar
  6. 6.
    P. Buchholz. A notion of equivalence for stochastic Petri nets. In G. De Michelis and M. Diaz, editors, ATPN’95, pp. 161–180. Springer LNCS 935, 1995.Google Scholar
  7. 7.
    P. Buchholz. Hierarchical structuring of superposed GSPNs. In Proc. PNPM’97 pp. 81–90. IEEE CS-Press, 1997.Google Scholar
  8. 8.
    P. Buchholz and P. Kemper. Efficient computation and representation of large reachability sets for composed automata. Technical report, in preparation.Google Scholar
  9. 9.
    G. Ciardo and A. S. Miner. Storage alternatives for large structured state spaces. In R. Marie and B. Plateau, editors, Proc. 9th Int. Conf. on Mod. Techn. and Tools for Comp. Perf. Eval., pp. 44–57. Springer LNCS 1245, 1997.CrossRefGoogle Scholar
  10. 10.
    R. Cleaveland, J. Parrow, and B. Steffen. The concurrency workbench: a semantics based tool for the verification of concurrent systems. ACM Trans. on Programming Languages and Systems, 15(1):36–72, 1993.CrossRefGoogle Scholar
  11. 11.
    M. Davio. Kronecker products and shuffle algebra. IEEE Trans. on Computer, 30:116–125, 1981.zbMATHMathSciNetCrossRefGoogle Scholar
  12. 12.
    S. Donatelli. Superposed generalized stochastic Petri nets: definition and efficient solution. In R. Valette, editor, APTN’94, pp. 258–277. Springer LNCS 815, 1994.Google Scholar
  13. 13.
    J. Billington (ed.). Petri net standard. Committee draft, ISO/IEC JTC1/SC7/WG11, 1992.Google Scholar
  14. 14.
    C. Hoare. Communicating sequential processes. Prentice Hall, 1985.Google Scholar
  15. 15.
    P. C. Kanellakis and S. A. Smolka. CCS expressions, finite state processes and three problems of equivalence. Information and Computation, 86:43–68, 1990.zbMATHCrossRefMathSciNetGoogle Scholar
  16. 16.
    P. Kemper. Numerical analysis of superposed GSPNs. IEEE Trans. on Software Engineering, 22(9):615–628, 1996.CrossRefGoogle Scholar
  17. 17.
    P. Kemper. Reachability analysis based on structured representations. In J. Billington and W. Reisig, editors, ATPN’96, pp. 269–288. Springer LNCS 1091, 1996.Google Scholar
  18. 18.
    E. Kindler and J. Desel. Der Traum von einem universellen Petrinetz-Werkzeug-der Petrinetz-Kern (in German). In Proc. 3rd Workhop on Algorithmen und Werkzeuge für Petrinetze, 1996.Google Scholar
  19. 19.
    L. Lamport. A fast mutual exclusion algorithm. ACM Trans. on Computer Systems, 5(1):1–11, 1987.CrossRefGoogle Scholar
  20. 20.
    R. Milner. Communication and concurrency. Prentice Hall, 1989.Google Scholar
  21. 21.
    R. Paige and R. E. Tarjan. Three partitopn refinement algorithms. SIAM Journ. on Computing, 16(6):973–989, 1987.zbMATHCrossRefMathSciNetGoogle Scholar
  22. 22.
    B. Plateau. On the stochastic structure of parallelism and synchronisation models for distributed algorithms. Performance Evaluation Review, 13:142–154, 1985.CrossRefGoogle Scholar
  23. 23.
    B. Plateau and K. Atif. Stochastic automata networks for modeling parallel systems. IEEE Trans. on Software Engineering, 17(10):1093–1108, 1991.CrossRefMathSciNetGoogle Scholar
  24. 24.
    L. Pomello, G. Rozenberg, and C. Simone. A survey of equivalence relations for net based systems. In G. Rozenberg, editor, Adv. in Petri Nets 1992, pages 410–472. Springer LNCS 609, 1992.Google Scholar
  25. 25.
    B. Steffen, T. Margaria, and V. Braun. The electronic tool integration platform: concepts and design. Int. Journ. on Softw. Tools for Technology Transfer, 1(1/2):9–30, 1997.zbMATHCrossRefGoogle Scholar

Copyright information

© Springer-Verlag Berlin Heidelberg 1999

Authors and Affiliations

  • Peter Buchholz
    • 1
  • Peter Kemper
    • 1
  1. 1.Informatik IV, Universität DortmundDortmundGermany

Personalised recommendations