In Defense of Soundiness: A Manifesto. - Guyer, Samuel Z.; Livshits, Benjamin.; Sridharan, Manu.; Smaragdakis, Yannis.; Lhoták, Ondřej.; Amaral, José Nelson.; Chang, Bor-Yuh Evan.; Khedker, Uday.; Møller, Anders.; Vardoulakis, Dimitrios. (Tufts University. Tisch Library., 2017)
Static program analysis is a key component of many software development tools, including compilers, development environments, and verification tools. Practical applications of static analysis have grown in recent years to include tools by companies such as Coverity, Fortify, GrammaTech, IBM, and others. Analyses are often expected to be sound in that their result models all possible executions of the program under analysis. Soundness implies that the analysis computes an overapproximation in order to stay tractable; the analysis result will also model behaviors that do not actually occur in any program execution. The precision of an analysis is the degree to which it avoids such spurious results. Users expect analyses to be sound as a matter of course, and desire analyses to be as precise as possible, while being able to scale to large programs.; Source: © The Authors 2015. This is the author's version of the work. It is posted here for your personal use. Not for redistribution.