5 lines
159 B
Prolog
5 lines
159 B
Prolog
power_set( [], [[]]).
|
|
power_set( [X|Xs], PS) :-
|
|
power_set(Xs, PS1),
|
|
maplist( append([X]), PS1, PS2 ), % i.e. prepend X to each PS1
|
|
append(PS1, PS2, PS).
|