A Type-Directed Abstraction Refinement Approach to Higher-Order Model Checking

被引:25
作者
Ramsay, Steven J. [1 ]
Neatherway, Robin P. [1 ]
Ong, C. -H. Luke [1 ]
机构
[1] Univ Oxford, Oxford OX1 2JD, England
基金
英国工程与自然科学研究理事会;
关键词
higher-order model checking; intersection types; abstraction refinement; RECURSION SCHEMES; AUTOMATA;
D O I
10.1145/2535838.2535873
中图分类号
TP31 [计算机软件];
学科分类号
081202 ; 0835 ;
摘要
The trivial-automaton model checking problem for higher-order recursion schemes has become a widely studied object in connection with the automatic verification of higher-order programs. The problem is formidably hard(1): despite considerable progress in recent years, no decision procedures have been demonstrated to scale robustly beyond recursion schemes that comprise more than a few hundred rewrite rules. We present a new, fixed-parameter polynomial time algorithm, based on a novel, type directed form of abstraction refinement in which behaviours of a scheme are distinguished by the abstraction according to the intersection types that they inhabit (the properties that they satisfy). Unlike other intersection type approaches, our algorithm reasons both about acceptance by the property automaton and acceptance by its dual, simultaneously, in order to minimize the amount of work done by converging on the solution to a problem instance from both sides. We have constructed PREFACE, a prototype implementation of the algorithm, and assembled an extensive body of evidence to demonstrate empirically that the algorithm readily scales to recursion schemes of several thousand rules, well beyond the capabilities of current state-of-the-art higher-order model checkers.
引用
收藏
页码:61 / 72
页数:12
相关论文
共 27 条
[1]  
Ball T, 2000, LECT NOTES COMPUT SC, V1885, P113
[2]   A FILTER LAMBDA-MODEL AND THE COMPLETENESS OF TYPE ASSIGNMENT [J].
BARENDREGT, H ;
COPPO, M ;
DEZANI-CIANCAGLINI, M .
JOURNAL OF SYMBOLIC LOGIC, 1983, 48 (04) :931-940
[3]  
Broadbent C, 2012, LECT NOTES COMPUT SC, V7392, P165, DOI 10.1007/978-3-642-31585-5_18
[4]  
Broadbent C, 2013, ACM SIGPLAN NOTICES, V48, P13, DOI [10.1145/2544174.2500589, 10.1145/2500365.2500589]
[5]  
Broadbent Christopher H., 2013, LIPICS, V23, P129, DOI DOI 10.4230/LIPICS.CSL.2013.129
[6]  
Clarke EdmundM., 2000, Proceedings of the International Conference on Computer Aided Veri cation (CAV), P154, DOI 10.1007/1072216715
[7]  
Coppo M., 1980, Notre Dame Journal of Formal Logic, V21, P685, DOI 10.1305/ndjfl/1093883253
[8]   Collapsible pushdown automata and recursion schemes [J].
Hague, M. ;
Murawski, A. S. ;
Ong, C. -H. L. ;
Serre, O. .
TWENTY-THIRD ANNUAL IEEE SYMPOSIUM ON LOGIC IN COMPUTER SCIENCE, PROCEEDINGS, 2008, :452-+
[9]  
Jagannathan S., 1997, Static Analysis. 4th International Symposium, SAS '97 Proceedings, P232, DOI 10.1007/BFb0032745
[10]  
Jones N. D., 1981, Automata, Languages and Programming. Eighth Colloquium, P114