Automatic Termination Verification for Higher-Order Functional Programs

被引:0
|
作者
Kuwahara, Takuya [1 ]
Terauchi, Tachio [2 ]
Unno, Hiroshi [3 ]
Kobayashi, Naoki [1 ]
机构
[1] Univ Tokyo, Tokyo 1138654, Japan
[2] Nagoya Univ, Nagoya, Aichi 4648601, Japan
[3] Univ Tsukuba, Tsukuba, Ibaraki 305, Japan
来源
关键词
SIZE-CHANGE PRINCIPLE; DEPENDENT TYPES; MODEL-CHECKING; ABSTRACTION;
D O I
暂无
中图分类号
TP31 [计算机软件];
学科分类号
081202 ; 0835 ;
摘要
We present an automated approach to verifying termination of higher-order functional programs. Our approach adopts the idea from the recent work on termination verification via transition invariants (a.k.a. binary reachability analysis), and is fully automated. Our approach is able to soundly handle the subtle aspects of higher-order programs, including partial applications, indirect calls, and ranking functions over function closure values. In contrast to the previous approaches to automated termination verification for functional programs, our approach is sound and complete, relative to the soundness and completeness of the underlying reachability analysis and ranking function inference. We have implemented a prototype of our approach for a subset of the OCaml language, and we have confirmed that it is able to automatically verify termination of some non-trivial higher-order programs.
引用
收藏
页码:392 / 411
页数:20
相关论文
共 50 条