Advertisement

Petri Net Model Checking with LoLA 2

  • Karsten Wolf
Conference paper
Part of the Lecture Notes in Computer Science book series (LNCS, volume 10877)

Abstract

LoLA 2 offers a suite of algorithms for verifying place/transition Petri nets. It combines structural with state space methods and general purpose with Petri net-specific techniques. The methods are easily accessible to people with little knowledge of Petri nets since there is a uniform query language based on temporal logic, and the tool takes care of sound application of its methods. Unlike its predecessor LoLA 1, LoLA 2 is based on a strict modularisation and integration of various standard tools. A careful software engineering approach has been used for coding. Through its code quality and its frequent comparison to other tools in the yearly model checking contests, LoLA 2 has become one of the most reliable verification tools for distributed systems.

References

  1. 1.
    Best, E., Schlachter, U.: Analysis of Petri nets and transition systems. In: Proceedings ICE. EPTCS, vol. 189, pp. 53–67 (2015)MathSciNetCrossRefGoogle Scholar
  2. 2.
    Das, D., Chakrabarti, P.P., Kumar, R.: Functional verification of task partitioning for multiprocessor embedded systems. ACM Trans. Des. Autom. Electron. Syst. 12(4), 44 (2007)CrossRefGoogle Scholar
  3. 3.
    Decker, G., Overdick, H., Weske, M.: Oryx – an open modeling platform for the BPM community. In: Dumas, M., Reichert, M., Shan, M.-C. (eds.) BPM 2008. LNCS, vol. 5240, pp. 382–385. Springer, Heidelberg (2008).  https://doi.org/10.1007/978-3-540-85758-7_29CrossRefGoogle Scholar
  4. 4.
    Eén, N., Sörensson, N.: An extensible SAT-solver. In: Giunchiglia, E., Tacchella, A. (eds.) SAT 2003. LNCS, vol. 2919, pp. 502–518. Springer, Heidelberg (2004).  https://doi.org/10.1007/978-3-540-24605-3_37CrossRefGoogle Scholar
  5. 5.
    Emerson, E.A., Clarke, E.M.: Using branching time temporal logic to synthesize synchronization skeletons. Sci. Comput. Program. 2(3), 241–266 (1982)CrossRefGoogle Scholar
  6. 6.
    Dalsgaard, A.E., et al.: Extended dependency graphs and efficient distributed fixed-point computation. In: van der Aalst, W., Best, E. (eds.) PETRI NETS 2017. LNCS, vol. 10258, pp. 139–158. Springer, Cham (2017).  https://doi.org/10.1007/978-3-319-57861-3_10CrossRefGoogle Scholar
  7. 7.
    Dill, D.L., Knapp, M.A., Gage, P., Talcott, C., Laderoute, K., Lincoln, P.: The pathalyzer: a tool for analysis of signal transduction pathways. In: Eskin, E., Ideker, T., Raphael, B., Workman, C. (eds.) RRG/RSB-2005. LNCS, vol. 4023, pp. 11–22. Springer, Heidelberg (2007).  https://doi.org/10.1007/978-3-540-48540-7_2CrossRefGoogle Scholar
  8. 8.
    Kordon, F., et al.: Homepage of the Model Checking Contest, June 2017. http://mcc.lip6.fr/
  9. 9.
    Billington, J., et al.: The Petri net markup language: concepts, technology, and tools. In: van der Aalst, W.M.P., Best, E. (eds.) ICATPN 2003. LNCS, vol. 2679, pp. 483–505. Springer, Heidelberg (2003).  https://doi.org/10.1007/3-540-44919-1_31CrossRefGoogle Scholar
  10. 10.
    Cardozo, N., et al.: Modeling and analyzing self-adaptive systems with context Petri nets. In: Proceedings of the TASE, pp. 191–198. IEEE (2013)Google Scholar
  11. 11.
    Geldenhuys, J., Valmari, A.: More efficient on-the-fly LTL verification with Tarjan’s algorithm. Theoret. Comput. Sci. 345(1), 60–82 (2005)MathSciNetCrossRefGoogle Scholar
  12. 12.
    Gerth, R., Kuiper, R., Peled, D.A., Penczek, W.: A partial order approach to branching time logic model checking. In: Proceedings of the International Symposium on Theory of Computing and Systems, ISTCS 1995, Tel Aviv, Israel, 4–6 January 1995, pp. 130–139. IEEE Computer Society (1995)Google Scholar
  13. 13.
    Heiner, M., Richter, R., Schwarick, M.: Snoopy - a tool to design and animate/simulate graph-based formalisms. In: Proceedings of the PNTAP (2008)Google Scholar
  14. 14.
    Huffman, D.A.: A method for the construction of minimum-redundancy codes. Proc. IRE 40, 1098–1101 (1952)CrossRefGoogle Scholar
  15. 15.
    Junttila, T.A.: Computational complexity of the place/transition-net symmetry reduction method. J. UCS 7(4), 307–326 (2001)MathSciNetzbMATHGoogle Scholar
  16. 16.
    Kaiser, A., Kroening, D., Wahl, T.: Dynamic cutoff detection in parameterized concurrent programs. In: Touili, T., Cook, B., Jackson, P. (eds.) CAV 2010. LNCS, vol. 6174, pp. 645–659. Springer, Heidelberg (2010).  https://doi.org/10.1007/978-3-642-14295-6_55CrossRefGoogle Scholar
  17. 17.
    Karp, R.M., Miller, R.E.: Parallel program schemata. J. Comput. Syst. Sci. 3(2), 147–195 (1969)MathSciNetCrossRefGoogle Scholar
  18. 18.
    Knuth, D.E.: Efficient representation of perm groups. Combinatorica 11(1), 33–43 (1991)MathSciNetCrossRefGoogle Scholar
  19. 19.
    Kristensen, L.M., Mailund, T.: A generalised sweep-line method for safety properties. In: Eriksson, L.-H., Lindsay, P.A. (eds.) FME 2002. LNCS, vol. 2391, pp. 549–567. Springer, Heidelberg (2002).  https://doi.org/10.1007/3-540-45614-7_31CrossRefGoogle Scholar
  20. 20.
    Kristensen, L.M., Schmidt, K., Valmari, A.: Question-guided stubborn set methods for state properties. Form. Methods Syst. Des. 29(3), 215–251 (2006)CrossRefGoogle Scholar
  21. 21.
    Schmidt, K.: Automated generation of a progress measure for the sweep-line method. STTT 8(3), 195–203 (2006)CrossRefGoogle Scholar
  22. 22.
    Kummer, O., Wienberg, F.: Renew - the reference net workshop. In: Petri Net Newsletter, pp. 12–16 (2000)Google Scholar
  23. 23.
    Lohmann, N., Kopp, O., Leymann, F., Reisig, W.: Analyzing BPEL4Chor: verification and participant synthesis. In: Dumas, M., Heckel, R. (eds.) WS-FM 2007. LNCS, vol. 4937, pp. 46–60. Springer, Heidelberg (2008).  https://doi.org/10.1007/978-3-540-79230-7_4CrossRefGoogle Scholar
  24. 24.
    Lohmann, N., Massuthe, P., Stahl, C., Weinberg, D.: Analyzing interacting WS-BPEL processes using flexible model generation. Data Knowl. Eng. 64(1), 38–54 (2008)CrossRefGoogle Scholar
  25. 25.
    Lohmann, N., Verbeek, E., Ouyang, C., Stahl, C.: Comparing and evaluating Petri net semantics for BPEL. IJBPIM 4(1), 60–73 (2009)CrossRefGoogle Scholar
  26. 26.
    Meis, B., Bergenthum, R., Desel, J.: travis - an online tool for the synthesis and analysis of Petri nets with final states. In: van der Aalst, W., Best, E. (eds.) PETRI NETS 2017. LNCS, vol. 10258, pp. 101–111. Springer, Cham (2017).  https://doi.org/10.1007/978-3-319-57861-3_7CrossRefGoogle Scholar
  27. 27.
    Mrasek, R., Mülleand, J., Böhm, K., Becker, M., Allmann, C.: Property specification, process verification, and reporting - a case study with vehicle-commissioning processes. Inf. Syst. 56(C), 326–346 (2016)CrossRefGoogle Scholar
  28. 28.
    Niewiadomski, A., Wolf, K.: LoLA as abstract planning engine of PlanICS. In: Proceedings of the PNSEi. CEUR, vol. 1160, pp. 349–350 (2014)Google Scholar
  29. 29.
    Oanea, O., Wimmel, H., Wolf, K.: New algorithms for deciding the Siphon-Trap property. In: Lilius, J., Penczek, W. (eds.) PETRI NETS 2010. LNCS, vol. 6128, pp. 267–286. Springer, Heidelberg (2010).  https://doi.org/10.1007/978-3-642-13675-7_16CrossRefGoogle Scholar
  30. 30.
    Oddoux, D., Gastin, P.: LTL 2 BA: fast translation from LTL formulae to Büchi automata. http://www.lsv.fr/~gastin/ltl2ba/
  31. 31.
    Schmidt, K.: LoLA wird Pfadfinder. In: Proceedings of the AWPN, CEUR Workshop Proceedings, p. 26 (1999)Google Scholar
  32. 32.
    Schmidt, K.: Stubborn sets for standard properties. In: Donatelli, S., Kleijn, J. (eds.) ICATPN 1999. LNCS, vol. 1639, pp. 46–65. Springer, Heidelberg (1999).  https://doi.org/10.1007/3-540-48745-X_4CrossRefGoogle Scholar
  33. 33.
    Schmidt, K.: How to calculate symmetries of Petri nets. Acta Inf. 36(7), 545–590 (2000)MathSciNetCrossRefGoogle Scholar
  34. 34.
    Schmidt, K.: Integrating low level symmetries into reachability analysis. In: Graf, S., Schwartzbach, M. (eds.) TACAS 2000. LNCS, vol. 1785, pp. 315–330. Springer, Heidelberg (2000).  https://doi.org/10.1007/3-540-46419-0_22CrossRefGoogle Scholar
  35. 35.
    Schmidt, K.: LoLA: a low level analyser. In: Nielsen, M., Simpson, D. (eds.) ICATPN 2000. LNCS, vol. 1825, pp. 465–474. Springer, Heidelberg (2000).  https://doi.org/10.1007/3-540-44988-4_27CrossRefGoogle Scholar
  36. 36.
    Schmidt, K.: Using Petri net invariants in state space construction. In: Garavel, H., Hatcliff, J. (eds.) TACAS 2003. LNCS, vol. 2619, pp. 473–488. Springer, Heidelberg (2003).  https://doi.org/10.1007/3-540-36577-X_35CrossRefGoogle Scholar
  37. 37.
    Stahl, C., Reisig, W., Krstic, M.: Hazard detection in a GALS wrapper: a case study. In: Proceedings of the ACSD, pp. 234–243. IEEE (2005)Google Scholar
  38. 38.
    Tarjan, R.E.: Depth-first search and linear graph algorithms. SIAM J. Comput. 1(2), 146–160 (1972)MathSciNetCrossRefGoogle Scholar
  39. 39.
    Tarjan, R.E.: Efficiency of a good but not linear set union algorithm. J. ACM 22(2), 215–225 (1975)MathSciNetCrossRefGoogle Scholar
  40. 40.
    Valmari, A.: Stubborn sets for reduced state space generation. In: Rozenberg, G. (ed.) ICATPN 1989. LNCS, vol. 483, pp. 491–515. Springer, Heidelberg (1991).  https://doi.org/10.1007/3-540-53863-1_36CrossRefGoogle Scholar
  41. 41.
    Valmari, A.: The state explosion problem. In: Reisig, W., Rozenberg, G. (eds.) ACPN 1996. LNCS, vol. 1491, pp. 429–528. Springer, Heidelberg (1998).  https://doi.org/10.1007/3-540-65306-6_21CrossRefGoogle Scholar
  42. 42.
    van der Aalst, W.M.P., et al.: ProM: the process mining toolkit. In: Proceedings of the BPMDemos. CEUR, vol. 489 (2009)Google Scholar
  43. 43.
    Vergauwen, B., Lewi, J.: A linear local model checking algorithm for CTL. In: Best, E. (ed.) CONCUR 1993. LNCS, vol. 715, pp. 447–461. Springer, Heidelberg (1993).  https://doi.org/10.1007/3-540-57208-2_31CrossRefGoogle Scholar
  44. 44.
    Wimmel, H., Wolf, K.: Applying CEGAR to the Petri net state equation. Log. Methods Comput. Sci. 8(3) (2012)Google Scholar
  45. 45.
    Wolf, K.: Running LoLA 2.0 in a model checking competition. In: Koutny, M., Desel, J., Kleijn, J. (eds.) Transactions on Petri Nets and Other Models of Concurrency XI. LNCS, vol. 9930, pp. 274–285. Springer, Heidelberg (2016).  https://doi.org/10.1007/978-3-662-53401-4_13CrossRefGoogle Scholar

Copyright information

© Springer International Publishing AG, part of Springer Nature 2018

Authors and Affiliations

  1. 1.Institut für InformatikUniversität RostockRostockGermany

Personalised recommendations