DocumentCode
708003
Title
QuickChecking Static Analysis Properties
Author
Midtgaard, Jan ; Moller, Anders
fYear
2015
fDate
13-17 April 2015
Firstpage
1
Lastpage
10
Abstract
A static analysis can check programs for potential errors. A natural question that arises is therefore: who checks the checker? Researchers have given this question varying attention, ranging from basic testing techniques, informal monotonicity arguments, thorough pen-and-paper soundness proofs, to verified fixed point checking. In this paper we demonstrate how quickchecking can be useful for testing a range of static analysis properties with limited effort. We show how to check a range of algebraic lattice properties, to help ensure that an implementation follows the formal specification of a lattice. Moreover, we offer a number of generic, type-safe combinators to check transfer functions and operators on lattices, to help ensure that these are, e.g., monotone, strict, or invariant. We substantiate our claims by quickchecking a type analysis for the Lua programming language.
Keywords
program diagnostics; program testing; Lua programming language; QuickChecking static analysis; algebraic lattice property; program checking; static analysis property; Computer languages; DSL; Generators; Lattices; Resource management; Testing; Transfer functions;
fLanguage
English
Publisher
ieee
Conference_Titel
Software Testing, Verification and Validation (ICST), 2015 IEEE 8th International Conference on
Conference_Location
Graz
Type
conf
DOI
10.1109/ICST.2015.7102603
Filename
7102603
Link To Document