Proceedings of the 11th ACM SIGPLAN Conference on Principles and Practice of Declarative Programming 2009
DOI: 10.1145/1599410.1599415
|View full text |Cite
|
Sign up to set email alerts
|

Model-checking higher-order functions

Abstract: We propose a novel type-based model checking algorithm for higher-order recursion schemes. As shown by Kobayashi, verification problems of higher-order functional programs can easily be translated into model checking problems of recursion schemes. Thus, the model checking algorithm serves as a basis for verification of higher-order functional programs. To our knowledge, this is the first practical algorithm for model checking recursion schemes: all the previous algorithms always suffer from the n-EXPTIME bottl… Show more

Help me understand this report

Search citation statements

Order By: Relevance

Paper Sections

Select...
3
1
1

Citation Types

0
98
0

Year Published

2011
2011
2019
2019

Publication Types

Select...
8

Relationship

4
4

Authors

Journals

citations
Cited by 65 publications
(98 citation statements)
references
References 31 publications
0
98
0
Order By: Relevance
“…MAGE can only check reachability. Other tools, notably TRECS [10] and HMC [9], can verify safety properties of ML programs, but not equivalence.…”
Section: Examples and Experimentsmentioning
confidence: 99%
“…MAGE can only check reachability. Other tools, notably TRECS [10] and HMC [9], can verify safety properties of ML programs, but not equivalence.…”
Section: Examples and Experimentsmentioning
confidence: 99%
“…Kobayashi and Ong [7,9] have proposed a type system for recursion schemes that is equivalent to the modal µ-calculus model-checking of recursion schemes (the decidability of the model-checking problem has been proved by Ong [17]). These type systems have been applied to verification of higher-order programs [7,11,10], and practically effective typability checkers have been developed [6,8]. The present work extends type systems to deal with infinite state systems, namely deterministic pushdown automata.…”
Section: Related Workmentioning
confidence: 99%
“…Just as software model checkers for procedural languages like BLAST [4] and SLAM [3] have been constructed based on finite-state and pushdown model checking, one may hope to construct software model checkers for higher-order functional languages based on higher-order model checking. Some evidence for such a possibility has been provided recently [12,10,17,16,20].…”
Section: Introductionmentioning
confidence: 96%
“…The model checking of higher-order recursion schemes [9,19] (higher-order model checking, for short) has been studied extensively, and recently applied to higherorder program verification [12,10,17,16,20]. A higher-order recursion scheme [9,19] is a grammar for describing a possibly infinite tree, and the higher-order model checking is concerned about whether the tree described by a given higherorder recursion scheme satisfies a given property (typically expressed by the modal μ-calculus or tree automata).…”
Section: Introductionmentioning
confidence: 99%
See 1 more Smart Citation