ACM Home Page
Please provide us with feedback. Feedback
Disjunctive image computation for software verification
Full text PdfPdf (379 KB)
Source
ACM Transactions on Design Automation of Electronic Systems (TODAES) archive
Volume 12 ,  Issue 2  (April 2007) table of contents
Article No. 10  
Year of Publication: 2007
ISSN:1084-4309
Authors
Chao Wang  NEC Laboratories America, Princeton, NJ
Zijiang Yang  Western Michigan University, Kalamazoo, MI
Franjo Ivančić  NEC Laboratories America, Princeton, NJ
Aarti Gupta  NEC Laboratories America, Princeton, NJ
Publisher
ACM  New York, NY, USA
Bibliometrics
Downloads (6 Weeks): 4,   Downloads (12 Months): 71,   Citation Count: 1
Additional Information:

abstract   references   cited by   index terms   collaborative colleagues  

Tools and Actions: Request Permissions Request Permissions    Review this Article  
DOI Bookmark: Use this link to bookmark this Article: http://doi.acm.org/10.1145/1230800.1230802
What is a DOI?

ABSTRACT

Existing BDD-based symbolic algorithms designed for hardware designs do not perform well on software programs. We propose novel techniques based on unique characteristics of software programs. Our algorithm divides an image computation step into a disjunctive set of easier ones that can be performed in isolation. We use hypergraph partitioning to minimize the number of live variables in each disjunctive component, and variable scopes to simplify transition relations and reachable state subsets. Our experiments on nontrivial C programs show that BDD-based symbolic algorithms can directly handle software models with a much larger number of state variables than for hardware designs.


REFERENCES

Note: OCR errors may be found in this Reference List extracted from the full text article. ACM has opted to expose the complete List rather than only correct and linked references.

 
1
 
2
3
 
4
 
5
Barner, S. and Rabinovitz, I. 2003. Efficient symbolic model checking of software using partial disjunctive partitioning. In Proceedings of the 12th Advanced Research Working Conference on Correct Hardware Design and Verification Methods (CHARME). Lecture Notes in Computer Science, vol. 2860. Springer Verlag, Berlin.
 
6
 
7
 
8
 
9
10
 
11
Burch, J. R., Clarke, E. M., McMillan, K. L., Dill, D. L., and Hwang, L. J. 1990. Symbolic model checking: 10<sup>20</sup> states and beyond. In Proceedings of the 5th Annual IEEE Symposium on Logic in Computer Science. IEEE Computer Society Press, Los Alamitos, CA. 1--33.
12
 
13
 
14
Cho, H., Hachtel, G. D., Macii, E., Poncino, M., and Somenzi, F. 1996. Automatic state space decomposition for approximate FSM traversal based on circuit analysis. IEEE Trans. Comput. Aided Des. 15, 12 (Dec.), 1451--1464.
 
15
Clarke, E., Grumberg, O., and Peled, D. 2000. Model checking. MIT Press, Cambridge, MA.
 
16
Clarke, E., Kroening, D., and Lerda, F. 2004. A tool for checking ANSI-C programs. In Tools and Algorithms for the Construction and Analysis of Systems, K. Jensen and A. Podelski, eds. Lecture Notes in Computer Science, vol. 2988. Springer Verlag, Berlin. 168--176.
 
17
 
18
 
19
Cook, B., Kroening, D., and Sharygina, N. 2005. Symbolic model checking for asynchronous Boolean programs. In Proceedings of the 12th International SPIN Workshop on Model Checking of Software. 75--90.
20
 
21
 
22
 
23
Edwards, S., Ma, T., and Damiano, R. 2001. Using a hardware model checker to verify software. In Proceedings of the 4th International Conference on ASIC (ASICON). IEEE, Los Alamitos, CA.
 
24
 
25
 
26
 
27
 
28
Ivančić, F., Yang, Z., Gupta, A., Ganai, M., and Ashar, P. 2004. Efficient SAT-based bounded model checking for software verification. In 1st International Symposium on Leveraging Applications of Formal Methods.
 
29
Ivančić, F., Yang, Z., Shlyakhter, I., Ganai, M., Gupta, A., and Ashar, P. 2005. F-Soft: Software verification platform. In Proceedings of the Conference on Computer-Aided Verification. Lecture Notes in Computer Science, vol. 3576. Springer Verlag, Berlin. 301--306.
 
30
 
31
 
32
Karypis, G. and Kumar, V. 1998. Multilevel algorithms for multi-constraint graph partitioning. Tech. Rep. 98-019, University of Minnesota, Department of Computer Science. May.
 
33
 
34
 
35
 
36
 
37
Quielle, J. P. and Sifakis, J. 1981. Specification and verification of concurrent systems in CESAR. In Proceedings of the 5th Annual Symposium on Programming.
 
38
Ranjan, R. K., Aziz, A., Brayton, R. K., Plessier, B. F., and Pixley, C. 1995. Efficient BDD algorithms for FSM synthesis and verification. Presented at IWLS (Lake Tahoe, CA).
 
39
40
41
 
42
 
43
 
44
 
45
 
46
Zaks, A., Shlyakhter, I., Ivančić, F., Cadambi, H., Yang, Z., Ganai, M., Gupta, A., and Ashar, P. 2006. Range analysis for software verification. In 4th International Workshop on Software Verification and Validation (SVV).


Collaborative Colleagues:
Chao Wang: colleagues
Zijiang Yang: colleagues
Franjo Ivančić: colleagues
Aarti Gupta: colleagues