dpasp
dpasp copied to clipboard
ASEO inference errors for non-grounded predicates
For a very simple (and stratified) program like:
mango_seller(1..3).
0.5::deal(X, Y) :- mango_buyer(X), mango_seller(Y).
was_deal :- deal(X, Y).
#query(was_deal).
we get non-converging inference errors with ASEO as opposed to the same program with the predicate was_deal
grounded:
mango_seller(1..3).
0.5::deal(X, Y) :- mango_buyer(X), mango_seller(Y).
was_deal :- deal(1, 1).
was_deal :- deal(1, 2).
was_deal :- deal(1, 3).
was_deal :- deal(2, 1).
was_deal :- deal(2, 2).
was_deal :- deal(2, 3).
was_deal :- deal(3, 1).
was_deal :- deal(3, 2).
was_deal :- deal(3, 3).
#query(was_deal).
- Weirdly enough this inference error phenomenon doesn't always occur when we use non-grounded predicates, e.g. in the case of the graph coloring program and the
fail
condition:
fail :- edge(X, Y), color(X, C), color(Y, C).
Note that this program is non-stratified.