Finding bugs with a constraint solver

  • Jackson D
  • Vaziri M
N/ACitations
Citations of this article
16Readers
Mendeley users who have this article in their library.

Abstract

A method for finding bugs in code is presented. For given small numbers j and k, the code of a procedure is translated into a relational formula whose models represent all execu- tion traces that involve at most j heap cells and k loop itera- tions. This formula is conjoined with the negation of the pro- cedure’s specification. The models of the resulting formula, obtained using a constraint solver, are counterexamples: exe- cutions of the code that violate the specification. The method can analyze millions of executions in sec- onds, and thus rapidly expose quite subtle flaws. It can accommodate calls to procedures for which specifications but no code is available.A range of standard properties (such as absence of null pointer dereferences) can also be easily checked, using predefined specifications.

Cite

CITATION STYLE

APA

Jackson, D., & Vaziri, M. (2000). Finding bugs with a constraint solver. ACM SIGSOFT Software Engineering Notes, 25(5), 14–25. https://doi.org/10.1145/347636.383378

Register to see more suggestions

Mendeley helps you to discover research relevant for your work.

Already have an account?

Save time finding and organizing research with Mendeley

Sign up for free