Код:
del( A, [A|B], B ).
del( A, [B|C], [B|D] ) :-
del( A, C, D ).
same_set( [], [] ).
same_set( A, [B|C] ) :-
del( B, A, D ),
same_set( D, C).
Токовый выход:
?- mesmo_conjunto([1,a,3], Xs).
Xs = [1, a, 3] ;
Xs = [1, 3, a] ;
Xs = [a, 1, 3] ;
Xs = [a, 3, 1] ;
Xs = [3, 1, a] ;
Xs = [3, a, 1] ;
false.
Что необходимо изменить в коде, чтобы он имел выход ниже?
Ожидаемый выход:
Xs=[[1,a,3],[1,3,a],[a,1,3],[a,3,1],[3,a,1],[3,1,a]]