Rely-Guarantee Termination and Cost Analyses of Loops with Concurrent Interleavings

被引:0
作者
Elvira Albert
Antonio Flores-Montoya
Samir Genaim
Enrique Martin-Martin
机构
[1] Complutense University of Madrid (UCM),
[2] Technische Universität Darmstadt (TUD),undefined
来源
Journal of Automated Reasoning | 2017年 / 59卷
关键词
Static analysis; Actor model; Concurrency; Rely-guarantee; Termination analysis; Cost analysis; May-happen-in-parallel analysis;
D O I
暂无
中图分类号
学科分类号
摘要
By following a rely-guarantee style of reasoning, we present novel termination and cost analyses for concurrent programs that, in order to prove termination or infer the cost of a considered loop: (1) infer the termination/cost of each loop as if it were a sequential one, imposing assertions on how shared-data is modified concurrently; and then (2) prove that these assertions cannot be violated infinitely many times and, for cost analysis, infer how many times they are violated. At the core of the analysis, we use a may-happen-in-parallel analysis to restrict the set of program points whose execution can interleave. Interestingly, the same kind of reasoning can be applied to prove termination and infer upper bounds on the number of iterations of loops with concurrent interleavings. To the best of our knowledge, this is the first method to automatically bound the cost of such kind of loops. We have implemented our analysis for an actor-based language, and showed its accuracy and efficiency by applying it on several typical applications for concurrent programs and on an industrial case study.
引用
收藏
页码:47 / 85
页数:38
相关论文
共 22 条
  • [1] 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
  • [2] 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
  • [3] 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
  • [4] On Rely-Guarantee Reasoning
    van Staden, Stephan
    MATHEMATICS OF PROGRAM CONSTRUCTION, MPC 2015, 2015, 9129 : 30 - 49
  • [5] Probabilistic rely-guarantee calculus
    McIver, Annabelle
    Rabehaja, Tahiry
    Struth, Georg
    THEORETICAL COMPUTER SCIENCE, 2016, 655 : 120 - 134
  • [6] Local Rely-Guarantee Reasoning
    Feng, Xinyu
    ACM SIGPLAN NOTICES, 2009, 44 (01) : 315 - 327
  • [7] Explicit Stabilisation for Modular Rely-Guarantee Reasoning
    Wickerson, John
    Dodds, Mike
    Parkinson, Matthew
    PROGRAMMING LANGUAGES AND SYSTEMS, PROCEEDINGS, 2010, 6012 : 610 - 629
  • [8] Inter-process buffers in separation logic with rely-guarantee
    Bornat, Richard
    Amjad, Hasan
    FORMAL ASPECTS OF COMPUTING, 2010, 22 (06) : 735 - 772
  • [9] Rely-Guarantee Reasoning for Causally Consistent Shared Memory
    Lahav, Ori
    Dongol, Brijesh
    Wehrheim, Heike
    COMPUTER AIDED VERIFICATION, CAV 2023, PT I, 2023, 13964 : 206 - 229
  • [10] CSim2 : Compositional Top-down Verification of Concurrent Systems using Rely-Guarantee
    Sanan, David
    Zhao, Yongwang
    Lin, Shang-Wei
    Yang, Liu
    ACM TRANSACTIONS ON PROGRAMMING LANGUAGES AND SYSTEMS, 2021, 43 (01):