ACM Home Page
Please provide us with feedback. Feedback
Incremental state-space exploration for programs with dynamically allocated data
Full text PdfPdf (239 KB)
Source
International Conference on Software Engineering archive
Proceedings of the 30th international conference on Software engineering table of contents
Leipzig, Germany
SESSION: Formal analysis table of contents
Pages 291-300  
Year of Publication: 2008
ISBN:978-1-60558-079-1
Authors
Steven Lauterburg  University of Illinois at Urbana-Champaign, Urbana, IL, USA
Ahmed Sobeih  University of Illinois at Urbana-Champaign, Urbana, IL, USA
Darko Marinov  University of Illinois at Urbana-Champaign, Urbana, IL, USA
Mahesh Viswanathan  University of Illinois at Urbana-Champaign, Urbana, IL, USA
Sponsors
ACM: Association for Computing Machinery
SIGSOFT: ACM Special Interest Group on Software Engineering
Publisher
ACM  New York, NY, USA
Bibliometrics
Downloads (6 Weeks): 29,   Downloads (12 Months): 124,   Citation Count: 0
Additional Information:

abstract   references   index terms   collaborative colleagues  

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

ABSTRACT

We present a novel technique that speeds up state-space exploration (SSE) for evolving programs with dynamically allocated data. SSE is the essence of explicit-state model checking and an increasingly popular method for automating test generation. Traditional, non-incremental SSE takes one version of a program and systematically explores the states reachable during the program's executions to find property violations. Incremental SSE considers several versions that arise during program evolution: reusing the results of SSE for one version can speed up SSE for the next version, since state spaces of consecutive program versions can have significant similarities. We have implemented our technique in two model checkers: Java PathFinder and the J-Sim state-space explorer. The experimental results on 24 program evolutions and exploration changes show that for non-initial runs our technique speeds up SSE in 22 cases from 6.43% to 68.62% (with median of 42.29%) and slows down SSE in only two cases for -4.71% and -4.81%.


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
T. Andrews, S. Qadeer, S. K. Rajamani, J. Rehof, and Y. Xie. Zing: A model checker for concurrent software. In CAV 2004.
2
3
 
4
E. Clarke, D. Kroening, and F. Lerda. A tool for checking ANSI-C programs. In TACAS 2004.
 
5
 
6
C. L. Conway, K. S. Namjoshi, D. Dams, and S. A. Edwards. Incremental algorithms for inter-procedural analysis of safety properties. In CAV 2005.
 
7
8
 
9
M. d'Amorim, A. Sobeih, and D. Marinov. Optimized execution of deterministic blocks in Java PathFinder. In ICFEM 2006.
10
 
11
 
12
13
 
14
15
16
 
17
 
18
T. A. Henzinger, R. Jhala, R. Majumdar, and M. A. A. Sanvido. Extreme model checking. In International Symposium on Verification: Theory and Practice, 2003.
19
 
20
 
21
S. Khurshid, C. S. Pasareanu, and W. Visser. Generalized symbolic execution for model checking and testing. In TACAS 2003.
 
22
 
23
 
24

Collaborative Colleagues:
Steven Lauterburg: colleagues
Ahmed Sobeih: colleagues
Darko Marinov: colleagues
Mahesh Viswanathan: colleagues