Bi-Abduction in Separation Logic with Arrays and Lists for Program Analysis

被引:0
|
作者
Kimura, Daisuke [1 ]
Tatsuta, Makoto [2 ]
Faisal, Mahmudul [4 ]
Ameen, Al [4 ]
Ikebuchi, Mirai [3 ]
Nakazawa, Koji [4 ]
机构
[1] Toho University, Japan
[2] National Institute of Informatics, Sokendai, Japan
[3] Kyoto University, Japan
[4] Nagoya University, Japan
关键词
Computer circuits;
D O I
10.11309/jssst.41.1_50
中图分类号
学科分类号
摘要
This paper gives an algorithm that solves the bi-abduction problem in symbolic-heap separation logic with arrays and lists. The logic is an assertion language of Hoare-style logic for program verification of pointer manipulating programs. The bi-abduction problem asks to find an additional assumption and an additional conclusion from a given assumption and a given conclusion such that the entailment becomes true. Bi-Abduction is indispensable for modular analysis and automatic verification with separation logic, since the condition at a call site that calls a function and the precondition of the called function are analyzed separately by modular analysis, and they both may contain spatial formulas of separation logic, and we have to guarantee they become the same by adding some spartial formulas to each of them. This paper shows the correctness of the bi-abduction algorithm with detailed proofs. A bi-abduction solver based on the algorithm has been implemented as a part of the authors’ automatic program verifier, and experimental results of the bi-abduction solver with small inputs are also shown, which show the algorithm is usable. © 2024 Japan Society for Software Science and Technology. All rights reserved.
引用
收藏
页码:50 / 67
相关论文
共 50 条
  • [1] Compositional Shape Analysis by Means of Bi-Abduction
    Calcagno, Cristiano
    Distefano, Dino
    O'Hearn, Peter W.
    Yang, Hongseok
    [J]. JOURNAL OF THE ACM, 2011, 58 (06)
  • [2] Compositional Shape Analysis by means of Bi-Abduction
    Calcagno, Cristiano
    Distefano, Dino
    O'Hearn, Peter
    Yang, Hongseok
    [J]. ACM SIGPLAN NOTICES, 2009, 44 (01) : 289 - 300
  • [3] Shape Analysis via Second-Order Bi-Abduction
    Le, Quang Loc
    Gherghina, Cristian
    Qin, Shengchao
    Chin, Wei-Ngan
    [J]. COMPUTER AIDED VERIFICATION, CAV 2014, 2014, 8559 : 52 - 68
  • [4] Separation logic and program analysis
    O'Hearn, Peter W.
    [J]. STATIC ANALYSIS, PROCEEDINGS, 2006, 4134 : 181 - 181
  • [5] Quantitative Separation Logic and Programs with Lists
    Bozga, Marius
    Iosif, Radu
    Perarnau, Swann
    [J]. JOURNAL OF AUTOMATED REASONING, 2010, 45 (02) : 131 - 156
  • [6] Quantitative Separation Logic and programs with lists
    Bozga, Marius
    Iosit, Radu
    Perarnau, Swann
    [J]. AUTOMATED REASONING, PROCEEDINGS, 2008, 5195 : 34 - 49
  • [7] Quantitative Separation Logic and Programs with Lists
    Marius Bozga
    Radu Iosif
    Swann Perarnau
    [J]. Journal of Automated Reasoning, 2010, 45 : 131 - 156
  • [8] Abduction, argumentation and bi-disjunctive logic programs
    Wang, KW
    Chen, HW
    [J]. LOGIC PROGRAMMING AND KNOWLEDGE REPRESENTATION, 1998, 1471 : 139 - 163
  • [9] Program Verification with Separation Logic
    Iosif, Radu
    [J]. MODEL CHECKING SOFTWARE, SPIN 2018, 2018, 10869 : 48 - 62
  • [10] Modular Verification of Linked Lists with Views via Separation Logic
    Jensen, Jonas Braband
    Birkedal, Lars
    Sestoft, Peter
    [J]. JOURNAL OF OBJECT TECHNOLOGY, 2011, 10 : 21 - 40