我目前在给定一个集合,示例[1,2,3]并填充列表列表时遇到生成功率集的问题。我在Prolog中完全是新手,并且能够生成这样的powersets,但它是递归的并且逐个返回它们。
powerset([], []).
powerset([E|Tail], [E|OtherTail]) :-
powerset(Tail, OtherTail).
powerset([_|Tail], OtherTail) :-
powerset(Tail, OtherTail).
我正在尝试将其全部放入一个列表中:Example [1,2] -> [[1], [2], [1,2], []]