Introduction to
Logic Programming
What
versus
How
 

Exercise 6.2 - Redundant Subgoal Deletion


For each of the following groups of query rules, select the alternative that is equivalent to the first rule in the group.

(a) goal(X) :- p(X,Y) & q(Y) & q(Z)
goal(X) :- p(X,Y)
goal(X) :- p(X,Y) & q(Y)
goal(X) :- p(X,Y) & q(Z)

(b) goal(X) :- p(X) & q(Z) & q(W)
goal(X) :- p(X)
goal(X) :- p(X) & q(X)
goal(X) :- p(X) & q(W)

(c) goal(X,Y,Z) :- p(X,Y) & q(Y) & q(Z) & q(W)
goal(X,Y,Z) :- p(X,Y) & q(Y) & q(Z)
goal(X,Y,Z) :- p(X,Y) & q(Y) & q(W)
goal(X,Y,Z) :- p(X,Y) & q(Z) & q(W)