Reversible Debugging in Logic Programming
Abstract
Reversible debugging is becoming increasingly popular for locating the source of errors. This technique proposes a more natural approach to debugging, where one can explore a computation from the observable misbehaviour backwards to the source of the error. In this work, we propose a reversible debugging scheme for logic programs. For this purpose, we define an appropriate instrumented semantics (a so-called Landauer embedding) that makes SLD resolution reversible. An implementation of a reversible debugger for Prolog, rever, has been developed and is publicly available.
- Publication:
-
arXiv e-prints
- Pub Date:
- July 2020
- DOI:
- 10.48550/arXiv.2007.16171
- arXiv:
- arXiv:2007.16171
- Bibcode:
- 2020arXiv200716171V
- Keywords:
-
- Computer Science - Programming Languages;
- Computer Science - Logic in Computer Science;
- 68N17;
- D.1.6;
- D.2.5
- E-Print:
- 15 pages, to appear in "LNCS Honorary Volume for Manuel Hermenegildo" [AVERTIS 2019]