Ответ в теме: Кузнецов, Токарев, Слесарев и Резчиков играют в домино

      Комментарии к записи Ответ в теме: Кузнецов, Токарев, Слесарев и Резчиков играют в домино отключены
#1764

Задача тривиальна и решается по шаблону (в статье есть 2 похожих переборных задачи). Часть не понятным Вам предикатов уже описаны на блоге с комментариями к каждой строчке. Я не буду повторять это для каждой задачи. Пользуйтесь поиском. Предикаты append, member являются стандартными. Вместо permute можно использовать стандартный permutation.
Предикат insert тоже не нужен, я бы использовал вместо него стандартный предикат flatten (он тоже описан на блоге).

Если Вы прочитаете статью внимательно, то заметите, что permutation я не использую. И Вы тоже можете его не использовать, на мой взгляд, код будет понятнее.