В core.logic
есть ли способ перевести выходные данные такой программы, как
(run 2 [q]
(fresh [a]
(featurec q {:foo a})
(membero a '(5))
(conde
((featurec q {:bar 2}))
((featurec q {:baz 2})))))
в наименьшие карты, которые удовлетворяют ограничениям каждого решения, в данном случае {:foo 5, :bar 2}
и {:foo 5, :baz 2}
?
featurec
, когда уже известен минимальный набор ключей? Почему не(== q {:foo a :bar 2})
? - person Taylor Wood   schedule 25.09.2018featurec
могут появляться только в некоторых решениях; например, предложенияconde
, каждое из которых вводит разные ограниченияfeaturec
. Я обновил вопрос, чтобы привести пример этого. - person Alex Lew   schedule 25.09.2018