Я пытаюсь изменить список с помощью поиска и замены, мне интересно, как мне выполнить поиск в списке с поисковым термином как список тоже? Допустим, у меня есть список [1,2,3,4]. Я хочу выделить 2, и ...
У меня возникли проблемы с пониманием следующей факториальной программы fact1(0,Result) :- Результат равен 1.
факт1(N,Результат): - N > 0, N1 равен N-1, факт1(N1,Результат1), Результат равен Результат1*N. ...
Полный пролог для новичков здесь. Допустим, у меня есть база знаний по прологу, которая содержит еду и ее цену, например: food (banana, 99) и т. д. Я пытаюсь написать предикат, который вернет правда ...
Я использую библиотеку chr вместе с интерфейсом jpl. У меня возник общий вопрос. Я отправляю ограничения из SWI Prolog в экземпляр java-класса из моей программы CHR. ...
Я хотел бы прочитать простой текстовый файл и применить предикат к каждой строке (предикаты содержат запись, которая выполняет вывод). Как мне это сделать?
Я видел довольно много статей о программе доказательства теорем SATCHMO, в которых рассказывается о реализациях Пролога. Но единственная реализация исходного кода, которую я нашел до сих пор, была в книге, и она была действительно ограниченной ...
Я пишу программу на прологе, которая подсчитывает количество появлений числа в списке count ([], X, 0).
count ([X | T], X, Y): - count (T, X, Z), Y равно 1 + Z.
count ([_ | T], X, Z): - count (T, X, Z). и это ...
Я ищу алгоритм для решения следующей проблемы: Допустим, я организую курс с 300 участниками и 6 семинарами, разделенными на 3 временных периода. Каждый участник должен зарегистрироваться на ...
Я как раз читал книгу «Семь языков за семь недель». Я установил gprolog на свой компьютер Mac с помощью командного порта install gprolog-devel и запустил первый код пролога. любит (уоллес, сыр).
нравится (...
Я пытался выполнить следующее: если у меня есть два списка, L1 и L2, я хотел, чтобы результат (R) был «вычитанием» L2 из L1. Пример: L1 = [1,2,3]
L2 = [2,3,4,5] R = [1] Я БЫЛ ...
Я пишу интерпретатор для игры. Пользователь вводит свой ход в интерпретатор, и программа выполняет этот ход. Теперь я хочу установить ограничение по времени для каждого решения. Игрок не должен уметь ...
Prolog имеет уникальный способ обработки вещей, особенно потому, что практически каждая операция включает рекурсию того или иного рода. Одним из классических примеров, который есть в каждом языке, является сортировка списка ...
Я уже освоил функциональное программирование; Я знаком (хотя и не разбираюсь) в Haskell и PLT Scheme. Я использовал PLT Scheme для создания небольших интерпретаторов для игрушечных языков (...
Я пытаюсь создать DCG, который распознает все списки, соответствующие этой форме: a ^ nb ^ 2m c ^ 2m d ^ n.
Я написал следующие правила:
s -> [].
с -> объявление.
ad -> a, ad, d.
ad -> bc.
bc --...
Следующий код является кодом Пролога, который выдает все целые числа больше 0. Каждый раз, когда я помещаю; в интерпретаторе он дает следующее число: is_integer (0).
is_integer (X): - is_integer (Y), X равно Y + 1. ...
Я пытался перебрать список и записать его в файл, почему следующее не работает? loop_through_list (Список): - member (Element, List), write (Element), write (''), ...
Я очень впечатлен DCG Пролога и тем, как быстро я могу создать все возможные структуры, подходящие для конкретной грамматики. Но я бы хотел совместить этот поиск с другими ограничениями. Например, ...
Я пишу Лисп на C Переводчик и у меня проблема со строками. Это код, который преобразует унарную функцию Лиспа в эквивалент C: define (F) -> fun_unary (F),!. fun_unary (F) ...
Проект о переводе полуестественного языка в таблицы SQL. Код: label (S) -> label_h (C), {atom_codes (A, C), string_to_atom (S, A)},!. label_h ([C | D]) -> letter (C), ...
Я пытаюсь написать процедуру в прологе, где если L1 = [1,2,3] и L2 = [4,5,6], то L3 = [1,4,2, 5,3,6] так что перемешайте ([1,2,3], [4,5,6], [1,4,2,5,3,6]) Пока у меня есть это: перемешать ([X] , [Y], [X, Y]).
...
Позвольте мне начать с того, что на этот вопрос могут ответить мастера ИИ, не имеющие опыта работы с Prolog. В прекрасной книге «Программирование на прологе для искусственного интеллекта» это довольно кратко и…
Мне нужно модифицировать метаинтерпретатор vanilla, чтобы сделать поиск с ограниченной глубиной. Для проверки решения я использую следующий код: value(wire1,1).
connected(wire2, wire1).
connected(...
Для одного из моих курсов в университете мне нужна шахматная игра, реализованная на прологе.
Моим домашним заданием было создание / улучшение ИИ игры. Я не хочу писать всю партию с нуля, я ...
Два связанных вопроса в одном: Может ли модуль Clojure core.logic выполнять арифметические, логические сравнения и т. Д., Как обычный Пролог? Я представляю себе что-то вроде следующего: (defrel points person ...
Go: - Match (Mn, Fn), запись ('- Соответствие результата -' '), NL, запись (MN), запись («совпадение с»), напишите (FN ), матч (mn1, fn1). человек (май, женщина, 25, синий).
Человек (...
При устранении неисправностей более широкого назначения для школы я обнаружил ошибку, которую я сделал, где я лечил один список предметов (стек с одним предметом), как будто это единый предмет. Я решил свою проблему, ...
Есть ли реализация или библиотека Пролога, которая кэширует предикаты? Или вы бы реализовали, скажем, кеш FIFO, используя assertz / 1 и retract / 1, например: - динамический кеш / 1.
ccall (G): - кеш (G).
...
Приложение, над которым я работаю, является своего рода "конфигуратором" . Он написан на C #, и я даже написал для него механизм правил. Идея состоит в том, что существует набор утверждений пропозициональной логики, и ...