Tabling is an implementation technique that solves some limitations of Prolog's operational semantics in dealing with recursion and redundant sub-computations. Tabling works by memorizing generated answers and then by reusing them on similar calls that appear during the resolution process. In a traditional tabling system, all the arguments of a tabled subgoal call are considered when storing answers into the table space. Traditional tabling systems are thus very good for problems that require finding all answers. Mode-directed tabling is an extension to the tabling technique that supports the definition of selective criteria for specifying how answers are inserted into the table space. Implementations of mode-directed tabling are already available in systems like ALS-Prolog, B-Prolog and XSB. In this paper, we propose a more general approach to the declaration and use of mode-directed tabling, implemented on top of the YapTab tabling system, and we show applications of our approach to problems involving Justification, Preferences and Answer Subsumption.
@InProceedings{santos_et_al:OASIcs.SLATE.2012.25, author = {Santos, Jo\~{a}o and Rocha, Ricardo}, title = {{Mode-Directed Tabling and Applications in the YapTab System}}, booktitle = {1st Symposium on Languages, Applications and Technologies}, pages = {25--40}, series = {Open Access Series in Informatics (OASIcs)}, ISBN = {978-3-939897-40-8}, ISSN = {2190-6807}, year = {2012}, volume = {21}, editor = {Sim\~{o}es, Alberto and Queir\'{o}s, Ricardo and da Cruz, Daniela}, publisher = {Schloss Dagstuhl -- Leibniz-Zentrum f{\"u}r Informatik}, address = {Dagstuhl, Germany}, URL = {https://drops.dagstuhl.de/entities/document/10.4230/OASIcs.SLATE.2012.25}, URN = {urn:nbn:de:0030-drops-35123}, doi = {10.4230/OASIcs.SLATE.2012.25}, annote = {Keywords: Tabling, Mode Operators, Applications} }
Feedback for Dagstuhl Publishing