Verification of Higher-Order Concurrent Programs with Dynamic Resource Creation

被引:1
|
作者
Yasukata, Kazuhide [1 ]
Tsukada, Takeshi [1 ]
Kobayashi, Naoki [1 ]
机构
[1] Univ Tokyo, Tokyo, Japan
关键词
D O I
10.1007/978-3-319-47958-3_18
中图分类号
TP18 [人工智能理论];
学科分类号
081104 ; 0812 ; 0835 ; 1405 ;
摘要
We propose a sound and complete static verification method for (higher-order) concurrent programs with dynamic creation of resources, such as locks and thread identifiers. To deal with (possibly infinite) resource creation, we prepare a finite set of abstract resource names and introduce the notion of scope-safety as a sufficient condition for avoiding the confusion of different concrete resources mapped to the same abstract name. We say that a program is scope-safe if no resource is used after the creation of another resource of the same abstract name. We prove that the pairwise-reachability problem is decidable for scope-safe programs with nested locking. We also propose a method for checking that a given program is scope-safe and with nested locking.
引用
收藏
页码:335 / 353
页数:19
相关论文
共 50 条
  • [1] VERIFICATION OF PROGRAMS WITH HIGHER-ORDER ARRAYS
    KOWALCZYK, W
    URZYCZYN, P
    [J]. LECTURE NOTES IN COMPUTER SCIENCE, 1987, 278 : 251 - 258
  • [2] Types and Higher-Order Recursion Schemes for Verification of Higher-Order Programs
    Kobayashi, Naoki
    [J]. ACM SIGPLAN NOTICES, 2009, 44 (01) : 416 - 428
  • [3] Static Analysis of Concurrent Higher-Order Programs
    Stievenart, Quentin
    Nicolay, Jens
    De Meuter, Wolfgang
    De Roover, Coen
    [J]. 2015 IEEE/ACM 37TH IEEE INTERNATIONAL CONFERENCE ON SOFTWARE ENGINEERING, VOL 2, 2015, : 821 - 822
  • [4] Modular Verification of Higher-Order Functional Programs
    Sato, Ryosuke
    Kobayashi, Naoki
    [J]. PROGRAMMING LANGUAGES AND SYSTEMS (ESOP 2017): 26TH EUROPEAN SYMPOSIUM ON PROGRAMMING, 2017, 10201 : 831 - 854
  • [5] Automated Verification of Higher-Order Functional Programs
    Terauchi, Tachio
    [J]. FUNCTIONAL AND LOGIC PROGRAMMING (FLOPS 2012), 2012, 7294 : 2 - 2
  • [6] Temporal Verification of Higher-Order Functional Programs
    Murase, Akihiro
    Terauchi, Tachio
    Kobayashi, Naoki
    Sato, Ryosuke
    Unno, Hiroshi
    [J]. ACM SIGPLAN NOTICES, 2016, 51 (01) : 57 - 68
  • [7] Formal Verification of Higher-Order Probabilistic Programs
    Sato, Tetsuya
    Aguirre, Alejandro
    Barthe, Gilles
    Gaboardi, Marco
    Garg, Deepak
    Hsu, Justin
    [J]. PROCEEDINGS OF THE ACM ON PROGRAMMING LANGUAGES-PACMPL, 2019, 3 (POPL):
  • [8] Compositional model extraction for higher-order concurrent programs
    Ghica, DR
    Murawski, AS
    [J]. TOOLS AND ALGORITHMS FOR THE CONSTRUCTION AND ANALYSIS OF SYSTEMS, PROCEEDINGS, 2006, 3920 : 303 - 317
  • [9] Soft Contract Verification for Higher-Order Stateful Programs
    Nguyen, Phuc C.
    Gilray, Thomas
    Tobin-Hochstadt, Sam
    Van Horn, David
    [J]. PROCEEDINGS OF THE ACM ON PROGRAMMING LANGUAGES-PACMPL, 2018, 2
  • [10] Automatic Termination Verification for Higher-Order Functional Programs
    Kuwahara, Takuya
    Terauchi, Tachio
    Unno, Hiroshi
    Kobayashi, Naoki
    [J]. PROGRAMMING LANGUAGES AND SYSTEMS, 2014, 8410 : 392 - 411