Skip to main content

Improving Static Variable Orders Via Invariants

  • Conference paper
Petri Nets and Other Models of Concurrency – ICATPN 2007 (ICATPN 2007)

Part of the book series: Lecture Notes in Computer Science ((LNTCS,volume 4546))

Included in the following conference series:

Abstract

Choosing a good variable order is crucial for making symbolic state-space generation algorithms truly efficient. One such algorithm is the MDD-based Saturation algorithm for Petri nets implemented in , whose efficiency relies on exploiting event locality.

This paper presents a novel, static ordering heuristic that considers place invariants of Petri nets. In contrast to related work, we use the functional dependencies encoded by invariants to merge decision-diagram variables, rather than to eliminate them. We prove that merging variables always yields smaller MDDs and improves event locality, while eliminating variables may increase MDD sizes and break locality. Combining this idea of merging with heuristics for maximizing event locality, we obtain an algorithm for static variable order which outperforms competing approaches regarding both time-efficiency and memory-efficiency, as we demonstrate by extensive benchmarking.

Work supported in part by the National Science Foundation under grants CNS- 0501747 and CNS-0501748 and by the EPSRC under grant GR/S86211/01.

This is a preview of subscription content, log in via an institution to check access.

Access this chapter

Chapter
USD 29.95
Price excludes VAT (USA)
  • Available as PDF
  • Read on any device
  • Instant download
  • Own it forever
eBook
USD 39.99
Price excludes VAT (USA)
  • Available as PDF
  • Read on any device
  • Instant download
  • Own it forever
Softcover Book
USD 54.99
Price excludes VAT (USA)
  • Compact, lightweight edition
  • Dispatched in 3 to 5 business days
  • Free shipping worldwide - see info

Tax calculation will be finalised at checkout

Purchases are for personal use only

Institutional subscriptions

Preview

Unable to display preview. Download preview PDF.

Unable to display preview. Download preview PDF.

