| Verifying C++ with STL containers via predicate abstraction |
| Full text |
Pdf
(241 KB)
|
Source
|
Automated Software Engineering
archive
Proceedings of the twenty-second IEEE/ACM international conference on Automated software engineering
table of contents
Atlanta, Georgia, USA
POSTER SESSION: Posters
table of contents
Pages 521-524
Year of Publication: 2007
ISBN:978-1-59593-882-4
|
|
Authors
|
|
| Sponsors |
|
| Publisher |
|
| Bibliometrics |
Downloads (6 Weeks): 13, Downloads (12 Months): 67, Citation Count: 0
|
|
|
ABSTRACT
This paper describes a flexible and easily extensible predicate abstraction-based approach to the verification of STLusage, and observes the advantages of verifying programsin terms of high-level data structures rather than low-level pointer manipulations. We formalize the semantics of theSTL by means of a Hoare-style axiomatization. The verification requires an operational model conservatively approximating the semantics given by the Standard. Our results show advantages (in terms of errors detected and false positives avoided) over previous attempts to analyze STL usage, due to the power of the abstraction engine and model checker
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
|
T. Ball and S. K. Rajamani. Boolean programs: A model and process for software analysis. Technical Report 2000--14, Microsoft Research, February 2000.
|
 |
3
|
|
| |
4
|
N. Blanc, A. Groce, and D. Kroening. Verifying C++ with STL containers via predicate abstraction. Technical Report 506, Computer Science Department, ETH Zurich, 2006.
|
| |
5
|
Aaron R. Bradley, Zohar Manna, and Henny B. Sipma. What's decidable about arrays? In Verification, Model Checking, and Abstract Interpretation, (VMCAI), volume 3855 of Lecture Notes in Computer Science, pages 427--442. Springer, 2006.
|
| |
6
|
|
| |
7
|
|
| |
8
|
|
| |
9
|
E. Clarke, D. Kroening, N. Sharygina, and K. Yorav. SATABS: SAT-based predicate abstraction for ANSI-C. In Tools and Algorithms for the Construction and Analysis of Systems (TACAS), volume 3440 of Lecture Notes in Computer Science, pages 570--574. Springer, 2005.
|
 |
10
|
|
| |
11
|
N. Eén and Niklas Sörensson. An extensible SAT-solver. In Theory and Applications of Satisfiability Testing (SAT), pages 502--518, 2003.
|
| |
12
|
|
| |
13
|
|
 |
14
|
Thomas A. Henzinger , Ranjit Jhala , Rupak Majumdar , Grégoire Sutre, Lazy abstraction, Proceedings of the 29th ACM SIGPLAN-SIGACT symposium on Principles of programming languages, p.58-70, January 16-18, 2002, Portland, Oregon
|
| |
15
|
C. A. R. Hoare and N. Wirth. An axiomatic definition of the programming language PASCAL. Acta Informatica, 2, 1973.
|
| |
16
|
ISO/IEC. ISO/IEC 14882:2003 (E). Programming languages - C++, 2003.
|
 |
17
|
|
 |
18
|
|
 |
19
|
|
 |
20
|
Madanlal Musuvathi , David Y. W. Park , Andy Chou , Dawson R. Engler , David L. Dill, CMC: a pragmatic approach to model checking real code, Proceedings of the 5th symposium on Operating systems design and implementation Due to copyright restrictions we are not able to make the PDFs for this conference available for downloading, December 09-11, 2002, Boston, Massachusetts
[doi> 10.1145/1060289.1060297]
|
| |
21
|
|
| |
22
|
|
 |
23
|
|
|