Bounded Reachability Checking of Asynchronous Systems Using Decision Diagrams

  • Andy Jinqing Yu
  • Gianfranco Ciardo
  • Gerald Lüttgen
Part of the Lecture Notes in Computer Science book series (LNCS, volume 4424)

Abstract

Bounded reachability or model checking is widely believed to work poorly when using decision diagrams instead of SAT procedures. Recent research suggests this to be untrue with regards to synchronous systems, particularly digital circuits. This paper shows that the belief is also a myth for asynchronous systems, such as models specified by Petri nets. We propose Bounded Saturation, a new algorithm to compute bounded state spaces using Multi-way Decision Diagrams (MDDs). This is based on the established Saturation algorithm which benefits from a non-standard search strategy that is very different from breadth-first search. To bound Saturation, we employ Edge-Valued MDDs and rework its search strategy. Experimental results show that our algorithm often, but not always, compares favorably against two SAT-based approaches advocated in the literature for deadlock checking in Petri nets.

References

  1. 1.
    Abdulla, P., Iyer, S., Nylén, A.: SAT-solving the coverability problem for Petri nets. FMSD 24(1), 25–43 (2004)MATHGoogle Scholar
  2. 2.
    Bahar, R.I., et al.: Algebraic decision diagrams and their applications. FMSD 10(2-3), 171–206 (1997)Google Scholar
  3. 3.
    Biere, A., et al.: Symbolic model checking without BDDs. In: Cleaveland, W.R. (ed.) ETAPS 1999 and TACAS 1999. LNCS, vol. 1579, pp. 193–207. Springer, Heidelberg (1999)CrossRefGoogle Scholar
  4. 4.
    Burch, J.R., Clarke, E.M., Long, D.E.: Symbolic model checking with partitioned transition relations. In: VLSI, pp. 49–58 (1991)Google Scholar
  5. 5.
    Cabodi, G., Nocco, S., Quer, S.: Are BDDs still alive within sequential verification? STTT 7(2), 129–142 (2005)CrossRefGoogle Scholar
  6. 6.
    Ciardo, G., et al.: Logical and stochastic modeling with SMART. Perf. Eval. 63, 578–608 (2006)CrossRefGoogle Scholar
  7. 7.
    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)CrossRefGoogle Scholar
  8. 8.
    Ciardo, G., Marmorstein, R., Siminiceanu, R.: The saturation algorithm for symbolic state space exploration. STTT 8(1), 4–25 (2006)CrossRefGoogle Scholar
  9. 9.
    Ciardo, G., Siminiceanu, R.: Using edge-valued decision diagrams for symbolic generation of shortest paths. In: Aagaard, M.D., O’Leary, J.W. (eds.) FMCAD 2002. LNCS, vol. 2517, pp. 256–273. Springer, Heidelberg (2002)Google Scholar
  10. 10.
    Ciardo, G., Yu, A.: 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)CrossRefGoogle Scholar
  11. 11.
    Cimatti, A., et al.: NuSMV: A new symbolic model verifier. In: Halbwachs, N., Peled, D.A. (eds.) CAV 1999. LNCS, vol. 1633, pp. 495–499. Springer, Heidelberg (1999)CrossRefGoogle Scholar
  12. 12.
    Clarke, E., et al.: Bounded model checking using satisfiability solving. FMSD 19(1), 7–34 (2001)MATHGoogle Scholar
  13. 13.
    Clarke, E., Grumberg, O., Peled, D.: Model Checking. MIT Press, Cambridge (1999)Google Scholar
  14. 14.
    Copty, F., et al.: Benefits of bounded model checking at an industrial setting. In: Berry, G., Comon, H., Finkel, A. (eds.) CAV 2001. LNCS, vol. 2102, pp. 436–453. Springer, Heidelberg (2001)Google Scholar
  15. 15.
    Corbett, J.C.: Evaluating deadlock detection methods for concurrent software. IEEE Trans. Softw. Eng. 22(3), 161–180 (1996)CrossRefGoogle Scholar
  16. 16.
    The VIS Group: VIS: A system for verification and synthesis. In: Alur, R., Henzinger, T.A. (eds.) CAV 1996. LNCS, vol. 1102, pp. 428–432. Springer, Heidelberg (1996)Google Scholar
  17. 17.
    Heljanko, K.: Bounded reachability checking with process semantics. In: Larsen, K.G., Nielsen, M. (eds.) CONCUR 2001. LNCS, vol. 2154, pp. 218–232. Springer, Heidelberg (2001)CrossRefGoogle Scholar
  18. 18.
    Heljanko, K., Junttila, T.: Advanced tutorial on bounded model checking, ACSD/ICATPN (2006), http://www.tcs.hut.fi/~kepa/bmc-tutorial.html
  19. 19.
    Heljanko, K., Niemelä, I.: Answer set programming and bounded model checking. In: Answer Set Programming (2001)Google Scholar
  20. 20.
    Ashar, P., et al.: F-Soft: Software Verification Platform. In: Etessami, K., Rajamani, S.K. (eds.) CAV 2005. LNCS, vol. 3576, pp. 301–306. Springer, Heidelberg (2005)Google Scholar
  21. 21.
    Kam, T., et al.: Multi-valued decision diagrams: Theory and applications. Multiple-Valued Logic 4(1-2), 9–62 (1998)MATHMathSciNetGoogle Scholar
  22. 22.
    Lai, Y.-T., Sastry, S.: Edge-valued binary decision diagrams for multi-level hierarchical verification. In: DAC, pp. 608–613. IEEE Computer Society Press, Los Alamitos (1992)Google Scholar
  23. 23.
    McMillan, K.: A technique of state space search based on unfolding. FMSD 6(1), 45–65 (1995)MATHMathSciNetGoogle Scholar
  24. 24.
    Moskewicz, M., et al.: Chaff: Engineering an efficient SAT solver. In: DAC, pp. 530–535. ACM Press, New York (2001)Google Scholar
  25. 25.
    Ogata, S., Tsuchiya, T., Kikuno, T.: SAT-based verification of safe Petri nets. In: Wang, F. (ed.) ATVA 2004. LNCS, vol. 3299, pp. 79–92. Springer, Heidelberg (2004)Google Scholar
  26. 26.
    Rabinovitz, I., Grumberg, O.: Bounded model checking of concurrent programs. In: Etessami, K., Rajamani, S.K. (eds.) CAV 2005. LNCS, vol. 3576, pp. 82–97. Springer, Heidelberg (2005)Google Scholar
  27. 27.
    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)CrossRefGoogle Scholar
  28. 28.
    Solé, M., Pastor, E.: Traversal techniques for concurrent systems. In: Aagaard, M.D., O’Leary, J.W. (eds.) FMCAD 2002. LNCS, vol. 2517, pp. 220–237. Springer, Heidelberg (2002)Google Scholar
  29. 29.
    Tzoref, R., et al.: An optimized symbolic bounded model checking engine. In: Geist, D., Tronci, E. (eds.) CHARME 2003. LNCS, vol. 2860, pp. 141–149. Springer, Heidelberg (2003)Google Scholar

Copyright information

© Springer Berlin Heidelberg 2007

Authors and Affiliations

  • Andy Jinqing Yu
    • 1
  • Gianfranco Ciardo
    • 1
  • Gerald Lüttgen
    • 2
  1. 1.Department of Computer Science and Engineering, University of California, Riverside, CA 92521USA
  2. 2.Department of Computer Science, University of York, York YO10 5DDUK

Personalised recommendations