A needed narrowing strategy

  • Authors:
  • Sergio Antoy;Rachid Echahed;Michael Hanus

  • Affiliations:
  • Dept. of Computer Science, Portland State University, Portland, OR;IMAG-LGI, CNRS, F-38041 Grenoble, France;MPI Informatik, Im Stadtwald, D-66123 Saarbrücken, Germany

  • Venue:
  • POPL '94 Proceedings of the 21st ACM SIGPLAN-SIGACT symposium on Principles of programming languages
  • Year:
  • 1994

Quantified Score

Hi-index 0.00

Visualization

Abstract

Narrowing is the operational principle of languages that integrate functional and logic programming. We propose a notion of a needed narrowing step that, for inductively sequential rewrite systems, extends the Huet and Le´vy notion of a needed reduction step. We define a strategy, based on this notion, that computes only needed narrowing steps. Our strategy is sound and complete for a large class of rewrite systems, is optimal w.r.t. the cost measure that counts the number of distinct steps of a derivation, computes only independent unifiers, and is efficiently implemented by pattern matching.