From invariant checking to invariant inference using randomized search

被引:27
|
作者
Sharma, Rahul [1 ]
Aiken, Alex [1 ]
机构
[1] Stanford Univ, Dept Comp Sci, Stanford, CA 94305 USA
基金
美国国家科学基金会;
关键词
Verification; Loop invariants; Markov Chain Monte Carlo (MCMC); Satisfiability modulo theories (SMT);
D O I
10.1007/s10703-016-0248-5
中图分类号
TP301 [理论、方法];
学科分类号
081202 ;
摘要
We describe a general framework c2i for generating an invariant inference procedure from an invariant checking procedure. Given a checker and a language of possible invariants, c2i generates an inference procedure that iteratively invokes two phases. The search phase uses randomized search to discover candidate invariants and the validate phase uses the checker to either prove or refute that the candidate is an actual invariant. To demonstrate the applicability of c2i , we use it to generate inference procedures that prove safety properties of numerical programs, prove non-termination of numerical programs, prove functional specifications of array manipulating programs, prove safety properties of string manipulating programs, and prove functional specifications of heap manipulating programs that use linked list data structures.
引用
收藏
页码:235 / 256
页数:22
相关论文
共 50 条
  • [1] From Invariant Checking to Invariant Inference Using Randomized Search
    Sharma, Rahul
    Aiken, Alex
    COMPUTER AIDED VERIFICATION, CAV 2014, 2014, 8559 : 88 - 105
  • [2] From invariant checking to invariant inference using randomized search
    Rahul Sharma
    Alex Aiken
    Formal Methods in System Design, 2016, 48 : 235 - 256
  • [3] On invariant checking
    Zhihai Zhang
    Deepak Kapur
    Journal of Systems Science and Complexity, 2013, 26 : 470 - 482
  • [4] ON INVARIANT CHECKING
    ZHANG Zhihai
    KAPUR Deepak
    JournalofSystemsScience&Complexity, 2013, 26 (03) : 470 - 482
  • [5] On invariant checking
    Zhang Zhihai
    Kapur, Deepak
    JOURNAL OF SYSTEMS SCIENCE & COMPLEXITY, 2013, 26 (03) : 470 - 482
  • [6] Using capabilities for strict runtime invariant checking
    Gariano, Isaac Oscar
    Servetto, Marco
    Potanin, Alex
    SCIENCE OF COMPUTER PROGRAMMING, 2022, 224
  • [7] Using Slicing to Improve the Performance of Model Invariant Checking
    Sun, Wuliang
    Combemale, Benoit
    France, Robert B.
    Blouin, Arnaud
    Baudry, Benoit
    Ray, Indrakshi
    JOURNAL OF OBJECT TECHNOLOGY, 2015, 14 (04): : 1 - 28
  • [8] Bounded Invariant Checking for Stateflow
    Filipovikj, Predrag
    Ung, Gustav
    Gurov, Dilian
    Nyberg, Mattias
    ELECTRONIC PROCEEDINGS IN THEORETICAL COMPUTER SCIENCE, 2022, (371): : 38 - 52
  • [9] Reducing Lookups for Invariant Checking
    Thomsen, Jakob G.
    Clausen, Christian
    Andersen, Kristoffer J.
    Danaher, John
    Ernst, Erik
    ECOOP 2013 - OBJECT-ORIENTED PROGRAMMING, 2013, 7920 : 426 - 450
  • [10] Model Validation Using Invariant Signatures and Logic-Based Inference for Automated Building Code Compliance Checking
    Wu, Jin
    Zhang, Jiansong
    JOURNAL OF COMPUTING IN CIVIL ENGINEERING, 2022, 36 (03)