Chapter

Functional and Logic Programming

Volume 2024 of the series Lecture Notes in Computer Science pp 170-184

Date:

Theoretical Foundations for the Declarative Debugging of Lazy Functional Logic Programs

  • Rafael CaballeroAffiliated withDepartamento de Sistemas Informáticos yProgramación, Universidad Complutense de Madrid
  • , Francisco J. López-FraguasAffiliated withDepartamento de Sistemas Informáticos yProgramación, Universidad Complutense de Madrid
  • , Mario Rodrìguez-ArtalejoAffiliated withDepartamento de Sistemas Informáticos yProgramación, Universidad Complutense de Madrid

* Final gross prices may vary according to local VAT.

Get Access

Abstract

The aim of this paper is to provide theoretical foundations for the declarative debugging of wrong answers in lazy functional logic programming. We rely on a logical framework which formalizes both the intended meaning and the execution model of programs in a simple language which combines the expressivity of pure Prolog and a significant subset of Haskell. As novelties w.r.t. to previous related approaches, we deal with functional values both as arguments and as results of higher order functions, we obtain a completely formal specification of the debugging method, and we extend known soundness and completeness results for the debugging of wrong answers in logic programming to a substantially more difficult context. A prototype implementation of a working debugger is planned as future work.