2006
DOI: 10.1007/11691617_9
|View full text |Cite
|
Sign up to set email alerts
|

Bounded Model Checking of Software Using SMT Solvers Instead of SAT Solvers

Abstract: Abstract. C Bounded Model Checking (CBMC) is one of the leading approaches to automatic software analysis. The key idea is to (i) build a propositional formula whose models correspond to program traces (of bounded length) that violate some given property and (ii) use state-ofthe-art SAT solvers to check the resulting formulae for satisfiability. In this paper we propose a generalisation of the CBMC approach based on an encoding into richer (but still decidable) theories than propositional logic. We show that o… Show more

Help me understand this report

Search citation statements

Order By: Relevance

Paper Sections

Select...
1
1
1
1

Citation Types

0
113
0

Year Published

2006
2006
2021
2021

Publication Types

Select...
4
4

Relationship

0
8

Authors

Journals

citations
Cited by 78 publications
(113 citation statements)
references
References 26 publications
0
113
0
Order By: Relevance
“…In the comparative tables, "UNABLE" means that the corresponding tool is unable to validate the program because a lack of expressiveness, "TIME_OUT" because of time or memory limitations, "NOT_FOUND" that it does not detect an error, and "FALSE_ERROR" that it reports an error in a correct program. All experiments were performed on the same computer, an Intel(R) Pentium(R) M processor 1.86 GHz with 1.5G of memory, using the version of the verifiers that was downloadable in June 2008 from their web sites (except for EUREKA for which the execution times given in [3,4] are reported.) More details on these experiments can be found in [18].…”
Section: Benchmark Programs and Experimental Resultsmentioning
confidence: 99%
See 1 more Smart Citation
“…In the comparative tables, "UNABLE" means that the corresponding tool is unable to validate the program because a lack of expressiveness, "TIME_OUT" because of time or memory limitations, "NOT_FOUND" that it does not detect an error, and "FALSE_ERROR" that it reports an error in a correct program. All experiments were performed on the same computer, an Intel(R) Pentium(R) M processor 1.86 GHz with 1.5G of memory, using the version of the verifiers that was downloadable in June 2008 from their web sites (except for EUREKA for which the execution times given in [3,4] are reported.) More details on these experiments can be found in [18].…”
Section: Benchmark Programs and Experimental Resultsmentioning
confidence: 99%
“…CBMC was successfully used to compare an ANSI C program with a circuit given as design in Verilog [12]. Armando et al [4] proposed to use SMT 15 solvers instead of SAT solvers for bounded model checking of C programs. They showed that their approach may lead to considerably more compact formulae than those obtained with CBMC.…”
Section: Model Checkingmentioning
confidence: 99%
“…We are extending the input language with more expressiveness power so as to broaden the application domain, i.e., arrays, global variables, etc. Since our toolkit is designed to be extensible, we plan to support more specification languages like CCS, p-calculus, timed automata (which requires SMT capability as in demonstrated in [22]) or integrated formalisms like circus or TCOZ.…”
Section: Discussionmentioning
confidence: 99%
“…For example, the CUDD backend uses the BDD package CUDD. 4 Additionally, metaSMT currently provides two adapters, SAT_Clause and SAT_Aiger. Both adapters map Boolean primitives to clauses, write the clauses in the DIMACS CNF format to a file, and pass the file to a SAT solver.…”
Section: Sat Aig and Bdd Backendsmentioning
confidence: 99%
“…A large number of different decision procedures for SMT, called SMT solvers, have been proposed and empirical evidence, e.g., in [4,11,19], has been given that SMT solving increases efficiency in formal reasoning. Improving the performance of SMT solvers, remains an active research challenge driven by the annual SMT competitions [13].…”
Section: Introductionmentioning
confidence: 99%