Fork me on GitHub
#clojure-italy
<
2018-04-25
>
reborg09:04:27

Domanda per chi si intende di core.logic & friends. Quale algoritmo usa per l'unificazione? Mi immagino che se codifico una lista di regole (tipo a e b implica c e cosi' via) e faccio una affermazione tipo "c,d implica f" il sistema mi dice T o F e per farlo deve in qualche modo seguire una rete di sostituzioni. Spero di essere stato chiaro perche' ne capisco solo superficialmente....

bronsa09:04:13

core.logic fa triangular substitution nel suo algoritmo di unification

bronsa09:04:57

se e` quello che chiedevi

reborg09:04:26

penso di si', do un occhio al papero

reborg09:04:59

In sistemi tipo core.logic, esiste il problema di pre-creare una rete di tutte le possibili sostituzioni in modo che il lookup diventi constant time?

bronsa09:04:00

in che senso?

reborg09:04:09

dato un set of rules, quali sono tutte le deducibili conclusioni (immagino che siano infinite, ma diciamo quelle che minimizzano il numero di variabili in input)

bronsa09:04:32

sono infinite

bronsa09:04:37

puoi avere goal ricorsivi