Termination analysis of logic programs through combination of type-based norms

被引:33
作者
Bruynooghe, Maurice [1 ]
Codish, Michael
Gallagher, John R.
Genaim, Samir
Vanhoof, Wim
机构
[1] Univ Politecn Madrid, Fac Informat, CLIP Grp, E-28660 Madrid, Spain
[2] Ben Gurion Univ Negev, Dept Comp Sci, IL-84105 Beer Sheva, Israel
[3] Roskilde Univ, Dept Kommunikat Virksomhed & Informat Teknol, DK-4000 Roskilde, Denmark
[4] Katholieke Univ Leuven, Dept Comp Wetenschappen, B-3001 Heverlee, Belgium
[5] Univ Namur, Inst Informat, B-5000 Namur, Belgium
来源
ACM TRANSACTIONS ON PROGRAMMING LANGUAGES AND SYSTEMS | 2007年 / 29卷 / 02期
关键词
languages; theory; verification; abstract interpretation; dataflow analysis; global analysis; groundness analysis; program analysis; termination analysis;
D O I
10.1145/1216374.1216378
中图分类号
TP31 [计算机软件];
学科分类号
081202 ; 0835 ;
摘要
This article makes two contributions to the work on semantics-based termination analysis for logic programs. The first involves a novel notion of type-based norm where for a given type, a corresponding norm is defined to count in a term the number of subterms of that type. This provides a collection of candidate norms, one for each type defined in the program. The second enables an analyzer to base termination proofs on the combination of several different norms. This is useful when different norms are better suited to justify the termination of different parts of the program. Application of the two contributions together consists in considering the combination of the type-based candidate norms for a given program. This results in a powerful and practical technique. Both contributions have been introduced into a working termination analyzer. Experimentation indicates that they yield state-of-the-art results in a fully automatic analysis tool, improving with respect to methods that do not use both types and combined norms.
引用
收藏
页数:44
相关论文
共 52 条
[1]   REASONING ABOUT TERMINATION OF PURE PROLOG PROGRAMS [J].
APT, KR ;
PEDRESCHI, D .
INFORMATION AND COMPUTATION, 1993, 106 (01) :109-157
[2]  
APT KR, 1990, HDB THEORETICAL COMP, VB, P495
[3]  
Apt KR., 1997, From Logic Programming to Prolog. Prentice Hall International series in computer science
[4]  
BENOY F, 1996, P 6 INT WORKSH LOG P, P204
[5]  
BORDSKY A, 1989, P 8 ACM SIGACT SIGAR, P190
[6]   On modular termination proofs of general logic programs [J].
Bossi, A ;
Cocco, N ;
Rossi, S ;
Etalle, S .
THEORY AND PRACTICE OF LOGIC PROGRAMMING, 2002, 2 :263-291
[7]  
BOSSI A, 1992, LECT NOTES COMPUT SC, V582, P73
[8]  
BOSSI A, 1991, LECT NOTES COMPUT SC, V494, P153
[9]  
Bruynooghe M, 2005, LECT NOTES COMPUT SC, V3672, P35
[10]  
Bruynooghe M, 2002, LECT NOTES COMPUT SC, V2477, P477