ACM Home Page
Please provide us with feedback. Feedback
Suspension analyses for concurrent logic programs
Full text PdfPdf (2.26 MB)
Source ACM Transactions on Programming Languages and Systems (TOPLAS) archive
Volume 16 ,  Issue 3  (May 1994) table of contents
Pages: 649 - 686  
Year of Publication: 1994
ISSN:0164-0925
Authors
Michael Codish  Weizmann Institute of Technology, Rehovot, Israel
Moreno Falaschi  Univ. of Pisa, Pisa, Italy
Kim Marriott  IBM T. J. Watson Research Center, Yorktown Heights, NY
Publisher
ACM  New York, NY, USA
Bibliometrics
Downloads (6 Weeks): 6,   Downloads (12 Months): 28,   Citation Count: 8
Additional Information:

abstract   references   cited by   index terms   review   collaborative colleagues  

Tools and Actions: Request Permissions Request Permissions    Review this Article  
DOI Bookmark: Use this link to bookmark this Article: http://doi.acm.org/10.1145/177492.177656
What is a DOI?

ABSTRACT

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.


REFERENCES

Note: OCR errors may be found in this Reference List extracted from the full text article. ACM has opted to expose the complete List rather than only correct and linked references.

 
1
BARBUTI, R., AND MARTELLI, M. 1990. Recognizing non-floundering logic programs and goals. Int. J. Found. Comput. Sci., 1, 2, 151-163.
 
2
 
3
CODISH, M., DAMS, D., AND EYAL, Y. 1991. Derivation and safety of an abstract unification algorithm for groundness and aliasing analysis, in Proceedings of the 8th International Conference on Logic Programming. MIT Press, Cambridge, Mass., 79-93.
 
4
CODISH, M., FAI~SCHI, M., AND MARRIOTT, K. 1991. Suspension analysis for concurrent logic programs. In Proceedings of the 8th International Conference on Logic Programming. MIT Press, Cambridge, Mass., 331-345.
 
5
 
6
 
7
CORSINI, M., AND FIL~, G. 1989. A complete framework for the abstract interpretation of logic programs: Theory and application. Tech. Rep., Univ. di Padova, Italy.
 
8
9
 
10
 
11
 
12
 
13
 
14
MARRIOTT, K., AND S~NDERGAARD, H. 1989. Semantics-based dataflow analysis of logic programs. In Information Processing 89. North-Holland, Amsterdam.
 
15
 
16
NAISH, L. 1984. Heterogeneous SLD resolution. J. Logic Program. 1, 4.
 
17
 
18
SATO, T., AND TAMAKI, H. 1984. Enumeration of success patterns in logic programs. Theor. Comput. Sci. 34, 227-240.
19
 
20
STATMAN, R. 1985. Logical relations and the typed lambda calculus. Inf. Contr. 65, 85-97.
 
21
22



REVIEW

"Marguerite Elizabeth Saacks Giguette : Reviewer"

The authors consider the relationship between suspension analysis of concurrent logic programs, specifically FCP(:) programs, and abstract interpretations. This research paper formalizes the operational semantics of an FCP(:) program. Readers   more...

Collaborative Colleagues:
Michael Codish: colleagues
Moreno Falaschi: colleagues
Kim Marriott: colleagues