z-logo
open-access-imgOpen Access
Types and higher-order recursion schemes for verification of higher-order programs
Author(s) -
Naoki Kobayashi
Publication year - 2009
Publication title -
acm sigplan notices
Language(s) - English
Resource type - Journals
SCImago Journal Rank - 0.31
H-Index - 99
eISSN - 1558-1160
pISSN - 0362-1340
DOI - 10.1145/1594834.1480933
Subject(s) - computer science , recursion (computer science) , correctness , fragment (logic) , decidability , model checking , algorithm , formal verification , linear temporal logic , programming language , theoretical computer science
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 trans- formed to an HORS that generates a tree representing all the possi- ble 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 com- plete. 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 frag- ment of the properties expressed by modal μ-calculus, but the al- gorithm 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.

The content you want is available to Zendy users.

Already have an account? Click here to sign in.
Having issues? You can contact us here
Accelerating Research

Address

John Eccles House
Robert Robinson Avenue,
Oxford Science Park, Oxford
OX4 4GP, United Kingdom