1. Syntax and Semantics
: propositional logic, ๋ช ์ ๋ ผ๋ฆฌํ์ ์ด ์ธ์์ ๋ชจ๋ ๋ฌธ์ ๋ฅผ propositional symbol๋ก ๋ํ๋ด๊ณ ์ค์ง true/false์ ๊ฐ๋ง ๊ฐ์ง๋ค. ๋ฐ๋ผ์ ์ด ์ธ์์ ๋ง์ object๋ค์ ํํํ๊ธฐ์ ๋ถ์กฑํ ๋ฉด์ด ์๋ค. (lack the expressive power)
์ฐ๋ฆฌ๊ฐ ์์ฐ์ด์ ๋ฌธ๋ฒ์ ์ดํด๋ณด๋ฉด, ๋๋ถ๋ถ์ elements๋ค์ด ๋ช ์ฌ์ ๋ช ์ฌ๊ตฌ๋ก object๋ฅผ ๋ํ๋ด๊ณ , ๋์ฌ๋ ๋์ฌ๊ตฌ๋ก object๊ฐ์ relation์ ๋ํ๋ธ๋ค. ๊ทธ๋ฆฌ๊ณ ์ด relation์ค์ ์ผ๋ถ๋ ์ด๋ค input์ด ์ฃผ์ด์ก์ ๋ ํ๋์ value๋ฅผ ๋ด๋ฑ๋ function(object์ 1:1 ๊ด๊ณ)์ด๊ธฐ๋ ํ๋ค.
First-order logic์ ์ด ์ธ์์ object์ ์ด๋ค์ ์ฐ๊ฒฐํ๋ relation์ผ๋ก ์ด๋ฃจ์ด์ง๋ค๊ณ ๊ฐ์ ํ๋ค. ๊ทธ๋ ๊ธฐ ๋๋ฌธ์ PL์ ๋นํด FOL์ด ์ฐ๋ฆฌ์ ์ผ๋ฐ์ ์ธ ์์๋ค์ ๋ํ๋ด๊ธฐ์ ์ข๋ค.
1) Syntax
โ symbol : FOL์ ๊ฐ์ฅ ๊ธฐ๋ณธ ๋ฌธ๋ฒ ์์
- object (=constant symbols)
- relations(=predicate symbols : ์์ symbol) - true๋ false๋ฅผ returnํ๋ funtion
- function (=function symbols) - ์ด๋ค value(symbol)์ return
โก term : object๋ฅผ logical expression์ผ๋ก ํํํ ๊ฒ
- complex term : function symbol๊ณผ ๊ทธ์ ์๋ง๋ arguments๋ก ์ด๋ฃจ์ด์ง term
- variable : ๊ทธ ์์ฒด๋ก term, function์ ์ธ์ ์ญํ ๋ ํจ
- constant (ground term์)
* ground term : variable์ด ์๋ term
โข atomic sentence(= atom) : predicate symbol๋ก ์ด๋ฃจ์ด์ง. complex term์ arguments๋ก ๊ฐ์ง ์ ์์
โฃ ๋ ๋ณต์กํ complex sentence๋ฅผ ๋ง๋ค๊ธฐ ์ํด์๋ propositional calculus์ ๋ง์ฐฌ๊ฐ์ง๋ก syntax์ semantics๋ฅผ ๊ธฐ๋ฐ์ผ๋ก ์ฌ๋ฌ๊ฐ์ง logical connective๋ฅผ ์ฌ์ฉํด์ผ ํ๋ค.
2) Semantics
- equality symbol : First-order logic์์ atomic sentence๋ฅผ ๋ง๋๋ ๋ฐฉ๋ฒ์ ์ฌ๋ฌ๊ฐ์ง๊ฐ ์๋ค. ๋ ๊ฐ์ term์ด ๊ฐ์ object๋ฅผ ๋ํ๋ธ๋ค๋ ์ฌ์ค์ equality symbol์ ํตํด ๋ํ๋ผ ์ ์๋ค.
- predicate symbol์ ์ํด ์ ์๋๋ relation์ด, argument๋ก ํํ๋๋ object๊ฐ์ ์ ์ง๋๋ค๋ฉด ์ด๋์ Atomic sentence๋ true์ด๋ค.
- objects and interpretation
: first-order logic์ model์๋ objects์ interpretation์ set์ด ์กด์ฌํ๋ค. interpretation์ object์ symbol์ mapping ํด์ฃผ๋๋ฐ, ์ด๋ฅผ ํตํด constant symbol์ด ์ด๋ค objects๋ฅผ ์ง์นญํ๋์ง, predicate symbols์ด ์ด objects๊ฐ์ ์ด๋ค relation์ ์ง์นญํ๋์ง, function symbols์ด ์ด object ๊ฐ์ ์ด๋ค funtions์ ์ง์นญํ๋์ง๋ฅผ ์ ์ ์๋ค.
- Propositional logic๊ณผ ๋ง์ฐฌ๊ฐ์ง๋ก, ๋ชจ๋ ๊ฐ๋ฅํ ๋ชจ๋ธ์ ๋ํด์ entailment, validity ๋ฑ๋ฑ์ ๊ฐ๋ ๋ค์ ์ ์ํ ์ ์๋ค.
3) Universal Quantifiers
: "every" ๋ฅผ ๋ปํ๋ quantifier. ∀x P์ ๊ผด๋ก ๋ํ๋ธ๋ค. ์ด ๋ฌธ์ฅ์ ๋ป์, ๋ชจ๋ object x์ ๋ํด P๊ฐ ํญ์ true๋ผ๋ ๋ป์ด๋ค.
์ข ๋ ์๋ฐํ ๋งํด๋ณด์๋ฉด, ∀x P๋ Extended interpretation์ผ๋ก ๊ฐ๋ฅํ ๋ชจ๋ ๊ฒฝ์ฐ์ P๊ฐ ์ฐธ์ด๋ผ๋ฉด, ์ฃผ์ด์ง ๋ชจ๋ธ์ ๋ํด ∀x P๊ฐ true์ด๋ค. extended interpretation๋ x๊ฐ ๊ฐ์ง ์ ์๋ ๊ฐ์ ๋ฒ์๋ฅผ ์ง์ ํ๋ค.
์๋ฅผ ๋ค์ด์ ∀x King(x) ⇒ Person(x)๋ ๋ชจ๋ x์ ๋ํด, x๊ฐ king์ด๋ผ๋ฉด x๋ ์ฌ๋์ด๋ผ๋ ๋ฌธ์ฅ์ ๋ํ๋ธ ๊ฒ์ด๋ค
∀x King(x) ∧ Person(x) ๋ ๋ชจ๋ x๋ king์ด๊ฑฐ๋ person์ด๋ค. ๋ผ๋ ๋ป์ผ๋ก false์ด๋ค. (x๋ ๋ฌผ๊ฑด์ผ์๋, ์์ด ์๋ ์ฌ๋์ผ ์๋ ์๋ค)
(์ด ๋ x๋ variable์ด๋ค)
4) Existential Quantifiers
: "some"์ ๋ปํ๋ quantifier. ∃x P์ ๊ผด๋ก ๋ํ๋ด๋ฉฐ, ์ด๋ค object x์ ๋ํด P๊ฐ true๋ผ๋ ๊ฒ์ด๋ค. ์ฆ, P๊ฐ true์ธ x๊ฐ ์ ์ด๋ ํ ๊ฐ ์กด์ฌํ๋ค๋ ์ด์ผ๊ธฐ์ด๋ค.
์ข ๋ ์๋ฐํ ๋งํ๋ฉด, ์ ์ด๋ ํ๋ ์ด์์ extended interpretation์์ p๊ฐ true์ด๋ฉด, ∃x P๊ฐ ๊ทธ model์์ true์ด๋ค.
∃x Crown(x) ∧ OnHead(x, John) : ์ด๋ค x๊ฐ ์๊ด์ด๊ณ John์ด ๊ทธ ์๊ด์ ์ฐ๊ณ ์๋ค.
∃x Crown(x) ⇒ OnHead(x, John) : ์ด๋ค x๊ฐ ์๊ด์ด๋ผ๋ฉด John์ด ๊ทธ๊ฒ์ ์ฐ๊ณ ์๋ค
: x๊ฐ ์๊ด์ด ์๋๋ผ๋ฉด ์ ์ ๊ฐ ๊ฑฐ์ง์ด ๋์ด ๋ฌธ์ฅ์ด ํญ์ true๊ฐ ๋๋ฏ๋ก ์ฌ์ค ๋ณ ์ ๋ณด๋ฅผ ๋ด์ง ๋ชปํ๋ค. ๊ทธ๋์ existential quantifier๊ณผ ⇒ ๊ฐ ๊ฐ์ด ์ฐ์ด๋ฉด ๋ณ๋ก ๋์์ด ์๋๋ค. (์๊ด์ธ๋ฐ ์์ฐ๊ณ ์์ ๋๋ง false)
5) Variable Scope : ๊ฐ quantifier๊ฐ ์ด๋ ๋ฒ์๊น์ง ์ํฅ์ ๋ฏธ์น๋๊ฐ.
-> ์์ ์๋ ์ ๋ถํฐ ํด์ํด๋๊ฐ๋ฉด ๋๋ค.
: ๋ชจ๋ x๋ ์์ ์ด ์ข์ํ๋ y๊ฐ ์กด์ฌํ๋ค. (x1 -> y1 , x2 -> y2...)
: ์ด๋ค y๋ ๋ชจ๋ x๊ฐ ์ข์ํ๋ค. (x1, x2 ... -> y1)
๋ํ ์๋ก ์๊ด์๋ object๋ฅผ ๊ฐ๋ฆฌํค์ง๋ง variable์ ์ด๋ฆ์ด ๊ฐ์ ๊ฒฝ์ฐ๊ฐ ์๋๋ฐ, ์ด ๊ฒฝ์ฐ ํท๊ฐ๋ฆฌ์ง ์๊ฒ ๋ณ์๋ช ์ ๋ฐ๊พธ์ด ์ค๋ค.
: ๋ชจ๋ x๋ ์๊ด์ด๊ฑฐ๋ ์ด๋ค y๋ richard์ brother์ด๋ค.
6) De Morgan's Rule for Quantifiers
: ∀๋ conjunction(๋ ผ๋ฆฌ๊ณฑ/and), ∃๋ disjunction(๋ ผ๋ฆฌํฉ/or) ์ด๋ฏ๋ก ๊ทธ ์ ๋ค๊ณผ ๋ง์ฐฌ๊ฐ์ง๋ก ๋๋ชจ๋ฅด๊ฐ ๋ฒ์น์ด ์ฑ๋ฆฝํ๋ค.
-∀x P๊ฐ false ๋ค ! -> P๊ฐ false์ธ x๊ฐ ์กด์ฌํ๋ค!
-∃x P๊ฐ false์ด๋ค! -> P๋ฅผ ๋ง์กฑํ๋ x๊ฐ ์๋ค! -> ๋ชจ๋ x์ ๋ํด not P์ด๋ค.
2. Examples
1) Wumpus World ๋ฅผ FOL๋ก ๋ํ๋ด๋ณด์
์ฐ์ ๊ฐ๋ฅํ ํ๋๋ค, predicate symbol์๋ Forward, Shoot, Grab, Climb, Turn(Right), Turn(Left)๊ฐ ์๋ค
๋ํ ๋ชจ๋ t์ ๋ํด์ wumpus๋ 1,3์ ์กด์ฌํ๋ค
๋ชจ๋ x,y,a,b ์ ๋ํด Adjacent([x,y],[a,b])๋ x๊ฐ a์ ๊ฐ๊ณ , y๊ฐ b-1, b+1์ด๊ฑฐ๋ y๊ฐ b์ ๊ฐ๊ณ x๊ฐ a-1 ๋๋ a+1๋ผ๋ ์ด์ผ๊ธฐ๋ค. ์ฆ ๊ธฐ์ค์ [a, b]์ ๋ํด [x, y]๊ฐ ์ธ์ ํ๋ค๋ ์ด์ผ๊ธฐ์ด๋ค.
๊ทธ๋์ ๋ชจ๋ s์ ๋ํด s๊ฐ Breezyํ๋ฉด, ์ฆ ๋ฐ๋์ด ๋ถ๋ฉด, s์ ์ธ์ ํ r์ ๋ํด ํจ์ ์ด ์๋ r์ด ์กด์ฌํ๋ค๋ ์ด์ผ๊ธฐ๋ค.
PL๋ก ๋ํ๋ผ ๋์ ๋ชจ๋ ์นธ์ ๋ํด ์ผ์ผํ ๋ค ์ ์๋ฅผ ํด์คฌ์ด์ผ ํ๋๋ฐ FOL์ ์ด์ฉํ๋ ๋ชจ๋ s์ ๋ํด~๋ก ํํ์ด ๊ฐ๋ฅํด์ก๋ค.
2) ์์ฐ์ด๋ฅผ FOL๋ก ๋ํ๋ด๋ณด์.
"๋ฒ์ ๋ฐ๋ฅด๋ฉด ๋ฏธ๊ตญ์ธ์ด ๋ฏธ๊ตญ์ ์ ๊ตญ์ ๋ฌด๊ธฐ๋ฅผ ํ๋ ๊ฒ์ ๋ฒ์ฃ์ด๋ค. Nano๋ ๋ฏธ๊ตญ์ ์ ๊ตญ์ธ๋ฐ ๋ฏธ์ฌ์ผ์ ๊ฐ์ง๊ณ ์๊ณ , ์ด ๋ชจ๋ ๋ฏธ์ฌ์ผ์ Colonel West๋ผ๋ ๋ฏธ๊ตญ์ธ์ด ํ์๋ค."
1. ∀x,y,z American(x) ∧ Weapon(y) ∧ Sell(x,y,z) ∧ Hostile(z) ⇒ Criminal(x)
2. Enemy(Nano, America)
3. ∃x Owns(Nano, x) ∧ Missile(x)
4. ∀x Missile(x) ∧ Owns(Nano, x) ⇒ Sell(West, x, Nano)
5. American(West)
∀x Enemy(x, America) ⇒ Hostile(x)
∀x Missile(x) ⇒ Weapon(x)
๋ฐ๋ผ์ Criminal(West)
(์ฐธ๊ณ ๋ก quantifier๊ฐ ์๋ ๊ฒฝ์ฐ์๋ ∀๊ฐ ์๋ต๋์๋ค๊ณ ๋ณด๋ฉด ๋๋ค)
3. Instantiation , ์ถ๋ก
1) Universal Instantiation (UI)
: FOL๋ฌธ์ฅ์์ Universal Quantified๋, ์ฆ ∀๊ฐ ๋ถ์ variable์ ๊ทธ๋ฅ ground term(๋ณ์ ์๋ term)์ผ๋ก ์นํํด๋ ์ฑ๋ฆฝํ๋ค.
์๋ฅผ ๋ค์ด Subst(θ, α) ๋ sentence α์ θ๋ผ๋ substitution, ๋์ ์ ํ๋ค๋ ๊ฒ์ ๋ํ๋ด๋ ๊ฒ์ด๋ค.
๊ทธ๋์ ๊ฒฐ๋ก ์ ์ผ๋ก ์ด๋ ๊ฒ ๋ฐ๊ฟ ์ ์๋ค.
๋ง์ฝ ๋ชจ๋ v์ ๋ํด sentence α๊ฐ true๋ผ๋ฉด, α๋ผ๋ ๋ฌธ์ฅ์์ ν๋ผ๋ variable ๋์ ๏ฝ๋ผ๋ ground term์ ๋์ ํด๋ true์ด๋ค.
2) Existential Instantiation
: FOL ๋ฌธ์ฅ์์ ∃๊ฐ ๋ถ์ variable์ KB์ ํ ๋ฒ๋ ์ฐ์ด์ง ์์๋ constant symbol ๏ฝ๋ก ์นํํด๋ ๋ฌธ์ฅ์ด ์ฑ๋ฆฝํ๋ค.
์ด ์๋ก์ด Symbol์ Skolem contant๋ผ๊ณ ๋ถ๋ฅธ๋ค. ๊ทธ๋์ Existential instantiation์ Skolemization์ ํน์ํ ์ผ์ด์ค์ ํด๋นํ๋ค.
Universal Instantiation์ ์ฌ๋ฌ ๋ฒ ์ ์ฉํด์ ๊ณ์ํด ๋ค๋ฅธ ์๋ก์ด ๋ฌธ์ฅ์ ๋ง๋ค์ด๋ผ ์ ์๋ค. ๊ทธ๋ฌ๋ Existential Instantiation์ ๋ฑ ํ ๋ฒ๋ง ์ ์ฉ๋ ์ ์๋ค. ์ ์ฉ๋๊ณ ๋๋ฉด ๊ธฐ์กด ๋ฌธ์ฅ์ ์ฌ๋ผ์ง๋ค.
์ ๋๊ฐ์ง ์ถ๋ก ๊ท์น์ ํตํด ์ฐ๋ฆฌ๋ ๋ฌธ์ฅ์ ์๋ variable๊ณผ quantifier์ ์์จ ์๊ฐ ์๋ค. ๊ทธ ๋๊ฐ์ง๋ฅผ ๋ชจ๋ ์์ ๋ฉด PL๊ณผ ๊ฐ์์ง๋ค.
3) Propositionalization : ๋ช ์ ํ
: existentially quentified sentence๋ ํ๋์ instantiation์ผ๋ก ๋ฐ๊ฟ ์ ์๊ณ , universally quantified sentence๋ ๋ชจ๋ possible instantiation์ ์งํฉ์ผ๋ก ๋์ฒดํ ์ ์๋ค. ๋ฐ๋ผ์ ground atomic sentence๋ฅผ ํ๋์ propositional symbol๋ก ๋ณธ๋ค๋ฉด, ์ด์ Knowledge Base๋ ํ๋์ "๋ช ์ "๊ฐ ๋๋ค.
quantified sentence๋ค์ ์ด ์ถ๋ก ๊ท์น์ ํตํด nonquantified sentence๋ก ๋ฐ๊พธ๋ฉด, ์์ ๋งํ๋ ๊ฒ ์ฒ๋ผ First-order inference๋ฅผ propositional inference๋ก ๋ง๋ค ์๊ฐ ์๋ค.
- Analysis of Propositionalization
๊ทธ๋ฌ๋ ๋ฌธ์ ๊ฐ ์๋ค! ๋ง์ฝ Knowledge base์ function symbol์ด ์กด์ฌํ๋ค๋ฉด?? ground-term subtitution์ ๊ฐ๋ฅ์ฑ์ด ๋ฌดํํ ๋ง์์ง๋ค!
์๋ฅผ ๋ค์ด๋ณด์. f(x), x๋ผ๋ function symbol์์ x์ f(x)๋ฅผ ๋์ ํ๋ฉด f(f(x))=f(x), ... ์ด๋ฐ์์ผ๋ก ๋ฌดํํ๊ฒ ๋ง์ SUBSET์ด ์๊ฒจ๋๊ฒ ๋๋ค.
๋ง์ฝ ์ด๋ค ๋ฌธ์ฅ์ด FOL๋ก ๋ง๋ค์ด์ง knowledge base๋ก๋ถํฐ Entail๋ ์ ์๋ค๋ฉด, ๋ช ์ ํ๋ knowledge base์ ์ ํํ ๋ถ๋ถ ์งํฉ์์ ๊ทธ ๋ฌธ์ฅ์ ๋ง๋ค์ด๋ด๋ ์ด๋ค ์ฆ๋ช ์ด ์์๋ค๋ ๊ฒ์ด๋ค. ์ฆ FOL KB์์ entail ๋์๋ค๋ฉด, Finite subset ์์ proof๊ฐ ๋์ด์ผ ํ๋ค.
์ฒ์์ constant symbol์ ๊ฐ์ง๊ณ ์๋ ๋ชจ๋ instantiation์ ์์ฑํด๋ธ ๋ค์, term์ depth(๊ดํธ ์ณ์ง ํ์)๊ฐ 1 , 2, ... ์ธ ๋ชจ๋ term์ ๊ณ์ ํ์ํ๋ค๋ณด๋ฉด ์ธ์ ๊ฐ entail ๋ ๋ฌธ์ฅ๊น์ง ๋ง๋ค์ด ๋ผ ์ ์๋ค. ๊ทธ๋ฌ๋ฉด ์ฆ๋ช ์ ํ ์ ์๋ค. ํ์ํ๋ค๊ฐ entail๋ ๊ทธ ๋ฌธ์ฅ์ ์ฐพ์๋ค๋ฉด true๋ฅผ ๋ฐํํ๊ณ , ๋ชป ์ฐพ์์ผ๋ฉด nesting level์ ํ๋จ๊ณ ๋ ์ฆ๊ฐ์ํจ๋ค.
๊ทธ๋ฌ๋ ์ด ๋ฐฉ๋ฒ์ ์ด๋ค ๋ฌธ์ฅ์ entailํ ์ ์๋ค๋ ๊ฒ์ ์ ์ ์์ ๋๋ง ์ธ ์ ์๋ค. ๋ง์ฝ ์ด sentence๊ฐ not entailed๋๋ค๋ฉด?? ๋ฌดํ loop๊ฐ ๋๋ค๋ฉด?? ์ฐ๋ฆฌ๋ ์ด loop๊ฐ ๋ฌดํํ ๋๋ ๋์์๋ entail ๋๋๋ฐ ์์ง ๋ชป ์ฐพ์ ๊ฑด์ง, ์๋๋ฉด entail๋์ง ์๋ ๊ฒ์ธ์ง ์ ์๊ฐ ์๋ค. ๋ฐ๋ผ์ FOL์์ Entailment์ ๋ํ ๋ฌธ์ ๋ "Semidecidable" ํ๋ค. ๋ชจ๋ entailed sentence์ ๋ํด์ yes๋ฅผ ๋ด๋ฑ๋ ์๊ณ ๋ฆฌ์ฆ์ ์์ง๋ง, ๋ชจ๋ nonentailed sentence์ ๋ํด์ no๋ฅผ ๋ด๋ฑ๋ ์๊ณ ๋ฆฌ์ฆ์ด ์๋ค.
4. Unification
1) Generalized Modus Ponens
: Generalized Modus Ponens๋ Modus Ponens์ lifted version์ด๋ค. ์๋ Modus Ponens๋ value๊ฐ ์๋ ground propositional logic์์ ์ ์ฉ๋์๋ ๊ฒ์ธ๋ฐ ์ด๊ฒ์ first-order logic์์ ์ ์ฉํ ๊ฒ์ด๋ค. ์ด ๋ Variables์ ๋ชจ๋ universally quantified ๋์๋ค๊ณ ๊ฐ์ ํ๋ค.
์ด๋ค atomic sentences pi, pi', q๊ฐ ์๋ค๊ณ ํ์. ๋ชจ๋ i์ ๋ํด Subst (θ, pi') = Subst(θ, pi)๋ฅผ ๋ง์กฑํ๋ substitution θ๊ฐ ์กด์ฌํ๋ค๋ฉด, ๋ค์์ด ์ฑ๋ฆฝํ๋ค.
๋ญ์๋ฆฌ๋ ํ๋ฉด, ์ฐธ/๊ฑฐ์ง์ด ์๋ ค์ง ์ด๋ค ๋ฌธ์ฅ n๊ฐ (p1'~pi')๊ฐ ์๋๋ฐ, ์ด ๋ฌธ์ฅ์ ์ด์ฉํด์ q๋ผ๋ ๋ฌธ์ฅ์ ์ฐธ ๊ฑฐ์ง์ ํ๋ณํ๊ณ ์ถ๋ค. ๊ทธ๋ฌ๋ ์ง๊ธ์ ์์ ๋ณ์ ์๋ฆฌ์ ๊ฐ๊ธฐ ๋ค๋ฅธ ๊ฐ๋ค์ด ๋ค์ด๊ฐ ์์ด์ ํ์ฉ์ ํ ์๊ฐ ์๋ค. ์ด ๋ ์ฐ๋ฆฌ๊ฐ ์์์ผ ํ๋ ๊ฒ์ (p1~pi)์ด๋ค. ๋ฐ๋ผ์ ๋ฌธ์ฅ pi' ๋๋ pi์ ์ด๋ค subst๋ฅผ ์ ์ฉํด์ pi'์ pi๊ฐ ๊ฐ์ ๋ฌธ์ฅ์ด ๋๋๋ก ๋ง๋ค์ด ์ฃผ๋ ๊ฒ์ด๋ค. ๊ทธ๋ ๊ฒ ๊ฐ์ ๋ฌธ์ฅ์ด ๋๋ฉด q์ ์ง๋ฆฌ๊ฐ์ ๊ตฌํ๋๋ฐ ์ฃผ์ด์ง ์ ๋ณด๋ฅผ ์ด์ฉํ ์ ์๋ค.
๋ฐ๋ผ์ 'p1 , p2, p3 ... pn์ด ๋ชจ๋ true์ด๋ฉด q์ด๋ค'๋ผ๋ ๋ฌธ์ฅ์ด ์ฐธ์ด๋ผ๋ ์ฌ์ค์ ์๊ณ p1'~pi'๊ฐ true๋ผ๋ ์ฌ์ค์ ์๋ ์ํ์์, q sentence์ pi' ์ pi๋ฅผ ๋ชจ๋ ๊ฐ๊ฒ ๋ง๋ ๊ทธ substitution์ ์ ์ฉํ์ ๋์๋ ์ฐธ์ด ๋๋ค๋ ๊ฒ์ด๋ค.
์๋ฅผ ๋ค์ด ์ ์ฌ์ง์ ๋ณด์. King์ด๋ฉด์ greedyํ x๋ ๋ชจ๋ evil์ด๋ค.
์ฌ๋์ john์ด king์ด๊ณ , ๋ชจ๋ y์ ๋ํด greedy๊ฐ ์ฐธ์์ ์๊ธฐ ๋๋ฌธ์, john์ด evil์ด๋ผ๋ ์ฌ์ค์ ๋ฐ๋ก ์ ์ ์๋ค.
๊ทธ๋ฌ๋ ๊ธฐ๊ณ๊ฐ ์์๋ฃ๊ฒ ํ๋ ๊ฒ์ ๋ค๋ฅธ ๋ฌธ์ !
P1': King(john)
P2': Greedy(y)
P1 : King(x)
P2 : Greedy(x)
Q : Evil(x)
์ฐ๋ฆฌ๊ฐ ์๊ณ ์ถ์ ๊ฒ์ q์ ์ง๋ฆฌ๊ฐ.
์ฐ๋ฆฌ๊ฐ ์๊ณ ์๋ ๊ฒ์ P1', P2' ๊ทธ๋ฆฌ๊ณ P1 ∧ P2 ⇒ Q
Greedy(y) ๋ฌธ์ฅ์์ x์ john์ , y์ john์ ๋์ ํ๋ subst๊ฐ ์๋ค. greedy๋ universial quantified sentence์ด๊ธฐ ๋๋ฌธ์ y variable ๋์ ์ ์ด๋ค constant symbol์ ๋ฃ์ด๋ ์ฌ์ ํ ์ฐธ์ด๋ค. ์ฆ ์ด subst๋ ์ฐธ์ด๋ค. ์ด Subst๋ฅผ P2์ P2'์ ๋ ๋ค ์ ์ฉ์์ผ๋ณด๋ฉด ๋ ๋ค ๊ฒฐ๊ณผ์ ์ผ๋ก Greedy(John)์ด ๋์ด ๊ฐ์์ง๋ค.
King(John) ๊ณผ King(x) ๋ ๋ฌธ์ฅ์ ๋ชจ๋ ์์์ ํ๋ Subst๋ฅผ ๊ทธ๋๋ก ์ ์ฉ์์ผ๋ณด์. ๊ทธ๋ฌ๋ฉด ๋ ๋ฌธ์ฅ์ด ๋ชจ๋ King(John)์ด ๋์ด ๊ฐ์์ง๋ค.
P1 ∧ P2 ⇒ Q ์ด ๋ฌธ์ฅ์์ ์์์ ํ๋ subst๋ฅผ ๊ทธ๋๋ก ์ ์ฉ์์ผ๋ณด์. ๊ทธ๋ฌ๋ฉด King(John) ∧ Greedy(John) ⇒ Evil(John) ์ด๋ผ๋ ๋ฌธ์ฅ์ด ๋๊ณ , ์ด ๋ king(John)๊ณผ Greedy(John)์ด ๋ชจ๋ true์ด๋ฏ๋ก Evil(John)๋ true๊ฐ ๋๋ค.
์ฆ, Q๋ผ๋ ๋ฌธ์ฅ์ x/John, y/John ์ด๋ผ๋ subst๋ฅผ ์ ์ฉํ๋ฉด true๊ฐ ๋๋ค.
2) Unification
: ์๋ก ๋ค๋ฅธ logical expression์ identicalํ๊ฒ ๋ณด์ด๋๋ก ๋ง๋ค์ด์ฃผ๋ substitution์ ์ฐพ๋ ๊ณผ์
unify algorithm์ ๋ ๊ฐ์ ๋ฌธ์ฅ์ ๋ฐ์์ ๋์ ๋๊ฐ๊ฒ ๋ง๋๋ Substitution(Unification)์ returnํด์ค๋ค.
* Unify(p,q) = θ where Subst(θ, p) = Subst(θ, q)
p์ q๊ฐ ์ด๋ค substitution θ์ ์ํด ๊ฐ์์ง ๋, p์ q์ unify๋ θ์ด๋ค.์ฆ Unify(p, q)๋ p์ q๋ฅผ ๊ฐ๊ฒ ๋ง๋ค์ด์ฃผ๋ substitution์ returnํ๋ค.
- Standardizing apart : ๋ ๋ฌธ์ฅ์์ ์๋ก ๊ด๋ จ์ด ์๋ ๋ณ์์ธ๋ฐ ์ด๋ฆ์ด ๊ฐ์ crash๊ฐ ๋๋ ๊ฒ์ ๋ฐฉ์งํ๊ธฐ ์ํด ์ด๋ฆ ๊ฐ์ ๋ณ์๋ค์ ์ด๋ฆ์ ๋ฐ๊ฟ์ฃผ๋ ๊ฒ์ ๋งํ๋ค.
P(x, B)์ P(A, x)๋ฅผ Unifyํ๋ฉด failure๊ฐ ๋ฌ๋ค. ์? x๊ฐ์ ๊ฐ์ ๋ณ์๋ก ์ธ์ํด์ x์ ์ด๋ค ์๋ฅผ ๋ฃ์ด๋ ๊ฐ์ด์ง ์ ์๋ค๊ณ ํ๋จํ๊ธฐ ๋๋ฌธ์ด๋ค. ๊ทธ๋์ ์ฐ๋ฆฌ๋ ๋ ์ค ํ๋๋ฅผ y๋ก ๋ฐ๊ฟ์ค๋ค.
์ฌ์ค ๋ชจ๋ unifiableํ ํํ์ ์๋ค์ ๊ฐ๋ฅํ substitution์ด ๋งค์ฐ๋งค์ฐ ๋ง๋ค. ๊ทธ๋์ ๊ทธ ์ค์์๋ ๊ฐ์ฅ ๊ฐ๋จํ unifier๋ฅผ most general unifier๋ผ๊ณ ํ๋ค. ์ด๊ฒ ์ ์ผ renamingํ๊ณ ๋ณ์๋ค์ ์นํํ๋๋ฐ ๊น๊ผผํ๋ค.
๋ค์์ Unify ์๊ณ ๋ฆฌ์ฆ์ด๋ค.
5. Forward Chaining Algorithm
- PL๊ณผ๋ ๋ค๋ฅด๊ฒ FOL์ variable์ ํฌํจํ ์๊ฐ ์๋ค. ๊ทธ๋ฆฌ๊ณ ์ด ๋ชจ๋ variable์ "universally quantified"ํ๋ค๊ณ ๊ฐ์ ํ๋ค.
- definite clause๋ atomic sentence ์ด๊ฑฐ๋ antecedent(=premise)๊ฐ positive literal๋ค์ conjunction(and)๋ก ์ฐ๊ฒฐ๋๊ณ consequent๊ฐ single positive์ธ implication๋ฅผ ๋งํ๋ค. (์๋ ๊ผด์ ํ๋๋ง positive์ธ or๋ก ๋ฌถ์ธ clause)
- Forward Chainig Algorithm ์ ์์์ ๋์๋ ๊ฒ๊ณผ ๊ฐ๋ค.
์ด๋ฏธ ์๋ ค์ง known facts์์ ์์ํด์ ๋ชจ๋ premise๊ฐ satisfied๋ผ๋ฉด ๊ทธ ๋ฌธ์ฅ์ conclusion์ known fact์ ์ถ๊ฐํด์ค๋ค. ์ด ๋ฐฉ๋ฒ์ ๋ฐ๋ณตํ๋ค๊ฐ query์ ๋ํ ๋ต์ ์ฐพ๊ฑฐ๋ ๋์ด์ ์ถ๊ฐํ new fact๊ฐ ์์ผ๋ฉด ๋๋๋ค.
์กฐ์ฌํด์ผ ํ ๊ฒ์, ์ฌ๊ธฐ์ "new" fact๋, ๋จ์ง ์ด๋ฏธ ์๋ ค์ง fact์์ ๋ณ์ ์ด๋ฆ๋ง ๋ฐ๋ ๊ฒ์ด์ด์๋ ์๋๋ค. ๋ณ์์ ์ด๋ฆ์ ์ ์ธํ๊ณ ๋ค๋ฅธ ๊ฒ๋ค์ด ๋ค ๋์ผํ ๊ฒฝ์ฐ์๋, ๊ทธ ๋ฌธ์ฅ์ ๊ฐ์ ๋ฌธ์ฅ์ด๋ค. (๋จ์ง renaming ๋ ๊ฒ ๋ฟ)
์๊ณ ๋ฆฌ์ฆ์ ์๋์ ๊ฐ๋ค.
์ ๊ทธ๋ผ ์ฐ๋ฆฌ๊ฐ ์๊น ํ์๋ ๋ฒ์ฃ์ ๋ฌธ์ ๋ฅผ ๊ฐ์ ธ์๋ณด์.
1. American(x) ∧ Weapon(y) ∧ Sell(x,y,z) ∧ Hostile(z) ⇒ Criminal(x) (∀x,y,z ์๋ต)
2. Enemy(Nano, America)
3. Owns(Nano, M1) ∧ Missile(M1) (์ด๋ค ๊ฐ์ด ์๋ค ํ์ผ๋ ์ด๋ค ๊ฐ์ผ๋ก ์นํํ์ฌ quantifiers๋ฅผ ์์ ๋ฒ๋ฆฐ๋ค)
4. Missile(x) ∧ Owns(Nano, x) ⇒ Sell(West, x, Nano)
5. American(West)
Enemy(x, America) ⇒ Hostile(x)
Missile(x) ⇒ Weapon(x)
Criminal (West) ? - query
------
์ ๋จผ์ 2. Enemy(Nano, America) ์ด๋ผ๋ fact๋ก๋ถํฐ Enemy(x, America) ⇒ Hostile(x) ์์ ์ฐพ๋๋ค. ๊ทธ๋ฆฌ๊ณ ์์ x์ Nano๋ฅผ ๋์ ํด๋ณด์. ๊ทธ๋ฌ๋ฉด implication์ ๋ง์กฑํ๊ธฐ ๋๋ฌธ์ Hostile(Nano)๋ฅผ KB์ ์ถ๊ฐํ๋ค.
๋ค์์ผ๋ก๋ Missile(M1)์ด๋ผ๋ fact์ Owns(Nano, M1)์ด๋ผ๋ fact๋ก๋ถํฐ 3. Missile(x) ∧ Owns(Nano, x) ⇒ Sell(West, x, Nano) ๋ฌธ์ฅ์ ๊บผ๋ด์จ๋ค. x = M1์ ๋์ ํ๋ฉด Sells(West, M1, Nano)๋ true๊ฐ ๋์ด KB์ ์ถ๊ฐํ๋ค.
๋ค์์ผ๋ก๋ Missile(M1)์ด๋ผ๋ fact์์ Missile(x) ⇒ Weapon(x) ์์ ๊บผ๋ด์จ๋ค. x=M1์ ๋์ ํด Weapon(M1)์ด true์์ ๋ฐํ๋ค.
๋ง์ง๋ง์ผ๋ก American(x) ∧ Weapon (y) ∧ Sells(x, y, z) ∧ Hostile(z) ⇒ Criminal(x)์์ x = West, y = M1, z=Nano๋ฅผ ๋์ ํ์ฌ Criminal(West)๋ฅผ ๋ฐํ๋ธ๋ค.
์ต์ข ์ ์ผ๋ก ์ฐพ์ criminal(west)๊ฐ ๋ฐ๋ก query์ด๊ณ , ์ด๊ฒ์ KB์ ์ํด entail ๋๋ค.
- Analysis
โ ๋ชจ๋ inference๊ฐ generalized Modus Ponens์์ ๋น๋กฏ๋์์ผ๋ฏ๋ก ๋น์ฐํ Sound ํ๋ค.
โก Knowledge Base๊ฐ definite clause๋ก ๊ตฌ์ฑ๋์์ ๋, completeํ๋ค.
( function symbol์ด ์์ผ๋ฉด ground term์ ๊ฐ์ ์ ํ -> ground fact๋ ์ ํ -> complete)
( function symbol์ด ์์ผ๋ฉด ~ ์ฆ๋ช ๋์ค์~ )
โข goal๊ณผ ๊ด๋ จ ์๋ fact๊น์ง ์ ๋ถ ํ์ํด์ ๋นํจ์จ์ ์ด๋ค.
6. Resolution Algorithm
1) Resolution Rule for First-order Logic
* Binary resolution rule
- PL์์ ์ฐ์ด๋ resolution rule์ first-order clauses์์ ์ธ ์ ์๊ฒ lifted๋ ๊ฒ
- ๋ clauses๊ฐ ๊ฐ๊ฐ standardized apart๋์ด์ ์ด๋ ํ ๊ณตํต์ธ variable๋ ์์ ๋, complementary literall์ ๊ฐ์ง๊ณ ์๋ค๋ฉด resolution์ ์ฌ์ฉํ ์ ์๋ค.
- FOL์์ Literal์ด complementary ํ๋ค๋ ๊ฒ์, ์ด๋ค ํ literal์ด ๋ค๋ฅธ literal๊ณผ unify๋๋ ๊ฒ์ ๋งํ๋ค.
๋ณด์ด๋ ๊ฒ์ฒ๋ผ ์ผ๋จ์ standardized apart ๋์ด์ผ ํ๊ณ , ํฉ์ณ์ ์์จ ์ ์๋ ๊ฒ์ unify ๋๋ ๋ ๋ฆฌํฐ๋ด์ด๋ค.
์๋ฅผ ๋ค์ด ๋ค์๊ณผ ๊ฐ์ clause๋ฅผ ๋ณด๋ฉด, Loves(G(x),x)์ Loves(u,v)๊ฐ unifyํ๊ณ ์๋ก complementary ํ๋ค. ๋ฐ๋ผ์ u= G(x), v=x๋ฅผ ๋์ ํ๋ subst๋ฅผ ์ ์ฉํ์์ ๋, ๊ทธ ๋ ๋ฆฌํฐ๋ด์ ๋นผ๊ณ ๋๋จธ์ง๋ผ๋ฆฌ and ์ฐ์ฐ์ผ๋ก ํฉ์ณ์ค๋ true์ด๋ค.
(์ฐธ๊ณ : PL ์์๋ P∧Q∧R∧P=P∧Q∧R์ด์๋ค.
FOL ์์๋ P(x)∧Q(x)∧R(x)∧P(v) ์์ P(x)์ P(v)๊ฐ unify ๊ฐ๋ฅํ๋ฉด ์์จ ์ ์๋ค.)
2) Conjunctive Normal Form
- PL์์๋ ๊ทธ๋ฌ๋ฏ์ด ์ด๋ฐ resolution์ ์ฐ๋ ค๋ฉด sentence๋ค์ด conjunctive normal form, ์ฆ CF๋ก ๋ํ๋์ผ ํ๋ค. Sentence์ ์๋ variable๋ค์ ๊ธฐ๋ณธ์ ์ผ๋ก universally quantified๋ผ๊ณ ์๊ฐํด๋ผ. Definite clause๋ฅผ CNF๋ก ๋ฐ๊ฟ๋ณด์.
CNF sentence๋ก ๋ฐ๊ฟ๋ ๋ฌธ์ฅ์ inferentially equivalentํ๋ค.
โ Biconditional elimination์ ์ด์ฉํด ⇔ ๊ธฐํธ๋ฅผ ๋ค ์์ค๋ค (α ⇔ β) ≡ (α ⇒ β)∧(α ⇒ β)
โก Implication elimination์ ์ด์ฉํด ⇒ ๊ธฐํธ๋ฅผ ๋ค ์์ค๋ค (α ⇒ β) ≡๏ฟขα ∨ β
โข double-negation elimination๊ณผ de morgan ๋ฒ์น์ ์จ์ ๏ฟข ๊ธฐํธ๋ฅผ ๋ชจ๋ ๊ดํธ์์ผ๋ก ๋ฃ์ด์ค๋ค.
โฃ Standardize variables : ์๋ก ๊ด๋ จ ์๋ ๋ณ์๋ ๋ค๋ฅธ ์ด๋ฆ์ผ๋ก ๋ฐ๊ฟ์ค๋ค.
โค Skolemize : ∃ ํ์ ์์ ๊ธฐ
โฅ Remove universal quantifiers : ∀ quantifiers๋ ์ฃ๋ค ์์ ๊ธฐ
โฆ distributivity law๋ฅผ ์ฌ์ฉํด์ ∧๋ฅผ ๊ดํธ ๋ฐ์ผ๋ก, ∨์ ๊ดํธ ์์ผ๋ก ๋ฃ์ด์ค๋ค.
->์๋ ๋ฌธ์ฅ์ด unsatisfiableํ๋ฉด CNF sentence๋ unsatisfiableํ๋ค.
์์๋ฅผ ๋ณด์. ๊ทธ๋ฅ ์ญ ์ฝ์ด๋ณด๋ฉด ๋๋ค.
์ฌ๊ธฐ์๋ ๋ง์ฐฌ๊ฐ์ง๋ก KB๊ฐ α๋ฅผ entailํ๋์ง ๋ณด๊ธฐ ์ํด์๋ KB⇒α ๊ฐ validํ์ง ๋ด์ผํ๊ณ , ์ด๋ KB∧๏ฟขα ๊ฐ unsatistiable ํ์ง ํ์ธํด์ผ ํ๋ค. ๋ฐ๋ผ์ resolution ์๊ณ ๋ฆฌ์ฆ์ ํตํด KB∧๏ฟขα์ด ์์ Resolution ํ์ ๋ empty set์ด ๋์ค๋์ง ์๋์ค๋์ง๋ฅผ ํ์ธํ๋ฉด ๋๋ค.
๋ณด๋ฉด ์ฐ๋ฆฌ๊ฐ entail ๋๋์ง ์๋๋์ง ํ์ธํ query ๋ฌธ์ ๋ถ์ ์ด R9์ ์๋ค. R1~R9๊ฐ ๋ชจ๋ true๋ผ๊ณ ๊ฐ์ ํ๊ณ resolution์ ์ญ์ญ ์งํํ๋ค ๋ณด๋ฉด R18์์ empty set์ด ๋์ค๋ ๊ฒ์ ์ ์ ์๋ค. ๋ฐ๋ผ์ R9์ ๋ถ์ ๋ฌธ์ธ Criminal(West)๋ KB๋ก๋ถํฐ entail ๋๋ค.
- Completeness of Proof by Resolution (FOL์์ Resolution์ ์ด์ฉํ proof๊ฐ Completeํ ์ด์ )
'๐ก๐ธ๐ธ๐ถ5: ๐ฆ๐๐๐๐ถ ๐ฐ๐๐พ๐ > Artificial Intelligence(COSE361)' ์นดํ ๊ณ ๋ฆฌ์ ๋ค๋ฅธ ๊ธ
[์ธ๊ณต์ง๋ฅ] 14. Bayesian Networks (0) | 2021.06.12 |
---|---|
[์ธ๊ณต์ง๋ฅ] 13. Probability and Statistics (0) | 2021.06.12 |
[์ธ๊ณต์ง๋ฅ] 7. Propositional Logic - 3 (2) | 2021.04.25 |
[์ธ๊ณต์ง๋ฅ] 7. Propositional logic - 2 (1) | 2021.04.25 |
[์ธ๊ณต์ง๋ฅ] 7. Propositional logic - 1 (0) | 2021.04.24 |