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

Что означает предикат простой / 1 в Прологе (SWI-Prolog)
Я столкнулся с проблемой при чтении книги. Я вижу, что программа использует предикат "простой" (я думаю, simple/1 ). Я не знаю, что означает этот предикат, я не могу найти его с ?-help(simple) в консоли. Но когда я попытался выполнить несколько...
764 просмотров
schedule 10.11.2021

Почему пролог gnu не поддерживает ложный предикат? (Я перешел на swi)
Я использовал штуку gprolog, чтобы делать некоторые вещи в прологе. Но теперь, тестируя еще какой-то код, я обнаружил, что он не поддерживает "false". Что поддерживает swi?
1639 просмотров
schedule 21.02.2022

Невозможно создать факт в Jekejeke Prolog
Я использую учебник Seven Languages ​​In Seven Weeks Prolog и пытаюсь выполнить несколько примеров, используя Android Jekejeke Runtime . Например, если я добавлю likes(wallace, grommit). из учебника, я получаю. Error: Undefined, private...
545 просмотров
schedule 22.02.2022

Какая польза от пар прологов внутри или вне списков
Я несколько раз встречал пары ключ-значение в документе SWI-PL, но не мог получить о них хорошей информации. Это что-то стандартное в прологе или это просто расширение только для swi pl? В основном можно найти здесь:...
968 просмотров
schedule 25.02.2022

Эквивалент травления Python в SWI Prolog?
У меня есть программа на Прологе, в которой я выполняю поиск грубой силы по всем строкам до определенной длины. Я проверяю, какие строки соответствуют определенному шаблону, продолжая добавлять шаблоны, пока, надеюсь, не найду набор шаблонов,...
332 просмотров
schedule 18.03.2022

SICStus Пролог атом в строку
Мне нужно преобразовать атом Prolog в целое число. Например: ?- convert('123', X). X = 123 yes Я видел несколько ответов SO об этом, но они полагаются на SWI-Prolog, и я вынужден использовать SICStus Prolog. Приведение к строке также...
922 просмотров
schedule 13.04.2022

Порядок терминов для сложного абстрактного синтаксического дерева
У меня есть вопрос об абстрактных синтаксических деревьях. В частности, я хочу отсортировать несколько деревьев с определенным порядком терминов. Как определить порядок терминов для AST со следующими свойствами: Почти для всех терминов порядок...
483 просмотров
schedule 24.05.2022

Лучший способ определить предикат в Прологе
У меня проблема с определением процедур в Прологе. У меня есть два исходных файла, и я хочу проконсультироваться с движком Prolog с обоими. Это можно сделать, вызвав Prolog как swipl -g «['1.pl', '2.pl']. Оба файла созданы другой программой,...
4431 просмотров
schedule 17.06.2022

Всегда ли необходимо использовать '.\n' при чтении потоков в Прологе?
Я использую каналы для связи двух процессов Prolog, и каждый раз, когда я достигал предиката read/2 для чтения сообщения из моего канала, программа блокировалась и оставалась такой. Я не мог понять, почему это произошло (пробовал с предельно...
613 просмотров
schedule 16.07.2022

Расширение DCG: игнорируется ли стойкость?
Предположим, у меня есть следующее правило DCG: factor(X) --> "(", expr(X), ")". Обычно это переводится на: factor(X, A, B) :- [40|C] = A, expr(X, C, D), [41|B] = D. Может ли система Пролога переводить это следующим образом,...
843 просмотров
schedule 25.07.2022

пролог атома concat swi и yap пролог
Вход : run([p(X,Y,Z),h(Z,P,Q)],Out). код: :- ensure_loaded(library(lists)). run([X|Y],Out) :- X =.. [Fct|Args], X =..Total, length(Args,L), concat(abs_,L,Fct_A), Out =.. [Fct_A|Total]. на прологе swi я получаю...
984 просмотров
schedule 24.05.2023

Что означает режим +,+ в Прологе?
Итак, мне говорят, что конкретный предикат должен работать в режиме +,+. Что это означает на Прологе?
718 просмотров
schedule 27.02.2023

Prolog — необычный синтаксис cons для списков
Я наткнулся на незнакомый фрагмент синтаксиса Пролога в статье Ли Нейша Программирование логики высшего порядка на Прологе. . Вот первый пример кода из статьи: % insertion sort (simple version) isort([], []). isort(A.As, Bs) :- isort(As,...
4877 просмотров
schedule 10.03.2023

Разница между двумя вариантами реализации
Есть ли какая-то логическая разница между этими двумя реализациями вариантного предиката? variant1(X,Y) :- subsumes_term(X,Y), subsumes_term(Y,X). variant2(X_,Y_) :- copy_term(X_,X), copy_term(Y_,Y), numbervars(X, 0, N), numbervars(Y,...
864 просмотров
schedule 14.04.2023

Как я могу написать пары ключ-значение на Прологе?
Представьте, что у меня есть следующий предикат, в котором говорится, что идентификатор loc1 обозначает местоположение. isLocation('loc1', 'Location 1'). Я хочу предоставить переводы для второго текста ( Location 1 ), т.е. е. пары...
1116 просмотров
schedule 20.01.2023

Как я могу смоделировать мягкий разрез в Прологе?
Как я могу имитировать мягкую резку ? *-> Т; E в ISO-прологе? У меня есть побочные эффекты, поэтому я не могу не вызывать его несколько раз. За исключением последнего требования, я думаю, что следующее определение работает: if_(I, T, E)...
486 просмотров
schedule 12.06.2023

приоритет отрицания в прологе SWI
Вот цитата из книги Блэкберна и Боса «Представление и вывод для естественного языка». :- op(900,yfx,>). % implication :- op(850,yfx,v). % disjunction :- op(800,yfx,&). % conjunction :- op(750, fy,-). % negation Как и ожидалось,...
205 просмотров
schedule 06.07.2023

Компактное написание функциональной нотации
Написание функциональной нотации часто довольно затратно с точки зрения потребления вспомогательного пространства. Это особенно важно для канонического написания списков. Сначала обратите внимание на размер вывода: в то время как для обычного...
243 просмотров
schedule 23.05.2023

Наименьшая `max_arity` составных терминов в программах ISO Prolog
Системы пролога, нацеленные на iso-prolog соответствие не обязано поддерживать составные термины с произвольно большими арностями. Флаг Prolog max_arity отражает это. Согласно ISO / IEC 13211-1: 1995: 7.11.2.3 Флаг: max_arity...
132 просмотров

Правильная обработка денормальных чисел с плавающей запятой в ISO-Prolog
Денормализованные числа с плавающей запятой являются чем-то особенным: Что говорит стандарт ISO-Prolog о том, как с ними следует обращаться? Мне ясно, что создание исключения evaluation_error(underflow) всякий раз, когда возникают эти...
137 просмотров