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

Пролог, сбой и не отступать
Есть ли какой-либо встроенный предикат в SWI-Prolog, который всегда будет давать сбой и предотвращать возврат машины - это остановка немедленного выполнения программы (это не то, что делает fail/0 )? Я мог бы использовать порезы, но они мне не...
4908 просмотров
schedule 18.11.2023

Поиск запроса, для которого программа на прологе дает неверный результат
Эта программа на Прологе определяет третий аргумент как максимальное значение первых двух числовых аргументов: max(X, Y, X) :- X >= Y, !. max(X, Y, Y). Я думаю, что эта программа работает просто отлично. Но мне сказали, что это может дать...
654 просмотров
schedule 16.09.2022

Пролог, о том, как формировать лучшие предложения
У меня есть следующие пункты: num_parent(adam, X) :- !, X = 0. num_parent(eve, X) :- !, X = 0. num_parent(X, 2). Когда я набрал запрос: num_parent(eve,X). Он возвращает только: X = 0. чего я и хочу. Но когда я...
89 просмотров

Пролог: «вырезать» в запросе против правил/фактов
Выполняя упражнение 10.4 на learnprolognow , может кто-нибудь объяснить мне или помогите мне представить, почему для ?- p(X),p(Y) мы получаем: X=1,Y=1; X=1,Y=2; X=2, Y=1; X=2, Y=1. И не только X=1, Y=1; X=1, Y=2. Я думаю, что неправильно...
208 просмотров
schedule 10.06.2024

swi пролог: соединение и сокращение
Я пытаюсь реализовать интерпретатор пролога в java. Я пытаюсь понять, как должен работать оператор ','. Я попытался реализовать такое эквивалентное правило: and(A, B) :- A, B. Я тестирую свою реализацию на основе приведенной ниже логической...
343 просмотров
schedule 26.08.2022

Требования к пространству и времени для соответствия процессору ISO-Prolog
Все реализации функционального языка программирования scheme должны выполнить оптимизацией хвостового вызова всякий раз, когда это применимо. Есть ли у iso-prolog ? и / или аналогичные требования? Мне ясно, что функции процессора Prolog,...
61 просмотров

Обрезка точки выбора требует сокращения, но я думаю, что компилятор должен быть достаточно резким, чтобы сделать это самостоятельно.
Я делаю упражнение по написанию between/3 , которое принимает дополнительное значение шага. Это интересное упражнение, быстро показывающее: преимущество тегированных целых чисел (т.е. используйте pos(X) вместо X , если X является...
59 просмотров
schedule 08.03.2022