Что такое логическое «не» в Прологе?

Проблема, с которой я столкнулся, несколько тривиальна. Я хочу использовать логическое не в Прологе, но мне кажется, что not / 1 - это не то, что мне нужно:

course(ai).
course(pl).
course(os).

have(X,Y) :- course(X),course(Y),not(X = Y).

Я спрашиваю:

have(X,Y), write(X-Y), nl , fail.

И я не получаю желаемого результата :(

35
задан Martin Thoma 1 April 2014 в 14:17
поделиться