We describe a software error-detection tool that exploits re-cent advances in boolean satisfiability (SAT) solvers. Our analysis is path sensitive, precise down to the bit level, and models pointers and heap data. Our approach is also highly scalable, which we achieve using two techniques. First, for each program function, several optimizations compress the size of the boolean formulas that model the control- and data-flow and the heap locations accessed by a function. Second, summaries in the spirit of type signatures are com-puted for each function, allowing inter-procedural analysis without a dramatic increase in the size of the boolean con-straints to be solved. We demonstrate the effectiveness of our approach by con-structing a lock in...
A δ-model is a satisfying assignment of a Boolean formula for which any small alteration, such as a ...
Abstract. Software model checking problems generally contain two differ-ent types of non-determinism...
Concurrent systems are ubiquitous, ranging from multi-core processors to large-scale distributed sys...
Abstract—Equivalence checking and property checking are powerful techniques to detect error traces. ...
Much effort is spent everyday by programmers in trying to reduce long, failing execution traces to t...
The Scalable Analysis Toolkit (SAT) project aimed to demonstrate that it is feasible and useful to s...
International audienceEquivalence checking and property checking are powerful techniques to detect e...
The last few years have seen an increasing interest in Boolean Satisfiability (SAT), spurred in part...
Abstract. We describe the techniques we have used to search for bugs in the memory subsystem of a ne...
Digital systems are nowadays ubiquitous and often comprise an extremely high level of complexity. Gu...
Recent advances in Boolean satisfiability have made it an attractive engine for solving many digital...
As semiconductor technology scales into the deep submicron regime the occurrence of transient or sof...
An established approach to software verification is SAT-based bounded model checking where a state s...
Recent advances in Boolean satisfiability have made it attractive to solve many digital VLSI design ...
The Boolean Satisfiability Problem (SAT) is a prominent problem in theoretical computer science. Whi...
A δ-model is a satisfying assignment of a Boolean formula for which any small alteration, such as a ...
Abstract. Software model checking problems generally contain two differ-ent types of non-determinism...
Concurrent systems are ubiquitous, ranging from multi-core processors to large-scale distributed sys...
Abstract—Equivalence checking and property checking are powerful techniques to detect error traces. ...
Much effort is spent everyday by programmers in trying to reduce long, failing execution traces to t...
The Scalable Analysis Toolkit (SAT) project aimed to demonstrate that it is feasible and useful to s...
International audienceEquivalence checking and property checking are powerful techniques to detect e...
The last few years have seen an increasing interest in Boolean Satisfiability (SAT), spurred in part...
Abstract. We describe the techniques we have used to search for bugs in the memory subsystem of a ne...
Digital systems are nowadays ubiquitous and often comprise an extremely high level of complexity. Gu...
Recent advances in Boolean satisfiability have made it an attractive engine for solving many digital...
As semiconductor technology scales into the deep submicron regime the occurrence of transient or sof...
An established approach to software verification is SAT-based bounded model checking where a state s...
Recent advances in Boolean satisfiability have made it attractive to solve many digital VLSI design ...
The Boolean Satisfiability Problem (SAT) is a prominent problem in theoretical computer science. Whi...
A δ-model is a satisfying assignment of a Boolean formula for which any small alteration, such as a ...
Abstract. Software model checking problems generally contain two differ-ent types of non-determinism...
Concurrent systems are ubiquitous, ranging from multi-core processors to large-scale distributed sys...