2008
DOI: 10.1016/j.tcs.2008.03.013
|View full text |Cite
|
Sign up to set email alerts
|

Efficient SAT-based bounded model checking for software verification

Abstract: This paper discusses our methodology for formal analysis and automatic verification of software programs. It is currently applicable to a large subset of the C programming language that includes bounded recursion. We consider reachability properties, in particular whether certain assertions or basic blocks are reachable in the source code. We perform this analysis via a translation to a Boolean representation based on modeling basic blocks. The program is then analyzed by a back-end SAT-based bounded model che… Show more

Help me understand this report

Search citation statements

Order By: Relevance

Paper Sections

Select...
2
1
1
1

Citation Types

0
37
0

Year Published

2011
2011
2024
2024

Publication Types

Select...
7
1

Relationship

1
7

Authors

Journals

citations
Cited by 69 publications
(37 citation statements)
references
References 34 publications
(21 reference statements)
0
37
0
Order By: Relevance
“…Automated program abstraction and refinement are difficult, and the iterative process may not converge. In practice, automated abstract model checking methods are limited to small or special-purpose programs [12,13].…”
Section: Related Workmentioning
confidence: 99%
“…Automated program abstraction and refinement are difficult, and the iterative process may not converge. In practice, automated abstract model checking methods are limited to small or special-purpose programs [12,13].…”
Section: Related Workmentioning
confidence: 99%
“…TCMBC approach requires full inlining of functions and unwinding of loops like CBMC. This CBMC-based approach, therefore, is not scalable to large piece of code or code with reactive behavior, as shown previously [29].…”
Section: Comparison With Related Workmentioning
confidence: 88%
“…For brevity, we highlight the essentials in building a thread model (EFSM) from a C thread (using the F-Soft framework [29]) under the assumption of a bounded heap and a bounded stack. First we obtain a simplified CFG by creating an explicit memory model for (finite) data structures and heap memory, where indirect memory accesses through pointers are converted to direct accesses by using auxiliary variables.…”
Section: Building Efsms From C Threadsmentioning
confidence: 99%
See 1 more Smart Citation
“…Other symbolic methods were introduced by NEC [15] and SLAM [2]. Symbolic model checking handles non-deterministic data efficiently, whereas explicit-state model checking handles non-deterministic scheduling of concurrent processes easily using partial order reduction [14].…”
Section: Introductionmentioning
confidence: 99%