ACM Home Page
Please provide us with feedback. Feedback
A method for specializing logic programs
Full text PdfPdf (3.30 MB)
Source ACM Transactions on Programming Languages and Systems (TOPLAS) archive
Volume 12 ,  Issue 2  (April 1990) table of contents
Pages: 253 - 302  
Year of Publication: 1990
ISSN:0164-0925
Authors
A. Bossi  Univ. Degli Studi di Padova, Padua, Italy
N. Cocco  Univ. Degli Studi di Padova, Padua, Italy
S. Dulli  Univ. Degli Studi di Padova, Padua, Italy
Publisher
ACM  New York, NY, USA
Bibliometrics
Downloads (6 Weeks): 1,   Downloads (12 Months): 33,   Citation Count: 9
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/78942.78947
What is a DOI?

ABSTRACT

A specialization method for logic programs that allows one to restrict a general program to special cases by means of constraint predicates is presented. A set of basic transformation operations, which are shown to produce equivalent programs, is defined. The method uses these operations for propagating the constraint information through the program and for consequently simplifying it whenever possible. Some examples of specializations are given, and some improvements and developments of the method are discussed.


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
 
2
ANDERSON, J. M., AND JOHNSTONE, $. W., JR. Natural Deduction. Wadsworth, Belmont, Calif., 1962.
3
4
 
5
6
 
7
CLARK, K.r. Negation as failure. In Logic and Data Bases, H. Gallaire and J. Minker, Eds. Plenum Press, New York, 1978, 293-322.
 
8
ERSHOV, A. P. Mixed computation potential applications and problems for study. Theor.{ Comput. Sci. 18. I (1982), 41-67.
 
9
FUJITA, H. An algorithm for partial evaluation with constraints. ICOT Tech. Memo. TM-0367, ICOT, Tokyo, Aug. 1987.
 
10
FUTAMURA, Y. Partialevaluationofcomputationprocess--Anapproachtoacompiler-compiler. Syst. Comput. Control 2, 5 (1971), 45-50.
 
11
FUTAMURA, Y. Program evaluation and generalized partial computation. In Proceedings of the International Conference on Fifth Generation Computer Systems (Tokyo, Nov. 1988). pp. 685-692.
 
12
GALLANGHER, J. Transforming logic programs by specializing interpreters. In Proceedings of ECAI 86 (Brighton Center, U.K., 1986). 109-122.
 
13
GHELFO, S., AND LEVl, G. A partial evaluator for metaprograms in a multiple theories logic language. In Proceedings 2nd National Conference on Logic Programming (Turin, May 1987). GULP, Pisa, 1987, 13-24. (In Italian).
 
14
 
15
 
16
HARALDSSON, A. A program manipulation system based on partial evaluation. Stud. Sci. Technol., Ph.D. dissertation 14, Dept. Computer and Information Sciences, Link6ping Univ., Link6ping, Sweden, 1977.
17
 
18
 
19
20
 
21
LEVI, G. Object level reflection of inference rules by partial evaluation (extended abstract). In Workshop on Meta-Level Architectures and Reflection (Sardinia, Italy, 1986). P. Maes and D. Nardi, Eds. Elsevier, Amsterdam, 1988, 313-327.
 
22
 
23
LOGICWARE, INC. SZKI. MPROLOG Language Reference, Release 2.1. Logicware, Inc., Budapest, Sept. 1985.
 
24
MATSUMOTO, Y., TANAKA, H., HIRAKAWA, H., MIYOSHI, H., AND YASUKAWA, H. BUP: A Bottom-Up Parser embedded in Prolog. New Generation Comput. 1, 2 (1983), 145-158.
25
 
26
PETTOROSSI, A., AND PROIETTI, M. Decidability results and characterization of strategies for the development of logic programs. In Logic Programming, Proceedings of the 6th International Conference, G. Levi and M. Martelli, Eds. The MIT Press, Cambridge, Mass., 1989, pp. 539-553.
 
27
PROIETTI, M., AND PETTOROSSI, A. Techniques for the automatic improvement of logic programs. Tech. Rep. IASI-CNR R231, IASI-CNR, Rome, 1988.
 
28
SATO, T., AND TAMAKI, H. Transformational logic program synthesis. In Proceedings of the International Conference on Fifth Generation Computer Systems. 1984, pp. 195-201.
 
29
SEKI, H., AND FURUKAWA, $. Notes on transformation techniques for generate and test logic programs. In Proceedings of the Symposium on Logic Programming. 1987, pp. 215-223.
 
30
TAKEUCHI, A., AND FURUKAWA, K. Partial evaluation of Prolog programs and its application to metaprogramming. In Information Processing 86, H. J. Kugler, Ed. North-Holland, Dublin, 1986, pp. 415-420.
 
31
TAMAKI, H., AND SATO, T. A transformation system for logic programs which preserves equivalence. ICOT Tech. Rep. TR-018, ICOT, Tokyo, Aug. 1983.
 
32
TAMAKI, H., AND SATO, T. Unfold/fold transformation of logic programs. In Proceedings of the 2nd International Logic Programming Conference (Uppsala, Sweden, July 1984). S.-A. T~irnlund, Ed., Uppsala, Univ., 1984, pp. 127-138.
33
 
34
VIELLE, L. Recursion in deductive databases: A DB-complete proof procedure based on SLD- resolution. Tech. Rep. Kb-15, Munich, Nov. 1986.
 
35
ZANIOLO, C., AND SACCA, D. Implementation of recursive queries for a data language based on pure Horn logic. In Proceedings of the 4th International Conference on Logic Programming (Melbourne, May 1987). J.-L. Lasser, Ed. MIT Press, Cambridge, Mass., 1987, 104-135.

CITED BY  9


REVIEW

"Alberto Pettorossi : Reviewer"

The authors address the problem of deriving new logic programs from old ones via a specialization method that is related to program transformation techniques. The paper describes the basic rules for the specialization process and provides a st  more...