Thread-modular verification is Cartesian abstract interpretation

被引:0
|
作者
Malkis, Alexander [1 ]
Podelski, Andreas
Rybalchenko, Andrey
机构
[1] Max Planck Inst Informat, Saarbrucken, Germany
[2] Univ Freiburg, Freiburg, Germany
[3] EPFL, IC, IIF, MTC, Lausanne, Switzerland
关键词
D O I
暂无
中图分类号
TP301 [理论、方法];
学科分类号
081202 ;
摘要
Verification of multithreaded programs is difficult. It requires reasoning about state spaces that grow exponentially in the number of concurrent threads. Successful verification techniques based on modular composition of over-approximations of thread behaviors have been designed for this task. These techniques have been traditionally described in assume-guarantee style, which does not admit reasoning about the abstraction properties of the involved compositional argument. Flanagan and Qadeer thread-modular algorithm is a characteristic representative of such techniques. In this paper, we investigate the formalization of this algorithm in the framework of abstract interpretation. We identify the abstraction that the algorithm implements; its definition involves Cartesian products of sets. Our result provides a basis for the systematic study of similar abstractions for dealing with the state explosion problem. As a first step in this direction, our result provides a characterization of a minimal increase in the precision of the Flanagan and Qadeer algorithm that leads to the loss of its polynomial complexity.
引用
收藏
页码:183 / 197
页数:15
相关论文
共 50 条
  • [1] Improving Thread-Modular Abstract Interpretation
    Schwarz, Michael
    Saan, Simmo
    Seidl, Helmut
    Apinis, Kalmer
    Erhard, Julian
    Vojdani, Vesal
    [J]. STATIC ANALYSIS, SAS 2021, 2021, 12913 : 359 - 383
  • [2] Relational Thread-Modular Static Value Analysis by Abstract Interpretation
    Mine, Antoine
    [J]. VERIFICATION, MODEL CHECKING, AND ABSTRACT INTERPRETATION: (VMCAI 2014), 2014, 8318 : 39 - 58
  • [3] Flow-Sensitive Composition of Thread-Modular Abstract Interpretation
    Kusano, Markus
    Wang, Chao
    [J]. FSE'16: PROCEEDINGS OF THE 2016 24TH ACM SIGSOFT INTERNATIONAL SYMPOSIUM ON FOUNDATIONS OF SOFTWARE ENGINEERING, 2016, : 799 - 809
  • [4] Clustered Relational Thread-Modular Abstract Interpretation with Local Traces
    Schwarz, Michael
    Saan, Simmo
    Seidl, Helmut
    Erhard, Julian
    Vojdani, Vesal
    [J]. PROGRAMMING LANGUAGES AND SYSTEMS, ESOP 2023, 2023, 13990 : 28 - 58
  • [5] Precise thread-modular verification
    Malkis, Alexander
    Podelski, Andreas
    Rybalchenko, Andrey
    [J]. STATIC ANALYSIS, PROCEEDINGS, 2007, 4634 : 218 - +
  • [6] GOBLINT: Autotuning Thread-Modular Abstract Interpretation (Competition Contribution)
    Saan, Simmo
    Schwarz, Michael
    Erhard, Julian
    Pietsch, Manuel
    Seidl, Helmut
    Tilscher, Sarah
    Vojdani, Vesal
    [J]. TOOLS AND ALGORITHMS FOR THE CONSTRUCTION AND ANALYSIS OF SYSTEMS, PT II, TACAS 2023, 2023, 13994 : 547 - 552
  • [7] Relational Thread-Modular Abstract Interpretation Under Relaxed Memory Models
    Suzanne, Thibault
    Mine, Antoine
    [J]. PROGRAMMING LANGUAGES AND SYSTEMS, APLAS 2018, 2018, 11275 : 108 - 127
  • [8] Precise Thread-Modular Abstract Interpretation of Concurrent Programs Using Relational Interference Abstractions
    Monat, Raphael
    Mine, Antoine
    [J]. VERIFICATION, MODEL CHECKING, AND ABSTRACT INTERPRETATION, VMCAI 2017, 2017, 10145 : 386 - 404
  • [9] Thread-modular verification for shared-memory programs
    Flanagan, C
    Freund, SN
    Qadeer, S
    [J]. PROGRAMMING LANGUAGES AND SYSTEMS, PROCEEDINGS, 2002, 2305 : 262 - 277
  • [10] Thread-modular model checking
    Flanagan, C
    Qadeer, S
    [J]. MODEL CHECKING SOFTWARE, 2003, 2648 : 213 - 224