On the Computation of McMillan’s Prefix for Contextual Nets and Graph Grammars

  • Paolo Baldan
  • Alessandro Bruni
  • Andrea Corradini
  • Barbara König
  • Stefan Schwoon
Part of the Lecture Notes in Computer Science book series (LNCS, volume 6372)


In recent years, a research thread focused on the use of the unfolding semantics for verification purposes. This started with a paper by McMillan, which devises an algorithm for constructing a finite complete prefix of the unfolding of a safe Petri net, providing a compact representation of the reachability graph. The extension to contextual nets and graph transformation systems is far from being trivial because events can have multiple causal histories. Recently, we proposed an abstract algorithm that generalizes McMillan’s construction to bounded contextual nets without resorting to an encoding into plain P/T nets. Here, we provide a more explicit construction that renders the algorithm effective. To allow for an inductive definition of concurrency, missing in the original proposal and essential for an efficient unfolding procedure, the key intuition is to associate histories not only with events, but also with places. Additionally, we outline how the proposed algorithm can be extended to graph transformation systems, for which previous algorithms based on the encoding of read arcs would not be applicable.


Graph Transformation Graph Grammar Extended Event Reachability Graph Causal History 
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.


Unable to display preview. Download preview PDF.

Unable to display preview. Download preview PDF.


  1. 1.
    Baldan, P., Chatain, T., Haar, S., König, B.: Unfolding-based diagnosis of systems with an evolving topology. In: van Breugel, F., Chechik, M. (eds.) CONCUR 2008. LNCS, vol. 5201, pp. 203–217. Springer, Heidelberg (2008)CrossRefGoogle Scholar
  2. 2.
    Baldan, P., Corradini, A., König, B.: Verifying finite-state graph grammars: an unfolding-based approach. In: Gardner, P., Yoshida, N. (eds.) CONCUR 2004. LNCS, vol. 3170, pp. 83–98. Springer, Heidelberg (2004)CrossRefGoogle Scholar
  3. 3.
    Baldan, P., Corradini, A., König, B., Schwoon, S.: McMillan’s complete prefix for contextual nets. In: Jensen, K., van der Aalst, W.M.P., Billington, J. (eds.) Transactions on Petri Nets and Other Models of Concurrency I. LNCS, vol. 5100, pp. 199–220. Springer, Heidelberg (2008)CrossRefGoogle Scholar
  4. 4.
    Baldan, P., Corradini, A., Montanari, U.: An event structure semantics for P/T contextual nets: Asymmetric event structures. In: Nivat, M. (ed.) FOSSACS 1998. LNCS, vol. 1378, pp. 63–80. Springer, Heidelberg (1998)CrossRefGoogle Scholar
  5. 5.
    Baldan, P., Corradini, A., Montanari, U., Ribeiro, L.: Unfolding Semantics of Graph Transformation. Information and Computation 205, 733–782 (2007)zbMATHCrossRefMathSciNetGoogle Scholar
  6. 6.
    Baldan, P., Corradini, A., Heindel, T., König, B., Sobociński, P.: Unfolding grammars in adhesive categories. In: Kurz, A., Lenisa, M., Tarlecki, A. (eds.) CALCO 2009. LNCS, vol. 5728, pp. 350–366. Springer, Heidelberg (2009)CrossRefGoogle Scholar
  7. 7.
    Benveniste, A., Haar, S., Fabre, E., Jard, C.: Distributed monitoring of concurrent and asynchronous systems. In: Amadio, R.M., Lugiez, D. (eds.) CONCUR 2003. LNCS, vol. 2761, pp. 1–26. Springer, Heidelberg (2003)CrossRefGoogle Scholar
  8. 8.
    Bonet, B., Haslum, P., Hickmott, S.L., Thiébaux, S.: Directed unfolding of Petri nets. In: Jensen, K., van der Aalst, W.M.P., Billington, J. (eds.) Transactions on Petri Nets and Other Models of Concurrency I. LNCS, vol. 5100, pp. 172–198. Springer, Heidelberg (2008)CrossRefGoogle Scholar
  9. 9.
    Langerak, R.: Transformation and Semantics for LOTOS. Ph.D. thesis, Department of Computer Science, University of Twente (1992)Google Scholar
  10. 10.
    McMillan, K.: Using unfoldings to avoid the state explosion problem in the verification of asynchronous circuits. In: Probst, D.K., von Bochmann, G. (eds.) CAV 1992. LNCS, vol. 663, pp. 164–174. Springer, Heidelberg (1993)Google Scholar
  11. 11.
    McMillan, K.: Symbolic Model Checking. Kluwer Academic Publishers, Dordrecht (1993)zbMATHGoogle Scholar
  12. 12.
    Nielsen, M., Plotkin, G., Winskel, G.: Petri Nets, Event Structures and Domains, Part 1. Theoretical Computer Science 13, 85–108 (1981)zbMATHCrossRefMathSciNetGoogle Scholar
  13. 13.
    Pinna, G.M., Poigné, A.: On the nature of events: another perspective in concurrency. Theoretical Computer Science 138(2), 425–454 (1995)zbMATHCrossRefMathSciNetGoogle Scholar
  14. 14.
    Vogler, W., Semenov, A., Yakovlev, A.: Unfolding and finite prefix for nets with read arcs. In: Sangiorgi, D., de Simone, R. (eds.) CONCUR 1998. LNCS, vol. 1466, pp. 501–516. Springer, Heidelberg (1998)CrossRefGoogle Scholar

Copyright information

© Springer-Verlag Berlin Heidelberg 2010

Authors and Affiliations

  • Paolo Baldan
    • 1
  • Alessandro Bruni
    • 1
  • Andrea Corradini
    • 2
  • Barbara König
    • 3
  • Stefan Schwoon
    • 4
  1. 1.Dipartimento di Matematica Pura e ApplicataUniversità di PadovaItaly
  2. 2.Dipartimento di InformaticaUniversità di PisaItaly
  3. 3.Abteilung für Informatik und Angewandte KognitionswissenschaftUniversität Duisburg-EssenGermany
  4. 4.LSV, ENS Cachan & CNRSINRIA SaclayFrance

Personalised recommendations