First of I
think the question might be stated slightly incorrectly. Also, this is my interpretation of what is being asked so don't complain if it turns out to be wrong.
So image you have the following facts:
fact(x1, y1).
fact(x2, y2).
fact(x3, y3).
fact(x4, y4). % fact(xn, yn) etc.
You must write a procedure:
satisfy(fact, L)
that returns:
L = [x1, x2, x3, x4]
Now, the question says
"for some Y" and not
"for all Y" (meaning it does not care what the value of
Y is), which the above does. This means that you need to specify the
Y part, but I don't see how you can do this with
satisfy(fact, L). I think you will need something like
satisfy(fact, Y, L) to specify the
Y part.
My assumption might be completely wrong as this is the first time I have used Prolog.