SUSPENSION ANALYSES FOR CONCURRENT LOGIC PROGRAMS

被引:25
作者
CODISH, M
FALASLCHI, M
MARRIOTT, K
机构
[1] WEIZMANN INST SCI,IL-76100 REHOVOT,ISRAEL
[2] UNIV PISA,I-56100 PISA,ITALY
[3] TJ WATSON RES CTR,YORKTOWN HTS,NY
来源
ACM TRANSACTIONS ON PROGRAMMING LANGUAGES AND SYSTEMS | 1994年 / 16卷 / 03期
关键词
LANGUAGES; ABSTRACT INTERPRETATION; CONCURRENT LOGIC PROGRAMMING; PROGRAM ANALYSIS;
D O I
10.1145/177492.177656
中图分类号
TP31 [计算机软件];
学科分类号
081202 ; 0835 ;
摘要
Concurrent logic languages specify reactive systems which consist of collections of communicating processes. The presence of unintended suspended computations is a common programming error which is difficult to detect using standard debugging and testing techniques. We develop a number of analyses, based on abstract interpretation, which succeed if a program is definitely suspension free. If an analysis fails the program may, or may not, be suspension free. Examples demonstrate that the analyses are practically useful. They are conceptually simple and easy to justify because they are based directly on the transition system semantics of concurrent logic programs. A naive analysis must consider all scheduling policies. However, it is proven that for our analyses it suffices to consider only one scheduling policy, allowing for efficient implementation.
引用
收藏
页码:649 / 686
页数:38
相关论文
共 22 条
[1]  
[Anonymous], 1988, FDN DEDUCTIVE DATABA
[2]  
BARBUTI R, 1990, INT J F COMPUT SCI, V2, P151
[3]  
BOSSI A, 1991, LECT NOTES COMPUT SC, V494, P153
[4]  
CODISH M, 1991, 8TH P INT C LOG PROG, P79
[5]  
CODISH M, 1991, 8TH P INT C LOG PROG, P331
[6]  
CODISH M, 1993, LECT NOTES COMPUTER, V700, P633
[7]  
CODOGNET C, 1990, 1990 P N AM C LOG PR, P215
[8]  
CORSINI MM, 1989, COMPLETE FRAMEWORK A
[9]  
COUSOT P, 1992, LECT NOTES COMPUT SC, V631, P269, DOI 10.1007/3-540-55844-6_142
[10]  
Cousot P., 1977, P 4 ACM SIGACT SIGPL, P238, DOI [DOI 10.1145/512950.512973, 10.1145/512950.512973]