Henzinger, Thomas AISTA ; Jhala, Ranjit; Majumdar, Ritankar S; Sutre, Grégoire
BLAST (the Berkeley Lazy Abstraction Software verification Tool) is a verification system for checking safety properties of C programs using automatic property-driven construction and model checking of software abstractions. Blast implements an abstract-model check-refine loop to check for reachability of a specified label in the program. The abstract model is built on the fly using predicate abstraction. This model is then checked for reachability. If there is no (abstract) path to the specified error label, Blast reports that the system is safe and produces a succinct proof. Otherwise, it checks if the path is feasible using symbolic execution of the program. If the path is feasible, Blast outputs the path as an error trace, otherwise, it uses the infeasibility of the path to refine the abstract model. Blast short-circuits the loop from abstraction to verification to refinement, integrating the three steps tightly through “lazy abstraction” . This integration can offer significant advantages in performance by avoiding the repetition of work from one iteration of the loop to the next.
This work was supported in part by the NSF grants CCR-0085949 and CCR-9988172, the DARPA PCES grant F33615-00-C-1693, the MARCO GSRC grant 98-DT-660, and a Microsoft Research Fellowship.
235 - 239
SPIN: Model Checking Software
Henzinger TA, Jhala R, Majumdar R, Sutre G. Software verification with BLAST. In: Vol 2648. Springer; 2003:235-239. doi:10.1007/3-540-44829-2_17
Henzinger, T. A., Jhala, R., Majumdar, R., & Sutre, G. (2003). Software verification with BLAST (Vol. 2648, pp. 235–239). Presented at the SPIN: Model Checking Software, Springer. https://doi.org/10.1007/3-540-44829-2_17
Henzinger, Thomas A, Ranjit Jhala, Ritankar Majumdar, and Grégoire Sutre. “Software Verification with BLAST,” 2648:235–39. Springer, 2003. https://doi.org/10.1007/3-540-44829-2_17.
T. A. Henzinger, R. Jhala, R. Majumdar, and G. Sutre, “Software verification with BLAST,” presented at the SPIN: Model Checking Software, 2003, vol. 2648, pp. 235–239.
Henzinger TA, Jhala R, Majumdar R, Sutre G. 2003. Software verification with BLAST. SPIN: Model Checking Software, LNCS, vol. 2648, 235–239.
Henzinger, Thomas A., et al. Software Verification with BLAST. Vol. 2648, Springer, 2003, pp. 235–39, doi:10.1007/3-540-44829-2_17.