-1
Prologのこの述語がどのように順列を生成するように働いているのか分かりますが、私はselの2番目の述語を理解できません。これが誰にも明らかかどうか?プロローグ内の指定されたリストの要素の順序の順列を返すための述語
% permutation(L1, L2): L2 is a permutation of L1
permutation([], []).
permutation(L1, [X|Y]):-
sel(L1, X, T),
permutation(T, Y).
sel([X|Y], X, Y).
sel([X|Y], Z, [X|T]):-
sel(Y, Z, T).