Пролог в чем разница между \ + и \ = - PullRequest
0 голосов
/ 22 мая 2018

В чем разница \ = и \ +?

, потому что

?- 15\=14.
?- \+ 15=14.<--- this gives an error while the above does not.

Почему? Разве они не одинаковы?

Редактировать: вот ошибка:

Compiling the file:
D:\Program Files\Strawberry Prolog Beta\Games\WarCraft.pro
Warning 4: The string \+ is not an operator. (line 1, before the first clause)
Error 16: Instead of the integer 15 what is expected here is something like an infix operator or a full stop. (line 1, before the first clause)
1 error, 1 warning.

Также я использую пролог Strawberry Я также попробовал его на прологе SWI.

1 Ответ

0 голосов
/ 22 мая 2018

Я думаю, вы помещаете запросы в исходные файлы Prolog.Это не то место, куда они должны идти:

  • определения предикатов идут в исходные файлы Prolog
  • запросы вводятся в интерактивном уровне Proolog

Попробуйте запустить программу SWI-Prolog без входного файла .Вы должны получить окно с некоторыми информационными сообщениями о версии SWI-Prolog, а затем приглашение ?-.Это верхний уровень.Попробуйте ввести свой запрос там.Все запросы должны идти туда.

Я не знаю о Strawberry Prolog, но подозреваю, что там тоже самое.

...