eng
Schloss Dagstuhl – Leibniz-Zentrum für Informatik
Leibniz International Proceedings in Informatics
1868-8969
2010-07-06
277
294
10.4230/LIPIcs.RTA.2010.277
article
Declarative Debugging of Missing Answers for Maude
Riesco, Adrian
Verdejo, Alberto
Marti-Oliet, Narciso
Declarative debugging is a semi-automatic technique that starts
from an incorrect computation and locates a program fragment responsible for the error by building a tree representing this computation and guiding the user through it to find the error. Membership equational logic (MEL) is an equational
logic that in addition to equations allows the statement of membership axioms characterizing the elements of a sort. Rewriting logic is a logic of change that extends MEL by adding rewrite rules, that correspond to transitions between states and can be nondeterministic. In this paper we propose a calculus that allows to
infer normal forms and least sorts with the equational part, and sets of reachable terms through rules. We use an abbreviation of the proof trees computed with this calculus to build appropriate debugging trees for missing answers (results that are erroneous because they are incomplete), whose adequacy for debugging is proved.
Using these trees we have implemented a declarative debugger for Maude, a high-performance system based on rewriting logic, whose use is illustrated with an example.
https://drops.dagstuhl.de/storage/00lipics/lipics-vol006-rta2010/LIPIcs.RTA.2010.277/LIPIcs.RTA.2010.277.pdf
Declarative debugging
Maude
Missing answers
Rewriting