skip to main content
10.1145/1134285.1134308acmconferencesArticle/Chapter ViewAbstractPublication PagesicseConference Proceedingsconference-collections
Article

Managing space for finite-state verification

Published: 28 May 2006 Publication History

Abstract

Finite-state verification (FSV) techniques attempt to prove properties about a model of a system by examining all possible behaviors of that model. This approach suffers from the state-explosion problem, where the size of the model or the analysis costs may be exponentially large with respect to the size of the system. Using symbolic data structures to represent subsets of the state space has been shown to usually be an effective optimization approach for hardware verification. The value for software verification, however, is still unclear. In this paper, we investigate applying two symbolic data structures, Binary Decision Diagrams (BDDs) and Zero-suppressed Binary Decision Diagrams (ZDDs), in two FSV tools, LTSA and FLAVERS. We describe an experiment showing that these two symbolic approaches can improve the performance of both FSV tools and are more efficient than two other algorithms that store the state space explicitly. Moreover, the ZDD-based approach often runs faster and can handle larger systems than the BDD-based approach.

References

[1]
F. A. Aloul, I. L. Markov, and K. A. Sakallah. FORCE: A fast and easy-to-implement variable ordering heuristic. In Proceedings of the 13th ACM Great Lakes Symposium on VLSI, pages 116--119, Apr. 2003.]]
[2]
G. S. Avrunin, J. C. Corbett, M. B. Dwyer, C. S. Păasăareanu, and S. F. Siegel. Comparing finite-state verification techniques for concurrent software. TR UM-CS-1999-069, Department of Computer Science, U. of Massachusetts Amherst, Nov. 1999.]]
[3]
A. Aziz, S. Tasiran, and R. Brayton. BDD variable ordering for interacting finite state machines. In Proceedings of the 31st ACM/IEEE Design Automation Conference, pages 283--288, San Diego, CA, USA, Jun. 1994.]]
[4]
I. Beer, S. Ben-David, C. Eisner, D. Geist, L. Gluhovsky, T. Heyman, A. Landver, P. Paanah, Y. Rodeh, G. Ronin, and Y. Wolfsthal. Rulebase: Model checking at IBM. In Proceedings of the 9th International Conference on Computer Aided Verification, volume 1254 of LNCS, pages 480--483, Jun. 1997.]]
[5]
M. Ben-Ari. How to solve the Santa Claus problem. Concurrency: Practice and Experience, 10(6):485--496, 1998.]]
[6]
B. Bollig and I. Wegener. Improving the variable ordering of OBDDs is NP-Complete. IEEE Transactions on Computers, 45(9):993--1002, Sep. 1996.]]
[7]
R. E. Bryant. Symbolic Boolean manipulation with ordered binary-decision diagrams. ACM Computing Surveys, 24(3):293--318, Sep. 1992.]]
[8]
J. Burch, E. Clarke, K. McMillan, D. Dill, and L. Hwang. Symbolic model checking: 10 20 states and beyond. In Proceedings of the Fifth Annual IEEE Symposium on Logic in Computer Science, pages 1--33. IEEE Computer Society Press, Jun. 1990.]]
[9]
P. Chatalic and L. Simon. ZRES: The old davis-putman procedure meets ZBDD. In Proceedings of the 17th International Conference on Automated Deduction, volume 1831 of LNCS, pages 449--454, Jun. 2000.]]
[10]
A. Cimatti, E. M. Clarke, F. Giunchiglia, and M. Roveri. NuSMV: A new symbolic model verifier. In Proceedings of the 11th International Conference on Computer Aided Verification, volume 1633 of LNCS, pages 495--499, Jul. 1999.]]
[11]
Y. Dong, X. Du, Y. S. Ramakrishna, C. R. Ramakrishnan, I. V. Ramakrishnan, S. A. Smolka, O. Sokolsky, E. W. Stark, and D. S. Warren. Fighting livelock in the i-protocol: A comparative study of verification tools. In Proceedings of the 5th International Conference on Tools and Algorithms for Construction and Analysis of Systems, pages 74--88, Mar. 1999.]]
[12]
M. B. Dwyer, L. A. Clarke, J. M. Cobleigh, and G. Naumovich. Flow analysis for verifying properties of concurrent software systems. ACM Transactions on Software Engineering and Methodology, 13(4):359--430, 2004.]]
[13]
http://javabdd.sourceforge.net/. JavaBDD - Java Binary Decision Diagram library.]]
[14]
J. Magee and J. Kramer. Concurrency: State Models & Java Programs. John Wiley & Sons, NY, USA, 1999.]]
[15]
K. L. McMillan. Symbolic Model Checking. Kluwer Academic Publishers, MA, USA, 1993.]]
[16]
S. Minato. Binary Decision Diagrams and Applications for VLSI CAD. Kluwer Academic Publishers, MA, USA, 1996.]]
[17]
T. Yoneda, H. Hatori, A. Takahara, and S. Minato. BDDs vs. zero-suppressed BDDs: for CTL symbolic model checking of Petri Nets. In Proceedings of the First International Conference on Formal Methods in Computer-Aided Design, volume 1166 of LNCS, pages 435--449, Nov. 1996.]]

Cited By

View all
  • (2018)Statistical errors in software engineering experimentsProceedings of the 40th International Conference on Software Engineering10.1145/3180155.3180161(1195-1206)Online publication date: 27-May-2018

Recommendations

Comments

Information & Contributors

Information

Published In

cover image ACM Conferences
ICSE '06: Proceedings of the 28th international conference on Software engineering
May 2006
1110 pages
ISBN:1595933751
DOI:10.1145/1134285
Permission to make digital or hard copies of all or part of this work for personal or classroom use is granted without fee provided that copies are not made or distributed for profit or commercial advantage and that copies bear this notice and the full citation on the first page. Copyrights for components of this work owned by others than ACM must be honored. Abstracting with credit is permitted. To copy otherwise, or republish, to post on servers or to redistribute to lists, requires prior specific permission and/or a fee. Request permissions from [email protected]

Sponsors

Publisher

Association for Computing Machinery

New York, NY, United States

Publication History

Published: 28 May 2006

Permissions

Request permissions for this article.

Check for updates

Author Tags

  1. BDD
  2. FLAVERS
  3. LTSA
  4. ZDD
  5. finite-state verification

Qualifiers

  • Article

Conference

ICSE06
Sponsor:

Acceptance Rates

Overall Acceptance Rate 276 of 1,856 submissions, 15%

Upcoming Conference

ICSE 2025

Contributors

Other Metrics

Bibliometrics & Citations

Bibliometrics

Article Metrics

  • Downloads (Last 12 months)2
  • Downloads (Last 6 weeks)0
Reflects downloads up to 20 Jan 2025

Other Metrics

Citations

Cited By

View all
  • (2018)Statistical errors in software engineering experimentsProceedings of the 40th International Conference on Software Engineering10.1145/3180155.3180161(1195-1206)Online publication date: 27-May-2018

View Options

Login options

View options

PDF

View or Download as a PDF file.

PDF

eReader

View online with eReader.

eReader

Media

Figures

Other

Tables

Share

Share

Share this Publication link

Share on social media