References

  1. Aziz, A., Taşiran, S., Brayton, R.K.: BDD variable ordering for interacting finite state machines. In: DAC, pp. 283–288. ACM Press, New York (1994)

    Google Scholar 

  2. Bollig, B., Wegener, I.: Improving the variable ordering of OBDDs is NP-complete. IEEE Trans. on Computers 45(9), 993–1002 (1996)

    Article  MATH  Google Scholar 

  3. Bryant, R.E.: Graph-based algorithms for boolean function manipulation. IEEE Trans. Comp. 35(8), 677–691 (1986)

    MATH  Google Scholar 

  4. Burch, J.R., Clarke, E.M., Long, D.E.: Symbolic model checking with partitioned transition relations. In: Very Large Scale Integration, IFIP Transactions, North-Holland, pp. 49–58 (1991)

    Google Scholar 

  5. Campos, J., Chiola, G., Silva, M.: Ergodicity and throughput bounds of Petri nets with unique consistent firing count vectors. IEEE Trans. Softw. Eng. 17(2), 117–126 (1991)

    Article  MathSciNet  Google Scholar 

  6. Chiola, G.: Compiling techniques for the analysis of stochastic Petri nets. In: Modeling Techniques and Tools for Computer Performance Evaluation, pp. 11–24. Plenum Press, New York (1989)

    Google Scholar 

  7. Chiola, G., Franceschinis, G., Gaeta, R., Ribaudo, M.: GreatSPN 1.7: Graphical editor and analyzer for timed and stochastic Petri nets. Performance Evaluation 24(1,2), 47–68 (1995)

    Article  MATH  Google Scholar 

  8. Ciardo, G.: Petri nets with marking-dependent arc multiplicity: Properties and analysis. In: Valette, R. (ed.) Application and Theory of Petri Nets 1994. LNCS, vol. 815, pp. 179–198. Springer, Heidelberg (1994)

    Google Scholar 

  9. Ciardo, G., Jones, R.L., Miner, A.S., Siminiceanu, R.: Logical and stochastic modeling with SMART. Performance Evaluation 63, 578–608 (2006)

    Article  Google Scholar 

  10. Ciardo, G., Lüttgen, G., Siminiceanu, R.: Saturation: An efficient iteration strategy for symbolic state space generation. In: Margaria, T., Yi, W. (eds.) ETAPS 2001 and TACAS 2001. LNCS, vol. 2031, pp. 328–342. Springer, Heidelberg (2001)

    Google Scholar 

  11. Ciardo, G., Marmorstein, R., Siminiceanu, R.: Saturation unbound. In: Garavel, H., Hatcliff, J. (eds.) ETAPS 2003 and TACAS 2003. LNCS, vol. 2619, pp. 379–393. Springer, Heidelberg (2003)

    Google Scholar 

  12. Ciardo, G., Marmorstein, R., Siminiceanu, R.: The Saturation algorithm for symbolic state space exploration. STTT 8(1), 4–25 (2006)

    Article  Google Scholar 

  13. Ciardo, G., Yu, A.J.: Saturation-based symbolic reachability analysis using conjunctive and disjunctive partitioning. In: Borrione, D., Paul, W. (eds.) CHARME 2005. LNCS, vol. 3725, pp. 146–161. Springer, Heidelberg (2005)

    Chapter  Google Scholar 

  14. Colom, J., Silva, M.: Improving the linearly based characterization of P/T nets. In: Advances in Petri Nets. LNCS, vol. 483, pp. 113–145. Springer, Heidelberg (1991)

    Google Scholar 

  15. Colom, J.M., Silva, M.: Convex geometry and semiflows in P/T nets: A comparative study of algorithms for the computation of minimal p-semiflows. In: ICATPN, pp. 74–95 (1989)

    Google Scholar 

  16. Corbett, J.C.: Evaluating deadlock detection methods for concurrent software. IEEE Trans. Softw. Eng. 22(3), 161–180 (1996)

    Article  Google Scholar 

  17. Davies, I., Knottenbelt, W., Kritzinger, P.S.: Symbolic methods for the state space exploration of GSPN models. In: Field, T., Harrison, P.G., Bradley, J., Harder, U. (eds.) TOOLS 2002. LNCS, vol. 2324, pp. 188–199. Springer, Heidelberg (2002)

    Chapter  Google Scholar 

  18. Grumberg, O., Livne, S., Markovitch, S.: Learning to order BDD variables in verification. J. Art. Int. Res. 18, 83–116 (2003)

    MATH  MathSciNet  Google Scholar 

  19. Hu, A.J., Dill, D.L.: Reducing BDD size by exploiting functional dependencies. In: DAC, pp. 266–271. ACM Press, New York (1993)

    Google Scholar 

  20. Itai, A., Rodeh, M.: Symmetry breaking in distributed networks. In: Foundations of Computer Science, pp. 150–158. IEEE Press, New York (1981)

    Google Scholar 

  21. Jeong, S.-W., Plessier, B., Hachtel, G.D., Somenzi, F.: Variable ordering and selection for FSM traversal. In: ICCAD, pp. 476–479. ACM Press, New York (1991)

    Google Scholar 

  22. Kam, T., Villa, T., Brayton, R., Sangiovanni-Vincentelli, A.: Multi-valued decision diagrams: Theory and applications. Multiple-Valued Logic 4(1–2), 9–62 (1998)

    MATH  MathSciNet  Google Scholar 

  23. McMillan, K.: Symbolic Model Checking: An Approach to the State-Explosion Problem. PhD thesis, Carnegie-Mellon Univ. (1992)

    Google Scholar 

  24. Miner, A.S.: Implicit GSPN reachability set generation using decision diagrams. Performance Evaluation 56(1-4), 145–165 (2004)

    Article  Google Scholar 

  25. Miner, A.S., Ciardo, G.: Efficient reachability set generation and storage using decision diagrams. In: Donatelli, S., Kleijn, J.H.C.M. (eds.) ICATPN 1999. LNCS, vol. 1639, pp. 6–25. Springer, Heidelberg (1999)

    Google Scholar 

  26. Murata, T.: Petri nets: properties, analysis and applications. Proc. of the IEEE 77(4), 541–579 (1989)

    Article  Google Scholar 

  27. Pastor, E., Cortadella, J.: Efficient encoding schemes for symbolic analysis of Petri nets. In: DATE, pp. 790–795. IEEE Press, New York (1998)

    Google Scholar 

  28. Pastor, E., Cortadella, J., Peña, M.: Structural methods to improve the symbolic analysis of Petri nets. In: Donatelli, S., Kleijn, J.H.C.M. (eds.) ICATPN 1999. LNCS, vol. 1639, pp. 26–45. Springer, Heidelberg (1999)

    Google Scholar 

  29. Pastor, E., Cortadella, J., Roig, O.: Symbolic analysis of bounded Petri nets. IEEE Trans.Computers 50(5), 432–448 (2001)

    Article  MathSciNet  Google Scholar 

  30. Pastor, E., Roig, O., Cortadella, J., Badia, R.: Petri net analysis using boolean manipulation. In: Valette, R. (ed.) Application and Theory of Petri Nets 1994. LNCS, vol. 815, pp. 416–435. Springer, Heidelberg (1994)

    Google Scholar 

  31. Ramachandran, P., Kamath, M.: On place invariant sets and the rank of the incidence matrix of Petri nets. In: Systems, Man, and Cybernetics, pp. 160–165. IEEE Press, New York (1998)

    Google Scholar 

  32. Reisig, W.: Elements of Distributed Algorithms: Modeling and Analysis with Petri Nets. Springer, Heidelberg (1998)

    MATH  Google Scholar 

  33. Roig, O., Cortadella, J., Pastor, E.: Verification of asynchronous circuits by BDD-based model checking of Petri nets. In: DeMichelis, G., Díaz, M. (eds.) Application and Theory of Petri Nets 1995. LNCS, vol. 935, pp. 374–391. Springer, Heidelberg (1995)

    Google Scholar 

  34. Sankaranarayanan, S., Sipma, H., Manna, Z.: Petri net analysis using invariant generation. In: Verification: Theory and Practice. LNCS, vol. 2772, pp. 682–701. Springer, Heidelberg (2003)

    Google Scholar 

  35. Schmidt, K.: Using Petri net invariants in state space construction. In: Garavel, H., Hatcliff, J. (eds.) ETAPS 2003 and TACAS 2003. LNCS, vol. 2619, pp. 473–488. Springer, Heidelberg (2003)

    Google Scholar 

  36. Schmiedle, F., Günther, W., Drechsler, R.: Dynamic Re-Encoding During MDD Minimization. In: ISMVL (2000)

    Google Scholar 

  37. Semenov, A., Yakovlev, A.: Combining partial orders and symbolic traversal for efficient verification of asynchronous circuits. Techn. Rep. CS-TR 501, Newcastle Univ. (1995)

    Google Scholar 

  38. Sieling, D., Wegener, I.: NC-algorithms for operations on binary decision diagrams. Parallel Processing Letters 3, 3–12 (1993)

    Article  MathSciNet  Google Scholar 

  39. Siminiceanu, R., Ciardo, G.: New metrics for static variable ordering in decision diagrams. In: Hermanns, H., Palsberg, J. (eds.) TACAS 2006 and ETAPS 2006. LNCS, vol. 3920, pp. 90–104. Springer, Heidelberg (2006)

    Chapter  Google Scholar 

  40. Tilgner, M., Takahashi, Y., Ciardo, G.: SNS 1.0: Synchronized Network Solver. In: Manufacturing and Petri Nets, pp. 215–234 (1996)

    Google Scholar 

  41. Valk, R.: Generalizations of Petri nets. In: Gruska, J., Chytil, M.P. (eds.) Mathematical Foundations of Computer Science 1981. LNCS, vol. 118, pp. 140–155. Springer, Heidelberg (1981)

    Google Scholar 

  42. Woodside, C.M., Li, Y.: Performance Petri net analysis of communications protocol software by delay-equivalent aggregation. In: PNPM, pp. 64–73 (1991)

    Google Scholar 

Download references

Author information

Authors and Affiliations

Authors

Editor information

Jetty Kleijn Alex Yakovlev

Rights and permissions

Reprints and permissions

Copyright information

© 2007 Springer Berlin Heidelberg

About this paper

Cite this paper

Ciardo, G., Lüttgen, G., Yu, A.J. (2007). Improving Static Variable Orders Via Invariants. In: Kleijn, J., Yakovlev, A. (eds) Petri Nets and Other Models of Concurrency – ICATPN 2007. ICATPN 2007. Lecture Notes in Computer Science, vol 4546. Springer, Berlin, Heidelberg. https://doi.org/10.1007/978-3-540-73094-1_8

Download citation

  • DOI: https://doi.org/10.1007/978-3-540-73094-1_8

  • Publisher Name: Springer, Berlin, Heidelberg

  • Print ISBN: 978-3-540-73093-4

  • Online ISBN: 978-3-540-73094-1

  • eBook Packages: Computer ScienceComputer Science (R0)

Publish with us

Policies and ethics