Using Symbolic States to Infer Numerical Invariants

被引:1
|
作者
ThanhVu Nguyen [1 ]
KimHao Nguyen [2 ]
Dwyer, Matthew B. [3 ]
机构
[1] George Mason Univ, Dept Comp Sci, Fairfax, VA 22030 USA
[2] Univ Nebraska, Lincoln, NE 68588 USA
[3] Univ Virginia, Dept Comp Sci, Charlottesville, VA 22901 USA
基金
美国国家科学基金会;
关键词
Inference algorithms; Tools; Security; Performance analysis; Engines; Encoding; Benchmark testing; Program invariants; numerical invariants; dynamic analysis; symbolic execution; counterexample guided refinement; program testing and verification; PROGRAM INVARIANTS; VERIFICATION;
D O I
10.1109/TSE.2021.3106964
中图分类号
TP31 [计算机软件];
学科分类号
081202 ; 0835 ;
摘要
Automatically inferring invariant specifications has proven valuable in enabling a wide range of software verification and validation approaches over the past two decades. Recent approaches have shifted from using observation of concrete program states to exploiting symbolic encodings of sets of concrete program states in order to improve the quality of inferred invariants. In this paper, we demonstrate that working directly with symbolic states generated by symbolic execution approaches can improve invariant inference further. Our technique uses a counterexample-based algorithm that iteratively creates concrete states from symbolic states, infers candidate invariants from both concrete and symbolic states, and then validates or refutes candidate invariants using symbolic states. The refutation process serves both to eliminate spurious invariants and to drive the inference process to produce more precise invariants. This framework can be employed to infer complex invariants that capture nonlinear polynomial relations among program variables. The open-source SymInfer tool implements these ideas to automatically generate invariants at arbitrary locations in Java or C programs. Our preliminary results show that across a collection of four benchmarks SymInfer improves on the state-of-the-art by efficiently inferring more informative invariants than prior work.
引用
收藏
页码:3877 / 3899
页数:23
相关论文
共 50 条
  • [1] SymInfer: Inferring Numerical Invariants using Symbolic States
    ThanhVu Nguyen
    KimHao Nguyen
    Hai Duong
    [J]. 2022 ACM/IEEE 44TH INTERNATIONAL CONFERENCE ON SOFTWARE ENGINEERING: COMPANION PROCEEDINGS (ICSE-COMPANION 2022), 2022, : 197 - 201
  • [2] SymInfer: Inferring Program Invariants using Symbolic States
    ThanhVu Nguyen
    Dwyer, Matthew B.
    Visser, Willem
    [J]. PROCEEDINGS OF THE 2017 32ND IEEE/ACM INTERNATIONAL CONFERENCE ON AUTOMATED SOFTWARE ENGINEERING (ASE'17), 2017, : 804 - 814
  • [3] USING SYMBOLIC COMPUTATION TO FIND ALGEBRAIC INVARIANTS
    KEREN, D
    [J]. IEEE TRANSACTIONS ON PATTERN ANALYSIS AND MACHINE INTELLIGENCE, 1994, 16 (11) : 1143 - 1149
  • [4] SLING: Using Dynamic Analysis to Infer Program Invariants in Separation Logic
    Le, Ton Chanh
    Zheng, Guolong
    Nguyen, ThanhVu
    [J]. PROCEEDINGS OF THE 40TH ACM SIGPLAN CONFERENCE ON PROGRAMMING LANGUAGE DESIGN AND IMPLEMENTATION (PLDI '19), 2019, : 788 - 801
  • [5] Using Frames to Infer Numerical Extracted Answers
    Nadi, Farhad
    Ranaivo-Malancon, Bali
    [J]. 2009 2ND IEEE INTERNATIONAL CONFERENCE ON COMPUTER SCIENCE AND INFORMATION TECHNOLOGY, VOL 2, 2009, : 14 - +
  • [6] The number of tetrahedra sharing the same metric invariants via symbolic and numerical computations
    Dehbi, Lydia
    Zeng, Zhenbing
    Yang, Lu
    [J]. JOURNAL OF SYMBOLIC COMPUTATION, 2022, 108 : 41 - 54
  • [7] SOME SYMBOLIC EXPRESSIONS FOR DIFFERENTIAL INVARIANTS
    MATSCHINSKI, M
    [J]. COMPTES RENDUS HEBDOMADAIRES DES SEANCES DE L ACADEMIE DES SCIENCES SERIE A, 1970, 270 (15): : 953 - +
  • [8] Invariants of the symbolic powers of edge ideals
    Chakraborty, Bidwan
    Mandal, Mousumi
    [J]. JOURNAL OF ALGEBRA AND ITS APPLICATIONS, 2020, 19 (10)
  • [9] Invariants in Symbolic Modeling and Verification of Requirements
    Letichevsky, Alexander
    Godlevsky, Alexander
    Guba, Anton
    Kolchin, Alexander
    Letychevskyi, Oleksandr
    Peschanenko, Vladimir
    [J]. 2013 COMPUTER SCIENCE AND INFORMATION TECHNOLOGIES (CSIT), 2013,
  • [10] Strengthening invariants by symbolic consistency testing
    Abu-Haimed, H
    Berezin, S
    Dill, DL
    [J]. COMPUTER AIDED VERIFICATION, 2003, 2725 : 407 - 419