Вариант 1 (13)
Тогава програмата, която дава решението ще има вида:
solution([X/Y|Rest]):- solution(Rest),
member(Y,[1,2,3,4,5,6,7,8]),
notbeat(X/Y,[X1/Y1|Rest]):-
Y =\= Y1, % различни вертикали Y1+X1 =\= X+Y, % различни леви диагонали
X1-Y1 =\= X-Y, % различни десни диагонали
member(X,[Y|L]):-member(X,L).