Types and Higher-Order Recursion Schemes for Verification of Higher-Order Programs

被引:83
|
作者
Kobayashi, Naoki [1 ]
机构
[1] Tohoku Univ, Sendai, Miyagi 980, Japan
关键词
Languages; Verification; SYSTEM; TREES;
D O I
10.1145/1594834.1480933
中图分类号
TP31 [计算机软件];
学科分类号
081202 ; 0835 ;
摘要
We propose a new verification method for temporal properties of higher-order functional programs, which takes advantage of Ong's recent result on the decidability of the model-checking problem for higher-order recursion schemes (HORS's). A program is transformed to an HORS that generates a tree representing all the possible event sequences of the program, and then the HORS is model-checked. Unlike most of the previous methods for verification of higher-order programs, our verification method is sound and complete. Moreover, this new verification framework allows a smooth integration of abstract model checking techniques into verification of higher-order programs. We also present a type-based verification algorithm for HORS's. The algorithm can deal with only a fragment of the properties expressed by modal mu-calculus, but the algorithm and its correctness proof are (arguably) much simpler than those of Ong's game-semantics-based algorithm. Moreover, while the HORS model checking problem is n-EXPTIME in general, our algorithm is linear in the size of HORS, under the assumption that the sizes of types and specifications are bounded by a constant.
引用
收藏
页码:416 / 428
页数:13
相关论文
共 50 条
  • [1] Types and Recursion Schemes for Higher-Order Program Verification
    Kobayashi, Naoki
    [J]. PROGRAMMING LANGUAGES AND SYSTEMS, PROCEEDINGS, 2009, 5904 : 2 - 3
  • [2] Linearity in Higher-Order Recursion Schemes
    Clairambault, Pierre
    Grellois, Charles
    Murawski, Andrzej S.
    [J]. PROCEEDINGS OF THE ACM ON PROGRAMMING LANGUAGES-PACMPL, 2018, 2
  • [3] Semantics of Higher-Order Recursion Schemes
    Adamek, Jiri
    Milius, Stefan
    Velebil, Jiri
    [J]. ALGEBRA AND COALGEBRA IN COMPUTER SCIENCE, PROCEEDINGS, 2009, 5728 : 49 - +
  • [4] SEMANTICS OF HIGHER-ORDER RECURSION SCHEMES
    Adamek, Jiri
    Milius, Stefan
    Velebil, Jiri
    [J]. LOGICAL METHODS IN COMPUTER SCIENCE, 2011, 7 (01)
  • [5] On the Relationship between Higher-Order Recursion Schemes and Higher-Order Fixpoint Logic
    Kobayashi, Naoki
    Lozes, Etienne
    Bruse, Florian
    [J]. ACM SIGPLAN NOTICES, 2017, 52 (01) : 246 - 259
  • [6] VERIFICATION OF PROGRAMS WITH HIGHER-ORDER ARRAYS
    KOWALCZYK, W
    URZYCZYN, P
    [J]. LECTURE NOTES IN COMPUTER SCIENCE, 1987, 278 : 251 - 258
  • [7] Exact bounds for acyclic higher-order recursion schemes
    Afshari, Bahareh
    Wehr, Dominik
    [J]. INFORMATION AND COMPUTATION, 2023, 290
  • [8] The Diagonal Problem for Higher-Order Recursion Schemes is Decidable
    Clemente, Lorenzo
    Parys, Pawel
    Salvati, Sylvain
    Walukiewicz, Igor
    [J]. PROCEEDINGS OF THE 31ST ANNUAL ACM-IEEE SYMPOSIUM ON LOGIC IN COMPUTER SCIENCE (LICS 2016), 2016, : 96 - 105
  • [9] IO vs OI in Higher-Order Recursion Schemes
    Haddad, Axel
    [J]. ELECTRONIC PROCEEDINGS IN THEORETICAL COMPUTER SCIENCE, 2012, (77): : 23 - 30
  • [10] 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