Inference in first-order logic
Inference in first-order logic
Inference in first-order logic
You also want an ePaper? Increase the reach of your titles
YUMPU automatically turns print PDFs into web optimized ePapers that Google loves.
Unification<br />
♦ looks for substitutions <strong>in</strong> a smarter way<br />
♦ e.g. θ = {x/John,y/John} makes K<strong>in</strong>g(x) and Greedy(x)<br />
match K<strong>in</strong>g(John) and ∀y Greedy(y)<br />
♦ <strong>in</strong> general: UNIFY(α,β) = θ if αθ =βθ<br />
α{x 1 /c 1 ,...,x n /c n } ≡ SUBST({x 1 /c 1 },α{x 2 /c 2 ,...,x n /c n })<br />
α β θ<br />
Knows(John, x) Knows(John, Jane) {x/Jane}<br />
Knows(John, x) Knows(y, OJ) {x/OJ, y/John}<br />
Knows(John, x) Knows(y, Mother(y)) {y/John, x/Mother(John)}<br />
Knows(John, x) Knows(x, OJ) fail<br />
♦ Standardiz<strong>in</strong>g apart elim<strong>in</strong>ates overlap of variables, e.g.,<br />
Knows(z 17 ,OJ)<br />
<strong>Inference</strong> <strong>in</strong> <strong>first</strong>-<strong>order</strong> <strong>logic</strong> – 9