Unfolding Concurrent Well-Structured Transition Systems

  • Frédéric Herbreteau
  • Grégoire Sutre
  • The Quang Tran
Part of the Lecture Notes in Computer Science book series (LNCS, volume 4424)


Our main objective is to combine partial-order methods with verification techniques for infinite-state systems in order to obtain efficient verification algorithms for concurrent infinite-state systems. Partial-order methods are commonly used in the analysis of finite systems consisting of many parallel components. In this paper we propose an extension of these methods to parallel compositions of infinite-state systems. We argue that it is advantageous to model each component by an event structure as this allows us to exhibit the concurrency present implicitly in some infinite-state systems such as automata with queues or counters. We generalize the notion of complete prefix from 1-safe Petri nets to all well-structured transition systems. We give an on-the-fly unfolding algorithm which given event structures representing the components produces an event structure representing their synchronized product. A prototype implementation demonstrates the benefits of our approach.


Transition System Event Structure Parallel Composition Label Transition System FIFO Queue 
These keywords were added by machine and not by the authors. This process is experimental and the keywords may be updated as the learning algorithm improves.


  1. [AČJT00]
    Abdulla, P.A., et al.: Algorithmic analysis of programs with well quasi-ordered domains. Information and Computation 160(1-2), 109–127 (2000)MATHCrossRefMathSciNetGoogle Scholar
  2. [AIN00]
    Abdulla, P.A., Iyer, S.P., Nylén, A.: Unfoldings of unbounded petri nets. In: Emerson, E.A., Sistla, A.P. (eds.) CAV 2000. LNCS, vol. 1855, pp. 495–507. Springer, Heidelberg (2000)CrossRefGoogle Scholar
  3. [AJKP98]
    Abdulla, P.A., et al.: A general approach to partial order reductions in symbolic verification (extended abstract). In: Vardi, M.Y. (ed.) CAV 1998. LNCS, vol. 1427, pp. 379–390. Springer, Heidelberg (1998)CrossRefGoogle Scholar
  4. [Arn94]
    Arnold, A.: Finite Transition Systems. Semantics of Communicating Systems. Prentice-Hall, Englewood Cliffs (1994)MATHGoogle Scholar
  5. [CGP01]
    Couvreur, J.-M., Grivet, S., Poitrenaud, D.: Unfolding of products of symmetrical petri nets. In: Colom, J.-M., Koutny, M. (eds.) ICATPN 2001. LNCS, vol. 2075, pp. 121–143. Springer, Heidelberg (2001)CrossRefGoogle Scholar
  6. [DJN04]
    Desel, J., Juhás, G., Neumair, C.: Finite unfoldings of unbounded petri nets. In: Cortadella, J., Reisig, W. (eds.) ICATPN 2004. LNCS, vol. 3099, pp. 157–176. Springer, Heidelberg (2004)Google Scholar
  7. [ER99]
    Esparza, J., Römer, S.: An unfolding algorithm for synchronous products of transition systems. In: Baeten, J.C.M., Mauw, S. (eds.) CONCUR 1999. LNCS, vol. 1664, pp. 2–20. Springer, Heidelberg (1999)CrossRefGoogle Scholar
  8. [ERV02]
    Esparza, J., Römer, S., Vogler, W.: An improvement of McMillan’s unfolding algorithm. Formal Methods in System Design 20(3), 285–310 (2002)MATHCrossRefGoogle Scholar
  9. [Fin90]
    Finkel, A.: Reduction and covering of infinite reachability trees. Information and Computation 89(2), 144–179 (1990)MATHCrossRefMathSciNetGoogle Scholar
  10. [FS01]
    Finkel, A., Schnoebelen, P.: Well-structured transition systems everywhere? Theoretical Computer Science 256(1-2), 63–92 (2001)MATHCrossRefMathSciNetGoogle Scholar
  11. [God96]
    Godefroid, P.: Partial-Order Methods for the Verification of Concurrent Systems. LNCS, vol. 1032. Springer, Heidelberg (1996)Google Scholar
  12. [KK03]
    Khomenko, V., Koutny, M.: Branching processes of high-level petri nets. In: Garavel, H., Hatcliff, J. (eds.) ETAPS 2003 and TACAS 2003. LNCS, vol. 2619, pp. 458–472. Springer, Heidelberg (2003)Google Scholar
  13. [LI05]
    Lei, Y., Iyer, S.P.: An approach to unfolding asynchronous communication protocols. In: Fitzgerald, J.S., Hayes, I.J., Tarlecki, A. (eds.) FM 2005. LNCS, vol. 3582, pp. 334–349. Springer, Heidelberg (2005)Google Scholar
  14. [Maz86]
    Mazurkiewicz, A.W.: Trace theory. In: Brauer, W., Reisig, W., Rozenberg, G. (eds.) APN 1986. LNCS, vol. 255, pp. 279–324. Springer, Heidelberg (1987)Google Scholar
  15. [McM95]
    McMillan, K.L.: A technique of state space search based on unfolding. Formal Methods in System Design 6(1), 45–45 (1995)MATHCrossRefMathSciNetGoogle Scholar
  16. [NPW81]
    Nielsen, M., Plotkin, G., Winskel, G.: Petri nets, event structures and domains, part I. Theoretical Computer Science 13, 85–108 (1981)MATHCrossRefMathSciNetGoogle Scholar
  17. [NRT95]
    Nielsen, M., Rozenberg, G., Thiagarajan, P.S.: Transition systems, event structures and unfoldings. Information and Computation 118(2), 191–207 (1995)MATHCrossRefMathSciNetGoogle Scholar
  18. [Pel93]
    Peled, D.: All from one, one for all: on model checking using representatives. In: Courcoubetis, C. (ed.) CAV 1993. LNCS, vol. 697, pp. 409–423. Springer, Heidelberg (1993)Google Scholar
  19. [Pep]
    Pep tool. Homepage:
  20. [Tin]
    Tina tool. Homepage:
  21. [Val91]
    Valmari, A.: Stubborn sets for reduced state space generation. In: Rozenberg, G. (ed.) APN 1990. LNCS, vol. 483, Springer, Heidelberg (1991)Google Scholar

Copyright information

© Springer Berlin Heidelberg 2007

Authors and Affiliations

  • Frédéric Herbreteau
    • 1
  • Grégoire Sutre
    • 1
  • The Quang Tran
    • 1
  1. 1.LaBRI, CNRS UMR 5800, Domaine Universitaire, TalenceFrance

Personalised recommendations