29.01.2014 Views

Inference in first-order logic

Inference in first-order logic

Inference in first-order logic

SHOW MORE
SHOW LESS

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

Hooray! Your file is uploaded and ready to be published.

Saved successfully!

Ooh no, something went wrong!