Unfolding -Definition -Folding, in this order, for avoiding unnecessary variables in logic programs

11Citations
Citations of this article
8Readers
Mendeley users who have this article in their library.
Get full text

Abstract

We take a syntactically based approach to the automatic improvement of performances of logic programs by using the unfold/fold transformation technique. A cause of program inefficiency is often the presence of variables which are unnecessary, in the sense that they force computations of redundant values or multiple visits of data structures. We propose a strategy which automatically transforms initial program versions into new efficient versions by avoiding unnecessary variables, Our strategy is an extension of the one which was introduced in an earlier paper [Proietti-Pettorossi 90]. It is based on the syntactical characterization of the unnecessary variables and the introduction of a composite transformation rule made out of unfolding-definition-folding steps, in this order. The strategy consists in the repeated application of this composite rule to each clause with unnecessary variables. It avoids the search for eureka definitions which is often required by other techniques proposed in the literature. We define a class of programs for which our transformation strategy is successful and we propose a variant of that strategy which uses the so-called Generalization Rule. This variant is always terminating, but, in general, not all unnecessary variables are eliminated.

Cite

CITATION STYLE

APA

Proietti, M., & Pettorossi, A. (1991). Unfolding -Definition -Folding, in this order, for avoiding unnecessary variables in logic programs. In Lecture Notes in Computer Science (including subseries Lecture Notes in Artificial Intelligence and Lecture Notes in Bioinformatics) (Vol. 528 LNCS, pp. 347–358). Springer Verlag. https://doi.org/10.1007/3-540-54444-5_111

Register to see more suggestions

Mendeley helps you to discover research relevant for your work.

Already have an account?

Save time finding and organizing research with Mendeley

Sign up for free