Вопрос

Как развернуть запрос в список?

f(a,b).
f(a,c).
d(a.d).

expand(f(a,X), Out)  -----> Out=[b,c,d]
Это было полезно?

Решение

Используйте bagof/3 или setof/3.Например.:

?- bagof(X, (X = 1;X = 2), L).

L = [1,2]

ДА

В вашем случае это было бы

?- багоф(X, f(a,X), Выход).

Лицензировано под: CC-BY-SA с атрибуция
Не связан с StackOverflow
scroll top