TACAS 2007: Tools and Algorithms for the Construction and Analysis of Systems pp 648-663 | Cite as
Bounded Reachability Checking of Asynchronous Systems Using Decision Diagrams
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.Abdulla, P., Iyer, S., Nylén, A.: SAT-solving the coverability problem for Petri nets. FMSD 24(1), 25–43 (2004)MATHGoogle Scholar
- 2.Bahar, R.I., et al.: Algebraic decision diagrams and their applications. FMSD 10(2-3), 171–206 (1997)Google Scholar
- 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.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.Cabodi, G., Nocco, S., Quer, S.: Are BDDs still alive within sequential verification? STTT 7(2), 129–142 (2005)CrossRefGoogle Scholar
- 6.Ciardo, G., et al.: Logical and stochastic modeling with SMART. Perf. Eval. 63, 578–608 (2006)CrossRefGoogle Scholar
- 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.Ciardo, G., Marmorstein, R., Siminiceanu, R.: The saturation algorithm for symbolic state space exploration. STTT 8(1), 4–25 (2006)CrossRefGoogle Scholar
- 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.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.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.Clarke, E., et al.: Bounded model checking using satisfiability solving. FMSD 19(1), 7–34 (2001)MATHGoogle Scholar
- 13.Clarke, E., Grumberg, O., Peled, D.: Model Checking. MIT Press, Cambridge (1999)Google Scholar
- 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.Corbett, J.C.: Evaluating deadlock detection methods for concurrent software. IEEE Trans. Softw. Eng. 22(3), 161–180 (1996)CrossRefGoogle Scholar
- 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.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.Heljanko, K., Junttila, T.: Advanced tutorial on bounded model checking, ACSD/ICATPN (2006), http://www.tcs.hut.fi/~kepa/bmc-tutorial.html
- 19.Heljanko, K., Niemelä, I.: Answer set programming and bounded model checking. In: Answer Set Programming (2001)Google Scholar
- 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.Kam, T., et al.: Multi-valued decision diagrams: Theory and applications. Multiple-Valued Logic 4(1-2), 9–62 (1998)MATHMathSciNetGoogle Scholar
- 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.McMillan, K.: A technique of state space search based on unfolding. FMSD 6(1), 45–65 (1995)MATHMathSciNetGoogle Scholar
- 24.Moskewicz, M., et al.: Chaff: Engineering an efficient SAT solver. In: DAC, pp. 530–535. ACM Press, New York (2001)Google Scholar
- 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.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.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.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.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