Dissertação apresentada na Faculdade de Ciências e Tecnologia da Universidade Nova de Lisboa para obtenção do grau de Mestre em Computational LogicThe existing implementations of Well Founded Semantics restrict or forbid the use of
variables when using negative queries, something which is essential for using logic
programming as a programming language.
We present a procedure to obtain results under the Well Founded Semantics that
removes this constraint by combining two techniques: the transformation presented
in [MMNMH08] to obtain from a program its dual and the derivation procedure presented
in [PAP+91] to determine if a query belongs or not to the Well Founded Model
of a program.
Some problems arise during their combination, mainly due to the original environment
for which each one was designed: results obtained in the first one obey a
variant of Kunen Semantics and non-ground programs are not allowed (or previously
grounded) in the second one.
Most of these problems were solved by using abductive techniques, which lead
us to observe that the existing implementations of abduction in logic programming
disallow the use of variables.
The reason for that is the impossibility to evaluate non-ground queries, so it
seemed interesting to develop an abductive framework making use of our negation
system.
Both goals are achieved in this thesis: the capability of solving non-ground queries
under Well Founded Semantics and the use of variables in abductive logic programming