Journal of Software:2020.31(6):1681-1702

(北京大学 信息科学技术学院 计算机科学技术系 软件研究所, 北京 100871;高可信软件技术教育部重点实验室(北京大学), 北京 100871)
Survey of Dynamic Analysis Based Program Invariant Synthesis Techniques
WANG Bo,LU Si-Rui,JIANG Jia-Jun,XIONG Ying-Fei
(Software Engineering Institute, Department of Computer Science and Technology, School of Electronics Engineering and Computer Science, Peking University, Beijing 100871, China;Key Laboratory of High Confidence Software Technologies of Ministry of Education (Peking University), Beijing 100871, China)
Chart / table
Similar Articles
Article :Browse 721   Download 1211
Received:November 25, 2019    Revised:December 19, 2019
> 中文摘要: 软件不变量是软件的重要属性,在软件验证、软件调试和软件测试等领域有重要作用.自20世纪末以来,基于动态分析的不变量综合技术成为相关领域的一个研究热点,并且取得了一定的进展.收集了90篇相关论文对该领域进行系统总结.基于动态分析的不变量综合技术是该领域的核心问题,提出了“学习者-预言”框架统一描述相关方法,并且在此框架内根据学习者的归纳方法将综合技术大致分为4类,分别是基于模板穷举的方法、基于数值计算的方法、基于统计学习的方法以及基于符号执行的方法.其次,讨论了基于动态分析综合的不变量在软件验证和软件工程等领域的重要应用.随后,总结不变量生成技术中常用的实验对象程序和开源的不变量综合工具.最后,总结该领域并展望未来的研究方向.
Abstract:Program invariants are important properties of software, which play important roles in many software research fields, such as verification, debugging, and testing. Since the end of 20th century, research on dynamic analysis based program invariant synthesis has become a hot topic in related research areas and made remarkable progress. This paper collects 90 related papers to survey researches within this topic. To dynamically synthesize invariants is the key problem of this field. An abstract framework, “learner-oracle”, is proposed to model and subsume synthesis approaches. In general, the synthesis approaches can be classified into four types, i.e. pattern enumeration based approaches, numerical calculation based approaches, statistical learning based approaches, and symbolic execution based approaches. Furthermore, important applications are discussed of dynamic invariants in software engineering and software verification. Then, important subject programs and synthesis tools are briefly summarized. Finally, the remaining opportunities are presented and a conclusion is reached.
文章编号:     中图分类号:TP311    文献标志码:
基金项目:国家自然科学基金(61922003,61672045) 国家自然科学基金(61922003,61672045)
Foundation items:National Natural Science Foundation of China (61922003, 61672045)
Reference text:


WANG Bo,LU Si-Rui,JIANG Jia-Jun,XIONG Ying-Fei.Survey of Dynamic Analysis Based Program Invariant Synthesis Techniques.Journal of Software,2020,31(6):1681-1702