Combining finite automata, parallel programs and SDL using Petri nets

  • Bernd Grahlmann
Regular Sessions Design and Architecture
Part of the Lecture Notes in Computer Science book series (LNCS, volume 1384)


This paper introduces a method to combine finite automata, parallel programs and SDL (Specification and Description Language) specifications. We base our approach on M-nets exploiting the rich set of composition operators available in this algebra of high-level Petri nets. In order to be able to combine different modelling techniques, we rely on compatible interfaces. Therefore,
  1. -

    we extend an existing semantics, namely the M-net semantics for the parallel programming language B(PN)2; and

  2. -

    we present an M-net semantics for finite automata.


Considering the hybrid modelling of an ARQ (Automatic Repeat re-Quest) protocol, we show how the different formalisms fit together as well as the resulting verification possibilities. As a side-effect we describe on-going development of the PEP tool (Programming Environment based on Petri Nets). As a consequence of our approach we are introducing a hierarchical ‘programming with nets’ method which is currently implemented in the high-level Petri net editor of the tool.


B(PN)2 Finite automata Hybrid system design M-nets Parallel programs PEP Petri nets SDL Verification 


  1. 1.
    M. Ackermann. Konzeption eines Compilers für eine parallele Programmiersprache mit Prozeduren. Diploma thesis, Universität Hildesheim, 1997.Google Scholar
  2. 2.
    M. v. d. Beeck, V. Braun, A. Claßen, A. Dannecker, C. Friedrich, D. Koschützki, T. Margaria, F. Schreiber, and B. Steffen. Graphs in METAFrame: The Unifying Power of Polymorphism, In E. Brinksma, editor, Proc. of TACAS'97, Enschede, LNCS 1217, 112–129, Springer, 1997.Google Scholar
  3. 3.
    E. Best. Partial Order Verification with PEP. In G. Holzmann, D. Peled, and V. Pratt, editors, Proc. of POMIV'96, Princeton, 305–328. Am. Math. Soc, 1996.Google Scholar
  4. 4.
    E. Best, R. Devillers, and J. G. Hall. The Box Calculus: a New Causal Algebra with Multi-Label Communication. In G. Rozenberg, editor, Advances in Petri Nets 92, LNCS 609, 21–69. Springer, 1992.Google Scholar
  5. 5.
    E. Best, H. Fleischhack, W. Fraczak, R. P. Hopkins, H. Klaudel, and E. Pelz. An M-Net Semantics of B(PN)2. In J. Desel, editor, Proc. of STRICT, Workshops in Computing, 85–100, Springer, 1995.Google Scholar
  6. 6.
    E. Best, H. Fleischhack, W. Fraczak, R. P. Hopkins, H. Klaudel, and E. Pelz. A Class of Composable High Level Petri Nets. G. De Michelis and M. Diaz, editors, Proc. of ATPN'95, Torino, LNCS 935, 103–118. Springer, 1995.Google Scholar
  7. 7.
    E. Best and B. Grahlmann. PEP: Documentation and User Guide. Universität Hildesheim. Available together with the tool via:
  8. 8.
    E. Best and R. P. Hopkins. B(PN)2 — a Basic Petri Net Programming Notation. A. Bode, M. Reeve, and G. Wolf, editors, Proc. of PARLE, LNCS 694, 379–390, Springer, 1993.Google Scholar
  9. 9.
    CCITT. Specification and Description Language, CCITT Z.100, Geneva, 1992.Google Scholar
  10. 10.
    E. Clarke, K. McMillan, S. Campos, and V. Hartonas-Garmhausen. Symbolic Model Checking. In R. Alur and T. A. Henzinger, editors, Proc. of CAV'96, New Brunswick, LNCS 1102, 419–422, Springer, 1996.Google Scholar
  11. 11.
    J. Esparza, S. Römer, and W. Vogler. An Improvement of McMillan's Unfolding Algorithm. In T. Margaria and B. Steffen, editors, Proc. of TACAS'96, Passau, LNCS 1055, 87–106, Springer, 1996.Google Scholar
  12. 12.
    J. Esparza. Model Checking Using Net Unfoldings. In Number 23 in Science of Computer Programming, 151–195, Elsevier, 1994.Google Scholar
  13. 13.
    H. Fleischhack and B. Grahlmann. A Petri Net Semantics for B(PN)2 with Procedures. Proc. of PDSE'97, 15–27, Boston, IEEE Comp. Soc. Press, 1997.Google Scholar
  14. 14.
    H. Fleischhack and B. Grahlmann. A Compositional Petri Net Semantics for SDL, Technical report, HIB 18/97, Universität Hildesheim, 1997.Google Scholar
  15. 15.
    H. Fleischhack and B. Grahlmann. Towards Compositional Verification of SDL Systems. Proc. of 31st HICSS — Software Technology Track, 404–414, IEEE Computer Society Press. 1998.Google Scholar
  16. 16.
    B. Grahlmann, M. Moeller, and U. Anhalt. A New Interface for the PEP Tool — Parallel Finite Automata. Proc. of 2. Workshop Algorithmen und Werkzeuge für Petrinetze, AIS 22, 21–26. FB Informatik Universität Oldenburg, 1995.Google Scholar
  17. 17.
    B. Grahlmann. The Reference Component of PEP. In E. Brinksma, editor, Proc. of TACAS'97, Enschede, LNCS 1217, 65–80, Springer, 1997.Google Scholar
  18. 18.
    B. Grahlmann. The PEP Tool. In O. Grumberg, editor, Proc. of CAV'97, Haifa, LNCS 1254, 440–443, Springer, 1997.Google Scholar
  19. 19.
    B. Graves. Computing Reachability Properties Hidden in Finite Net Unfoldings. Proc. of FST&TCS'97. LNCS, Springer. 1997.Google Scholar
  20. 20.
    G. Holzmann and D. Peled. The State of SPIN. In R. Alur and T. A. Henzinger, editors, Proc. of CAV'96, New Brunswick, LNCS 1102, 385–389. Springer, 1996.Google Scholar
  21. 21.
    J. E. Hopcraft and J. D. Ullmann. Introduction to Automata Theory, and Languages, and Computation. Addison Wesley, 1994.Google Scholar
  22. 22.
    B. W. Kernighan and D. M. Ritchie. The C Programming Language Prentice Hall, 1988.Google Scholar
  23. 23.
    S. Melzer and J. Esparza. Checking System Properties via Integer Programming. In H. R. Nielson, editor, Proc. of ESOP'96, LNCS 1058, 250–264, Springer, 1996.Google Scholar
  24. 24.
    S. Melzer and S. Römer. Synchronisierende Automaten in PEP. Proc. of 3. Workshop Algorithmen und Werkzeuge für Petrinetze, Technical Report 341, 52–59. AIFB Universität Karlsruhe, 1996.Google Scholar
  25. 25.
    C. Sibertin-Blanc. Cooperative Nets. In R. Valette, editor, Proc. of ATPN'94, LNCS 815, 471–490, Springer, 1994.Google Scholar
  26. 26.
    P. H. Starke. INA: Integrated Net Analyzer. Handbuch, cf. Scholar
  27. 27.
    G. Wimmel. A BDD-based Model Checker for the PEP Tool. Technical Report, University of Newcastle upon Tyne, 1997.Google Scholar

Copyright information

© Springer-Verlag Berlin Heidelberg 1998

Authors and Affiliations

  • Bernd Grahlmann
    • 1
  1. 1.Institut für InformatikUniversität HildesheimHildesheim

Personalised recommendations