Вопросы по теме 'gnu-prolog'

Проблема с `\+` в запросах Prolog с переменными
Я читаю банкомат «Семь языков за семь недель», и я озадачен каким-то запросом на Прологе, на который я не понимаю ответа «нет». Файл friends.pl выглядит так: likes(wallace, cheese). likes(grommit, cheese). likes(wendolene, sheep). friend(X,...
565 просмотров
schedule 22.09.2022

Segfaults Gnu Prolog в простой математике
Учитывая следующий код: example1(X) :- X is 1. example2(X) :- X is 1+1. когда я запускаю его с помощью gprolog, я получаю: $ gprolog GNU Prolog 1.4.0 By Daniel Diaz Copyright (C) 1999-2011 Daniel Diaz | ?- ['example']. compiling...
364 просмотров
schedule 22.03.2023

Стандартный способ увидеть, какая фраза / 3 переводится?
Я пытаюсь разобраться в поведении GNU Prolog: test(X,I,O) :- phrase(X,I,O). ?- test(("a",!,"b"),"ab",""). Есть ли стандартный способ увидеть, на что переводится фраза / 3? Согласно предложению ISO DCG (*), существует требование, чтобы у...
456 просмотров
schedule 01.08.2023

директива gprolog include не работает
Я запускаю gprolog версии 1.4.2 на машине Fedora 17 Linux. Я написал небольшую программу на прологе, которая работает нормально. Я определил в нем несколько предикатов, которые хочу использовать в других пролог-программах. Поэтому я решил...
803 просмотров
schedule 29.07.2022

Ошибка подтверждения GNU Prolog
Я новичок в Прологе, но я застрял в этой якобы простой команде. Я загрузил базу знаний без ошибок, и всякий раз, когда я пытаюсь выполнить assert (и даже help ), я получаю следующее сообщение: uncaught exception:...
2140 просмотров

gnu-prolog - ошибка предиката инициализации
При компиляции и запуске кода ниже ( pl_check_input.pl ) я получаю " user directive failed " в строке ":-initialization..." :- dynamic(doit/0). :- initialization(doit). :- include(head). doit :- readFB(user_input), writeFB, halt. :-...
774 просмотров
schedule 01.11.2022

В чем разница между целями без call/2 и без call/2 в прологе?
В чем разница между этими двумя целями? foo(A) :- A, !, fail. foo(A). foo(A) :- call(A), !, fail. foo(A). Кажется, они ведут себя одинаково? Какова цель call/1 и есть ли пример, когда это имеет значение?
51 просмотров
schedule 01.08.2022