A Rely-Guarantee-Based Simulation for Verifying Concurrent Program Transformations

被引:0
|
作者
Liang, Hongjin [1 ]
Feng, Xinyu [1 ]
Fu, Ming [1 ]
机构
[1] Univ Sci & Technol China, Sch Comp Sci & Technol, Hefei 230026, Anhui, Peoples R China
关键词
Concurrency; Program Transformation; Rely-Guarantee Reasoning; Simulation; ABSTRACTION; PARALLEL;
D O I
暂无
中图分类号
TP31 [计算机软件];
学科分类号
081202 ; 0835 ;
摘要
Verifying program transformations usually requires proving that the resulting program (the target) refines or is equivalent to the original one (the source). However, the refinement relation between individual sequential threads cannot be preserved in general with the presence of parallel compositions, due to instruction reordering and the different granularities of atomic operations at the source and the target. On the other hand, the refinement relation defined based on fully abstract semantics of concurrent programs assumes arbitrary parallel environments, which is too strong and cannot be satisfied by many well-known transformations. In this paper, we propose a Rely-Guarantee-based Simulation (RGSim) to verify concurrent program transformations. The relation is parametrized with constraints of the environments that the source and the target programs may compose with. It considers the interference between threads and their environments, thus is less permissive than relations over sequential programs. It is compositional w.r.t. parallel compositions as long as the constraints are satisfied. Also, RGSim does not require semantics preservation under all environments, and can incorporate the assumptions about environments made by specific program transformations in the form of rely/guarantee conditions. We use RGSim to reason about optimizations and prove atomicity of concurrent objects. We also propose a general garbage collector verification framework based on RGSim, and verify the Boehm et al. concurrent mark-sweep GC.
引用
收藏
页码:455 / 468
页数:14
相关论文
共 50 条
  • [1] A Rely-Guarantee-Based Simulation for Verifying Concurrent Program Transformations
    Liang, Hongjin
    Feng, Xinyu
    Fu, Ming
    ACM SIGPLAN NOTICES, 2012, 47 (01) : 455 - 468
  • [2] Rely-Guarantee-Based Simulation for Compositional Verification of Concurrent Program Transformations
    Liang, Hongjin
    Feng, Xinyu
    Fu, Ming
    ACM TRANSACTIONS ON PROGRAMMING LANGUAGES AND SYSTEMS, 2014, 36 (01):
  • [3] CSimpl: A Rely-Guarantee-Based Framework for Verifying Concurrent Programs
    Sanan, David
    Zhao, Yongwang
    Hou, Zhe
    Zhang, Fuyuan
    Tiu, Alwen
    Liu, Yang
    TOOLS AND ALGORITHMS FOR THE CONSTRUCTION AND ANALYSIS OF SYSTEMS, TACAS 2017, PT I, 2017, 10205 : 481 - 498
  • [4] Verifying a Concurrent Garbage Collector with a Rely-Guarantee Methodology
    Yannick Zakowski
    David Cachera
    Delphine Demange
    Gustavo Petri
    David Pichardie
    Suresh Jagannathan
    Jan Vitek
    Journal of Automated Reasoning, 2019, 63 : 489 - 515
  • [5] Verifying a Concurrent Garbage Collector with a Rely-Guarantee Methodology
    Zakowski, Yannick
    Cachera, David
    Demange, Delphine
    Petri, Gustavo
    Pichardie, David
    Jagannathan, Suresh
    Vitek, Jan
    JOURNAL OF AUTOMATED REASONING, 2019, 63 (02) : 489 - 515
  • [6] Verifying a Concurrent Garbage Collector Using a Rely-Guarantee Methodology
    Zakowski, Yannick
    Cachera, David
    Demange, Delphine
    Petri, Gustavo
    Pichardie, David
    Jagannathan, Suresh
    Vitek, Jan
    INTERACTIVE THEOREM PROVING (ITP 2017), 2017, 10499 : 496 - 513
  • [7] Matching Logic for Concurrent Programs Based on Rely/Guarantee and Abstract Patterns
    Wang, ShangBei
    Dong, WeiYu
    INTERNATIONAL JOURNAL OF SOFTWARE ENGINEERING AND KNOWLEDGE ENGINEERING, 2023, 33 (02) : 257 - 288
  • [8] Investigating the limits of rely/guarantee relations based on a concurrent garbage collector example
    Jones, Cliff B.
    Yatapanage, Nisansala
    FORMAL ASPECTS OF COMPUTING, 2019, 31 (03) : 353 - 374
  • [9] Rely-Guarantee Termination and Cost Analyses of Loops with Concurrent Interleavings
    Elvira Albert
    Antonio Flores-Montoya
    Samir Genaim
    Enrique Martin-Martin
    Journal of Automated Reasoning, 2017, 59 : 47 - 85
  • [10] Rely-Guarantee Termination and Cost Analyses of Loops with Concurrent Interleavings
    Albert, Elvira
    Flores-Montoya, Antonio
    Genaim, Samir
    Martin-Martin, Enrique
    JOURNAL OF AUTOMATED REASONING, 2017, 59 (01) : 47 - 85