Systematic approaches for increasing soundness and precision of static analyzers

Esben Sparre Andreasen, Anders Møller, Benjamin Barslev Nielsen
2017 Proceedings of the 6th ACM SIGPLAN International Workshop on State Of the Art in Program Analysis - SOAP 2017  
Building static analyzers for modern programming languages is difficult. Often soundness is a requirement, perhaps with some well-defined exceptions, and precision must be adequate for producing useful results on realistic input programs. Formally proving such properties of a complex static analysis implementation is rarely an option in practice, which raises the challenge of how to identify causes and importance of soundness and precision problems. Through a series of examples, we present our
more » ... xperience with semi-automated methods based on delta debugging and dynamic analysis for increasing soundness and precision of a static analyzer for JavaScript. The individual methods are well known, but to our knowledge rarely used systematically and in combination.
doi:10.1145/3088515.3088521 dblp:conf/pldi/AndreasenMN17 fatcat:iabtsxzbwbe4rhwhcsnqgwqdsa