A novel data-driven approach on inferring loop invariants for C programs

被引:0
|
作者
Lu, Hong [1 ,2 ]
Wang, Huitao [3 ]
Gui, Jiacheng [1 ]
Chen, Panfeng [4 ]
Huang, Hao [1 ]
机构
[1] Nanjing Univ, Dept Comp Sci & Technol, Nanjing 210023, Peoples R China
[2] Nanjing Univ Sci & Technol, Zijin Coll, Nanjing 210023, Peoples R China
[3] Natl Univ Def Technol, Coll Informat & Commun, Wuhan 430019, Peoples R China
[4] Guizhou Univ, Dept Comp Sci & Technol, Guiyang 550025, Peoples R China
关键词
Loop invariants; Software verification; Polynomial equations; Inequalities; Nested loops; POLYNOMIAL INVARIANTS; GENERATION;
D O I
10.1016/j.cola.2022.101135
中图分类号
TP31 [计算机软件];
学科分类号
081202 ; 0835 ;
摘要
Inspired by the procedure that experts construct loop invariants, we propose a novel data-driven approach to automatically infer loop invariants. The approach consists of two phases, data-driven inference of candidate invariants and validity check of loop invariants. Inspired by the procedure that experts construct loop invariants, we propose a novel data-driven approach to automatically infer loop invariants for C programs. The approach consists of two phases, data-driven inference of candidate invariants and validity check of loop invariants. The first phase generates candidate invariants by solving polynomial equations and synthesizing the extended loop conditions. The second phase prunes out spurious predicates and redundant predicates in the candidate invariants. The experimental results demonstrate that the proposed approach generates valid invariants for 35 benchmarks out of 38. The proposed approach costs less time to generate more informative and precise invariants than the state-of-the-art methods.
引用
收藏
页数:16
相关论文
共 50 条
  • [1] A Novel Data-Driven Approach for Generating Verified Loop Invariants
    Lu, Hong
    Gui, Jiacheng
    Wang, Chengyi
    Huang, Hao
    [J]. 2020 INTERNATIONAL SYMPOSIUM ON THEORETICAL ASPECTS OF SOFTWARE ENGINEERING (TASE 2020), 2020, : 9 - 16
  • [2] A Data Driven Approach for Algebraic Loop Invariants
    Sharma, Rahul
    Gupta, Saurabh
    Hariharan, Bharath
    Aiken, Alex
    Liang, Percy
    Nori, Aditya V.
    [J]. PROGRAMMING LANGUAGES AND SYSTEMS, 2013, 7792 : 574 - 592
  • [3] CONVERSION FROM DATA-DRIVEN TO SYNCHRONOUS EXECUTION IN LOOP PROGRAMS
    CUNY, JE
    SNYDER, L
    [J]. ACM TRANSACTIONS ON PROGRAMMING LANGUAGES AND SYSTEMS, 1987, 9 (04): : 599 - 617
  • [4] Data-driven Bayesian approach for control loop diagnosis
    Qi, Fei
    Huang, Biao
    [J]. 2008 AMERICAN CONTROL CONFERENCE, VOLS 1-12, 2008, : 3368 - 3373
  • [5] Data-Driven Inference of Representation Invariants
    Miltner, Anders
    Padhi, Saswat
    Millstein, Todd
    Walker, David
    [J]. PROCEEDINGS OF THE 41ST ACM SIGPLAN CONFERENCE ON PROGRAMMING LANGUAGE DESIGN AND IMPLEMENTATION (PLDI '20), 2020, : 1 - 15
  • [6] A Data-Driven approach towards Patient Identification for Telehealth Programs
    Ganser, Martha
    Dhar, Sauptik
    Kurup, Unmesh
    Cunha, Carlos
    Gacic, Aca
    [J]. PROCEEDINGS 2015 IEEE INTERNATIONAL CONFERENCE ON BIG DATA, 2015, : 2551 - 2559
  • [7] A Data-Driven Approach For Actuator Servo Loop Failure Detection
    Urbano, S.
    Chaumette, E.
    Goupil, P.
    Tourneret, J. -Y.
    [J]. IFAC PAPERSONLINE, 2017, 50 (01): : 13544 - 13549
  • [8] A Data-Driven Approach for Inferring Student Proficiency from Game Activity Logs
    Falakmasir, Mohammad H.
    Gonzalez-Brenes, Jose P.
    Gordon, Geoffrey J.
    DiCerbo, Kristen E.
    [J]. PROCEEDINGS OF THE THIRD (2016) ACM CONFERENCE ON LEARNING @ SCALE (L@S 2016), 2016, : 341 - 349
  • [10] A novel data-driven bilinear subspace identification approach
    Yang, Hua
    Li, Shaoyuan
    [J]. CANADIAN JOURNAL OF CHEMICAL ENGINEERING, 2007, 85 (01): : 122 - 126