Narrowing Failure in Functional Logic Programming

  • Authors:
  • Francisco Javier López-Fraguas;Jaime Sánchez-Hernández

  • Affiliations:
  • -;-

  • Venue:
  • FLOPS '02 Proceedings of the 6th International Symposium on Functional and Logic Programming
  • Year:
  • 2002

Quantified Score

Hi-index 0.00

Visualization

Abstract

Negation as failure is an important language feature within the logic programming paradigm. The natural notion generalizing negation as failure in a functional logic setting is that of finite failure of reduction. In previous works we have shown the interest of using such programming construct when writing functional logic programs, and we have given a logical status to failure by means of proof calculi designed to deduce failures from programs. In this paper we address the problem of the operational mechanism for the execution of functional logic programs using failure. Our main contribution is the proposal of a narrowing relation able to deal with failures, which is constructive in the usual sense of the term in the context of negation, that is, narrowing is able to find substitutions for variables even in presence of failures. As main technical results, we prove correctness and completeness of the narrowing relation with respect to the proof-theoretic semantics.