Rules + strategies for transforming lazy functional logic programs

  • Authors:
  • María Alpuente;Moreno Falaschi;Ginés Moreno;Germán Vidal

  • Affiliations:
  • DSIC, UPV, Camino de Vera s/n, 46022 Valencia, Spain;Dip. Mat. e Informatica, U. Udine, 33100 Udine, Italy;Dep. Informática, UCLM, 02071 Albacete, Spain;DSIC, UPV, Camino de Vera s/n, 46022 Valencia, Spain

  • Venue:
  • Theoretical Computer Science
  • Year:
  • 2004

Quantified Score

Hi-index 5.23

Visualization

Abstract

This work introduces a transformation methodology for functional logic programs based on needed narrowing, the optimal and complete operational principle for modern declarative languages which integrate the best features of functional and logic programming. We provide correctness results for the transformation system w.r.t, the set of computed values and answer substitutions and show that the prominent properties of needed narrowing--namely, the optimality w.r.t, the length of derivations and the number of computed solutions--carry over to the transformation process and the transformed programs. We illustrate the power of the system by taking on in our setting two well-known transformation strategies (composition and tupling). We also provide an implementation of the transformation system which, by means of some experimental results, highlights the potentiality of our approach.