Bias-Variance Tradeoffs in Program Analysis

被引:12
作者
Sharma, Rahul [1 ]
Nori, Aditya V.
Aiken, Alex [1 ]
机构
[1] Stanford Univ, Stanford, CA 94305 USA
关键词
Program Analysis; Machine Learning; Verification; PREDICATE ABSTRACTION; VERIFICATION;
D O I
10.1145/2535838.2535853
中图分类号
TP31 [计算机软件];
学科分类号
081202 ; 0835 ;
摘要
It is often the case that increasing the precision of a program analysis leads to worse results. It is our thesis that this phenomenon is the result of fundamental limits on the ability to use precise abstract domains as the basis for inferring strong invariants of programs. We show that bias-variance tradeoffs, an idea from learning theory, can be used to explain why more precise abstractions do not necessarily lead to better results and also provides practical techniques for coping with such limitations. Learning theory captures precision using a combinatorial quantity called the VC dimension. We compute the VC dimension for different abstractions and report on its usefulness as a precision metric for program analyses. We evaluate cross validation, a technique for addressing bias-variance tradeoffs, on an industrial strength program verification tool called YOGI. The tool produced using cross validation has significantly better running time, finds new defects, and has fewer time-outs than the current production version. Finally, we make some recommendations for tackling bias-variance tradeoffs in program analysis.
引用
收藏
页码:127 / 137
页数:11
相关论文
共 49 条
[1]   Discovering invariants via simple component analysis [J].
Amato, Gianluca ;
Parton, Maurizio ;
Scozzari, Francesca .
JOURNAL OF SYMBOLIC COMPUTATION, 2012, 47 (12) :1533-1560
[2]  
[Anonymous], INTERPROC ANAL
[3]   A survey of cross-validation procedures for model selection [J].
Arlot, Sylvain ;
Celisse, Alain .
STATISTICS SURVEYS, 2010, 4 :40-79
[4]   Precise widening operators for convex polyhedra [J].
Bagnara, R ;
Hill, PM ;
Ricci, E ;
Zaffanella, E .
SCIENCE OF COMPUTER PROGRAMMING, 2005, 58 (1-2) :28-56
[5]  
Beyer Dirk, 2008, 2008 23rd IEEE/ACM International Conference on Automated Software Engineering, P29, DOI 10.1109/ASE.2008.13
[6]  
Beyer D, 2013, LECT NOTES COMPUT SC, V7795, P594
[7]  
Bishop C. M., 2006, PATTERN RECOGN
[8]  
Bjorner N, 2013, LECT NOTES COMPUT SC, V7935, P105
[9]   LEARNABILITY AND THE VAPNIK-CHERVONENKIS DIMENSION [J].
BLUMER, A ;
EHRENFEUCHT, A ;
HAUSSLER, D ;
WARMUTH, MK .
JOURNAL OF THE ACM, 1989, 36 (04) :929-965
[10]   Noise-tolerant distribution-free learning of general geometric concepts [J].
Bshouty, NH ;
Goldman, SA ;
Mathias, HD ;
Suri, S ;
Tamaki, H .
JOURNAL OF THE ACM, 1998, 45 (05) :863-890