Abstract
Well-structured transition systems (WSTS) are a broad and well-studied class of infinite-state systems, for which the problem of verifying the reachability of an upward-closed set of error states is decidable (subject to some technicalities). Recently, Bingham proposed a new algorithm for this problem, but applicable only to the special cases of broadcast protocols and petri nets. The algorithm exploits finite-state symbolic model checking and was shown to outperform the classical WSTS verification algorithm on a contrived example family of petri nets.
In this work, we generalize the earlier results to handle a larger class of WSTS, which we dub nicely sliceable, that includes broadcast protocols, petri nets, context-free grammars, and lossy channel systems. We also add an optimization to the algorithm that accelerates convergence. In addition, we introduce a new reduction that soundly converts the verification of parameterized systems with unbounded conjunctive guards into a verification problem on nicely sliceable WSTS. The reduction is complete if a certain decidable side condition holds. This allows us to access industrially relevant challenge problems from parameterized memory system verification. Our empirical results show that, although our new method performs worse than the classical approach on small petri net examples, it performs substantially better on the larger examples based on real, parameterized protocols (e.g., German’s cache coherence protocol, with data paths).
This work was supported in part by a UBC Li Tze Fong Memorial Fellowship and a grant from the Natural Sciences and Engineering Research Council of Canada.
Chapter PDF
Similar content being viewed by others
References
Abdulla, P., Jonsson, B.: Verifying programs with unreliable channels. In: Proceedings of the Eighth Annual IEEE Symposium on Logic in Computer Science, pp. 160–170 (1993)
Abdulla, P.A., Cerans, K., Jonsson, B., Yih-Kuen, T.: General decidability theorems for infinite-state systems. In: 10th Annual IEEE Symp. on Logic in Computer Science (LICS 1996), pp. 313–321 (1996)
Annichini, A., Bouajjani, A., Sighireanu, M.: TReX: A tool for reachability analysis of complex systems. In: Berry, G., Comon, H., Finkel, A. (eds.) CAV 2001. LNCS, vol. 2102, p. 368. Springer, Heidelberg (2001)
Bingham, J.: A new approach to upward closed set backward reachability analysis. In: 6th International Workshop on Verification of Infinite-State Systems, INFINITY (2004)
Bingham, J., Hu, A.J.: Empirically efficient verification for a class of infinite-state systems. In: Halbwachs, N., Zuck, L.D. (eds.) TACAS 2005. LNCS, vol. 3440, pp. 77–92. Springer, Heidelberg (2005), http://www.springerlink.com/
Bryant, R.E.: Graph-based algorithms for boolean function manipulation. IEEE Transactions on Computers C-35(8), 677–691 (1986)
Burch, J.R., Clarke, E.M., McMillan, K.L., Dill, D.L., Hwang, L.J.: Symbolic model checking: 1020 states and beyond. Information and Computation 98(2) (1992)
Chou, C.T., Mannava, P.K., Park, S.: A simple method for parameterized verification of cache coherence protocols. Formal Methods in Computer-Aided Design (2004)
Clarke, E.M., Emerson, E.A.: Design and synthesis of synchronization skeletons using branching time temporal logic. In: Kozen, D. (ed.) Logic of Programs 1981. LNCS, vol. 131, pp. 52–71. Springer, Heidelberg (1982)
Culler, D.E., Singh, J.P., Gupta, A.: Parallel Computer Architecture: A Hardware/Software Approach. Morgan Kaufmann, San Francisco (1998)
Delzanno, G.: Automatic verification of parameterized cache coherence protocols. In: Proceedings of the 12th International Conference on Computer Aided Verification (July 2000)
Delzanno, G., Raskin, J.F.: Symbolic representation of upward-closed sets. In: Schwartzbach, M.I., Graf, S. (eds.) TACAS 2000. LNCS, vol. 1785, pp. 426–440. Springer, Heidelberg (2000)
Delzanno, G., Raskin, J.F., Van Begin, L.: Attacking symbolic state explosion. In: Berry, G., Comon, H., Finkel, A. (eds.) CAV 2001. LNCS, vol. 2102, pp. 298–310. Springer, Heidelberg (2001)
Emerson, E.A., Kahlon, V.: Exact and efficient verification of parameterized cache coherence protocols. In: Geist, D., Tronci, E. (eds.) CHARME 2003. LNCS, vol. 2860, pp. 247–262. Springer, Heidelberg (2003)
Emerson, E.A., Kahlon, V.: Model checking guarded protocols. In: Eighteenth Annual IEEE Symposium on Logic in Computer Science (LICS), pp. 361–370 (June 2003)
Emerson, E.A., Kahlon, V.: Rapid parameterized model checking of snoopy cache protocols. In: Garavel, H., Hatcliff, J. (eds.) TACAS 2003. LNCS, vol. 2619, pp. 144–159. Springer, Heidelberg (2003)
Emerson, E.A., Namjoshi, K.S.: On model checking for non-deterministic infinite-state systems. In: Proceedings of LICS 1998, pp. 70–80 (1998)
Esparza, J., Finkel, A., Mayr, R.: On the verification of broadcast protocols. In: Proceedings of LICS 1999, pp. 352–359 (1999)
Finkel, A.: Reduction and covering of infinite reachability trees. Information and Computation 89(2), 144–179 (1990)
Finkel, A., Schnoebelen, P.: Well structured transition systems everywhere! Theoretical Computer Science 256(1-2), 63–92 (2001)
Ganty, P., Van Begin, L.: Non deterministic automata for the efficient verification of infinite-state. In: Presented at: CP+CV Workshop at European Joint Conferences on Theory and Practice of Software, ETAPS (2004)
Geeraerts, G., Raskin, J.-F., Van Begin, L.: Expand, Enlarge and Check: new algorithms for the coverability problem of WSTS. In: Lodaya, K., Mahajan, M. (eds.) FSTTCS 2004. LNCS, vol. 3328, pp. 287–298. Springer, Heidelberg (2004)
German, S.: Personal correspondence (2003)
Henzinger, T.A., Ho, P.-H., Wong-Toi, H.: Hytech: A model checker for hybrid systems. Software Tools for Technology Transfer 1, 110–122 (1997)
Higman, G.: Ordering by divisibility in abstract algebras. Proceedings of the London Mathematical Society (3) 2(7), 326–336 (1952)
Lahiri, S.K., Bryant, R.E.: Constructing quantified invariants via predicate abstraction. In: Steffen, B., Levi, G. (eds.) VMCAI 2004. LNCS, vol. 2937, pp. 267–281. Springer, Heidelberg (2004)
Lamport, L.: Specifying Systems: The TLA+ Language and Tools for Hardware and Software Engineers. Addision-Wesley, London (2002)
Pnueli, A., Ruah, S., Zuck, L.: Automatic deductive verification with invisible invariants. In: Margaria, T., Yi, W. (eds.) TACAS 2001. LNCS, vol. 2031, pp. 82–97. Springer, Heidelberg (2001)
Queille, J.-P., Sifakis, J.: Specification and verification of concurrent systems in Cesar. In: Programming 1982. LNCS, vol. 137, pp. 337–351. Springer, Heidelberg (1981)
Somenzi, F.: Colorado university decision diagram package (CUDD) webpage, http://vlsi.colorado.edu/~fabio/CUDD/cuddIntro.html
Author information
Authors and Affiliations
Editor information
Editors and Affiliations
Rights and permissions
Copyright information
© 2005 Springer-Verlag Berlin Heidelberg
About this paper
Cite this paper
Bingham, J., Hu, A.J. (2005). Empirically Efficient Verification for a Class of Infinite-State Systems. In: Halbwachs, N., Zuck, L.D. (eds) Tools and Algorithms for the Construction and Analysis of Systems. TACAS 2005. Lecture Notes in Computer Science, vol 3440. Springer, Berlin, Heidelberg. https://doi.org/10.1007/978-3-540-31980-1_6
Download citation
DOI: https://doi.org/10.1007/978-3-540-31980-1_6
Publisher Name: Springer, Berlin, Heidelberg
Print ISBN: 978-3-540-25333-4
Online ISBN: 978-3-540-31980-1
eBook Packages: Computer ScienceComputer Science (R0)