Вопросы по теме 'minikanren'
Понимание модели выполнения Mini-Kanren
В главе 5 SICP поясняется схема метакругового оценщика регистровой машины.
Есть ли что-нибудь, что обеспечивает аналогичный тип Mini-Kanren с точки зрения примитивов схемы?
Я знаю, что по Mini-Kanren написана диссертация (однако меня волнует...
1534 просмотров
schedule
28.08.2022
Арены, где доминирует core.logic [soft]
Сообщество Вики
Меня не волнуют очки репутации, мне просто нужны хорошие ответы. Не стесняйтесь отметить этот вопрос как вики сообщества.
Контекст
Я работал с The Reasoned Schemer и обнаружил следующие наблюдения:
Логическое...
1030 просмотров
schedule
29.10.2022
Clojure core.logic CLP(FD), проецирующий переменные FD
Я работаю над наивным алгоритмом квадратной упаковки, используя библиотеку Clojure core.logic CLP(FD) (core.logic версии 0.8.3).
Квадраты представлены так:
[[[x11 y11] [x12 y12]]
[[x21 y21] [x22 y22] ...]]
где каждый квадрат представлен...
470 просмотров
schedule
13.02.2023
Моделирование рецептов и доступных ингредиентов с логикой ограничений
Представьте, что у меня есть несколько рецептов различных блюд и кладовая с различными ингредиентами на кухне. Я хочу построить модель, используя core.logic , которая позволит мне ответить на следующий вопрос: для заданного набора ингредиентов (т.е....
142 просмотров
schedule
27.05.2022
Синтезировать наименьшую карту, удовлетворяющую ограничениям featurec в core.logic?
В core.logic есть ли способ перевести выходные данные такой программы, как
(run 2 [q]
(fresh [a]
(featurec q {:foo a})
(membero a '(5))
(conde
((featurec q {:bar 2}))
((featurec q {:baz 2})))))
в наименьшие карты,...
98 просмотров
schedule
22.04.2022
Как использовать кавычки и без кавычек, чтобы более точно перевести The Reasoned Schemer на Racket?
(Подробности настройки моего miniKanren в Racket приведены внизу [1].)
То, как работают кавычки и без кавычек в The Reasoned Schemer, похоже, не соответствует тому, как они работают в Racket. Например, стих 2 главы 2 предлагает [2] следующее...
121 просмотров
schedule
23.01.2023