Combining Tabulation and Thresholding Techniques for Executing Multi-Adjoint Logic Programs P. Juli´ an G. Moreno Univ. Castilla-La Mancha Dept. Inf. Technologies & Comp. Systems Pascual.Julian@uclm.es Gines.Moreno@uclm.es J. Medina M. Ojeda-Aciego Universidad de M´ alaga Dept. Applied Mathematics jmedina@ctima.uma.es aciego@ctima.uma.es Abstract Multi-adjoint logic programming repre- sents an extremely flexible attempt for fuzzifying logic programming, where the classical SLD-resolution principle has been extended to cope with imperfect information. In this paper we propose an enhanced tabulation-based query an- swering procedure, which avoids the generation of useless computations via thresholding techniques. 1 Introduction Multi-adjoint logic programming [9–11] is an extremely flexible framework which combines fuzzy logic and logic programming. Given a multi-adjoint logic program, queries are eval- uated in two separate computational phases. Firstly, an operational phase in which admis- sible steps (a generalization of the classical modus ponens inference rule) are systemati- cally applied by a backward reasoning proce- dure, in a similar way to classical resolution steps in pure logic programming; until an ex- pression is obtained in which all atoms have been evaluated. Then, this last expression is interpreted in the underlying lattice during an interpretive phase [6], providing the com- puted answer for the given query. In [2] a non-deterministic tabulation goal- oriented proof procedure was introduced for * Partially supported by FEDER and the Spanish Science and Education Ministry (MEC) under grants TIN 2004-07943-C04-03 and TIN 2007-65749. Partially supported by FEDER and MEC under grant TIN 2006-15455-C03-01 and by Junta de An- daluc´ ıa under grant P06-FQM-02049. residuated (a particular case of multi-adjoint) logic programs over complete lattices. The underlying idea of tabulation is, essentially, that atoms of selected tabled predicates as well as their answers are stored in a table. When an identical atom is recursively called, the selected atom is not resolved against pro- gram clauses; instead, all corresponding an- swers computed so far are looked up in the table and the associated answer substitutions are applied to the atom. The process is re- peated for all subsequent computed answer substitutions corresponding to the atom. In [7] a fuzzy partial evaluation framework was introduced for specializing multi-adjoint logic programs. Moreover, it was pointed out that if the proposed partial evaluation process is combined with thresholding techniques, the following benefits can be obtained: The unfolding tree 1 consumes less computa- tional resources by efficiently pruning unnec- essary branches of the tree and, hence, dras- tically reducing its size. Those derivation sequences performed at ex- ecution time, need less computation steps to reach computed answers. In this paper, we show how the essence of thresholding can be also embedded into a tabulation-based query answering procedure and reinforcing the benefits of both methods in a unified framework. The structure of the paper is as follows. In Section 2 we summarize the main features of 1 An incomplete search tree used during the partial evaluation process. L. Magdalena, M. Ojeda-Aciego, J.L. Verdegay (eds): Proceedings of IPMU’08, pp. 505–512 Torremolinos (M´ alaga), June 22–27, 2008