Professional Documents
Culture Documents
Phn gii
ntsn
ntsn
yes
Thut ton
kim tra
hng ng
yes
no
no
ntsn
Thut ton
kim tra
hng sai
yes
no
ntsn
ntsn
H thng F
H thng F
? H
Hng sai ?
H
ntsn
ntsn
Din dch M
Din dch L
Din dch J
Din dch M
Din dch N
Din dchI K
Din dch P
Hn
g
Yes sai
/No
Di
n
d
ch
I
ch
d
Co nh
n
DiDin dch M
Din d
ch L
Din dch P
Hn
g
Yes sai
/No
ntsn
Din dch I
Din dch M
Bin i
Din dch L
Din dch J
Din dch M
Din dch N
Din dchI K
Dng chun Skolem
Din dch P
Hng sai
Yes/No
ntsn
ntsn
ntsn
ntsn
ntsn
ntsn
ntsn
ntsn
ntsn
Mnh
Mi phn t ca dng chun Skolem c gi
l 1 mnh .
Do mnh c nh ngha l hi cc
lng nguyn.
Mnh n v l mnh c 1 lng nguyn.
Mnh rng l cng thc hng sai.
Nhc li :
F = F ( l cng thc hng sai), F.
F = F ( l cng thc hng ng), F.
ntsn
ntsn
ntsn
p(x) r(x).
? p(x) r(x).
? p(x) r(x).
? p(x) r(x).
ntsn
Thay th
Th d :
S = {p(x), p(y) q(h(x)), p(t), p(f(x)) q(z)}
Thay
t bng x,
y bng f(x) v
z bng h(x).
S tr thnh : {p(x), p(f(x)) q(h(x))}
(s mnh ca tp S gim).
ntsn
Thay th
Thay th (substitution) l mt tp hp
= {s1/x1, ..., sn/xn}, vi x1, ..., xn l cc bin cn
s1, ..., sn l cc nguyn t tha iu kin :
i
si xi,
xi xj,
i, j
Th d :
= {x/t, f(x)/y, h(x)/z}.
S = {p(x), p(y) q(h(x)), p(t), p(f(x)) q(z)}
S = {p(x), p(f(x)) q(h(x))}
ntsn
Thay th
Khi tc ng 1 thay th ln 1 tp S hay 1
nguyn t t th cc bin trong S hay t c thay
bng cc nguyn t tng ng c trong .
Cc bin ny ch c thay th 1 ln.
Th d :
= {y/x, f(x)/y, a/z}.
S = {p(x) q(y), p(z) q(x)}
S = {p(y) q(f(x)), p(a) q(y)}
ntsn
Thay th
Th d :
S = {p(x), p(y) q(h(t)), p(f(x)) q(z)}
= {a/x, f(x)/y, h(x)/z}
S = {p(a), p(f(x)) q(h(t)), p(f(a)) q(h(x))}
(S) = {p(a), p(f(a)) q(h(t)), p(f(a)) q(h(a))}
ntsn
Hp ni
Hp ni 2 thay th :
= {s1/x1, ..., sn/xn}
= {t1/y1, ..., tm/ym}
l thay th.
= {s1/x1, ..., sn/xn, t1/y1, ..., tm/ym}
Ch ly cc phn s khng c
mu xut hin trong cc bin x1, , xn
Th d :
= {f(y)/x, z/y} v = {a/x, b/y, y/z}.
= {f(b)/x, y/z}, = {a/x, b/y}.
ntsn
ng nht th
S = {E1, ..., Ek}.
Nu S = {E1} (ngha l E1 = ... = Ek) th
c gi l ng nht th (unifier) ca S.
Th d :
S = {p(a, y), p(x, f(b))} v = {a/x, f(b)/y}
S = {p(a, f(b))} l ng nht th ca S.
S c gi l kh ng nht th (unifiable).
ntsn
mgu
ng nht th l mgu (most general unifier)
ca {E1, ..., Ek} nu
( ng nht th )( thay th ) ( = )
{E1, ..., Ek}
||
Tp bt ng
ng nht cc mnh ca 1 tp hp, so
snh tng k t, nu gp s khc bit th ly 2
thnh phn c ngha hnh thnh nn tp hp
gi l tp bt ng (disagreement).
Th d :
S = {p(x, f(y, z)), p(x, a), p(x, g(h(k(x))))}
{f(y, z), a} l tp bt ng.
T = {p(f(x), h(y), a, t(c)), p(f(x), z, k(x), h(y)),
p(f(x), h(x), b, g(h(x)))}
{h(y), z} l tp bt ng.
ntsn
ntsn
ntsn
ntsn
mgu
Th d :
S = {p(x, y, z), p(f(y), z, g(w)), p(f(g(a)), z, t)}
{x, f(y)} 0 = {f(y)/x}
S0 = {p(f(y), y, z), p(f(y), z, g(w)), p(f(g(a)), z, t)}
{y, z} 1 = 0.{z/y} = {f(z)/x, z/y}
S1 = {p(f(z), z, z), p(f(z), z, g(w)), p(f(g(a)), z, t)}
{z, g(w)} 2 = 1.{g(w)/z}
= {f(g(w))/x, g(w)/y, g(w)/z}
S2 = {p(f(g(w)), g(w), g(w)), p(f(g(a)), g(w), t)}
ntsn
mgu
{z, g(w)} 2 = {f(g(w))/x, g(w)/y, g(w)/z}
S2 = {p(f(g(w)), g(w), g(w)), p(f(g(a)), g(w), t)}
{w, a} 3 = 2.{a/w}
= {f(g(a))/x, g(a)/y, g(a)/z, a/w}
S3 = {p(f(g(a)), g(a), g(a)), p(f(g(a)), g(a), t)}
{g(a), t} 4 = 3.{g(a)/t}
= {f(g(a))/x, g(a)/y, g(a)/z, a/w, g(a)/t}
S4 = {p(f(g(a)), g(a), g(a))}
mgu(S) ={f(g(a))/x, g(a)/y, g(a)/z, a/w, g(a)/t}
ntsn
Tha s
Tha s (factor) ca mt mnh .
D = p(x) p(f(y)) q(x) p(z)
p(x) v p(f(y)) c mgu = {f(y)/x}.
D = p(f(y) q(f(y)) p(z) l tha s.
p(z) v p(f(y)) c mgu = {f(y)/z}.
D = p(x) p(f(y) q(x) l mt tha s.
p(x) v p(z) c mgu = {x/z}.
D = p(x) p(f(y) q(x) l mt tha s.
ntsn
ntsn
ntsn
Phn gii
Phn gii ca hai mnh C, D :
1. Phn gii nh phn ca C v D.
2. Phn gii nh phn ca C v 1 tha s ca D.
3. Phn gii nh phn ca 1 tha s ca C v 1
tha s ca D.
K hiu pg(C, D)
ntsn
Phn gii
Th d
C = p(x) q(a)
D = p(z) p(f(y)) r(x).
pg(C, D) = q(a) p(f(y)) r(x).
pg(C, D) = q(a) p(z) r(f(y)),
pg(C, D) = q(a) r(f(y)).
ntsn
Phn gii
nh l
Phn gii l h qu lun l ca 2 mnh c
phn gii.
C, D pg(C, D)
H qu
Mt h thng hng sai nu phn gii ra c
mnh hng sai ().
Qu trnh phn gii s dng nu khng sinh ra
c mnh mi.
ntsn
Chng minh
Chng minh H l h qa lun l ca F v G :
F = x (p(x) (w(x) r(x)))
G = x (p(x) q(x))
H = x (q(x) r(x))
Chuyn F, G v H thnh dng chun.
F = x ((p(x) w(x)) (p(x) r(x)))
G = x (p(x) q(x))
H = x (q(x) r(x))
ntsn
Chng minh
H thng mi l :
(1) (p(x) w(x))
(2) (p(x) r(x)))
(3) p(a)
(4) q(a)
(5) q(x) r(x).
pg(2, 3) = r(a)
pg(4, 5) = r(a)
pg(6, 7) = .
(6)
(7)
ntsn
Problem-solving[13]
If one number is less than or equal to a second
number, and the second number is less than or
equal to a third, then the first number is not
greater than the third. A number is less than or
equal to a second number if and only if the
second number is greater than the first or the
first is equal to the second. Given a number,
there is another number that it is less than or
equal to. Therefore, every number is less than
or equal to itself.
[13] The essence of logic John Kelly. Prentice Hall 1997
ntsn
Problem-solving[13]
Biu din di dng k hiu ton hc.
If x y and y z then not x > z.
x y if and only if y > x or x = y.
For every x, there is a y such that x y.
Therefore, x x for every x.
ntsn
Problem-solving[13]
Biu din di dng logic.
Cc v t le (), gt (>), eq (=)
x y z ((le(x, y) le(y, z)) gt(x, z))
x y (le(x, y) (gt(y, x) eq(x, y)))
x y le(x, y)
x le(x, x).
ntsn
Problem-solving[13]
Biu din di dng logic.
x y z ((le(x, y) le(y, z)) gt(x, z))
x y (le(x, y) (gt(y, x) eq(x, y)))
x y ((gt(y, x) eq(x, y))) le(x, y)
x y le(x, y)
(x le(x, x)).
ntsn
Problem-solving[13]
Biu din di dng logic.
x y z (le(x, y) le(y, z) gt(x, z))
x y (le(x, y) gt(y, x) eq(x, y))
x y ((gt(y, x) eq(x, y)) le(x, y))
x y le(x, y)
x le(x, x).
ntsn
Problem-solving[13]
Biu din di dng logic.
x y z (le(x, y) le(y, z) gt(x, z))
x y (le(x, y) gt(y, x) eq(x, y))
x y ((gt(y,x) le(x,y)) (eq(x,y) le(x,y))
x y le(x, y)
x le(x, x).
ntsn
Problem-solving[13]
Bin i v dng chun Skolem.
{le(x, y) le(y, z) gt(x, z),
le(x, y) gt(y, x) eq(x, y),
gt(y, x) le(x, y),
eq(x, y) le(x, y),
le(x, f(x)),
le(a, a)}
ntsn
Problem-solving[13]
Bin i v dng chun Skolem.
le(x, y) le(y, z) gt(x, z) (1)
le(x, y) gt(y, x) eq(x, y)
(2)
gt(y, x) le(x, y)
(3)
eq(x, y) le(x, y)
(4)
le(x, f(x))
(5)
le(a, a)
(6)
ntsn
Problem-solving[13]
Bin i v dng chun Skolem.
/* le(x, y) le(y, z) gt(x, z) (1)
le(x, x) gt(x, x)
(1)
le(x, y) gt(y, x) eq(x, y)
(2)
gt(y, x) le(x, y)
(3)
eq(x, y) le(x, y)
(4)
le(x, f(x))
(5)
le(a, a)
(6)
*/
ntsn
Using Resolution[13]
Phn gii.
pg(1, 2), pg(1, 3), pg(1, 4), pg(1, 5), pg(1, 6),
pg(2, 3), pg(2, 4), pg(2, 5), pg(2, 6),
pg(3, 4), pg(3, 5), pg(3, 6),
pg(4, 5), pg(4, 6),
pg(5, 6)
ntsn
Using Resolution[13]
Phn gii pg(1, 2).
M1 = le(x, x) gt(x, x)
M2 = le(x, y) gt(y, x) eq(x, y)
= {x/y}
M1 = le(x, x) gt(x, x)
M2 = le(x, x) gt(x, x) eq(x, x)
pg(1, 2) = le(x, x) eq(x, x)
(1)
(2)
ntsn
Problem-solving[13]
Some students attend logic lectures diligently.
No student attends boring logic lectures
diligently. Seans lectures on logic are attended
diligently by all students. Therefore none of
Seans logic lectures are boring.
Chn cc v t :
lec(x) : x l bi ging v logic
st(x) : x l student, s : Sean,
at(x, y) : x tham d y chm ch,
bor(x) : x t nht, gv(x, y) : x c cho bi y
ntsn
Problem-solving[13]
Chuyn v LLVT
Some students attend logic lectures diligently.
There is an x who is a student and, for every y,
if y is a logic lecture, then x attends y diligently.
x (st(x) y (lec(y) at(x, y)))
Nu dch :
x y (st(x) lec(y) at(x, y)))
y x (st(x) lec(y) at(x, y)))
???
???
ntsn
Problem-solving[13]
Chuyn v LLVT
No student attends boring logic lectures
diligently.
For every x, if x is a student, then, for every y, if
y is a lecture which is boring, then x does not
attend y.
x (st(x) y (lec(y) bor(y) at(x, y)))
ntsn
Problem-solving[13]
Chuyn v LLVT
Seans lectures on logic are attended diligently
by all students.
If x is a lecture given by s then every student z
attends it.
x (lec(x) gv(x, s) z (st(z) at(z, x)))
ntsn
Problem-solving[13]
Chuyn v LLVT
Therefore none of Seans logic lectures are
boring.
Every lecture given by s is not boring.
x ((lec(x) gv(x, s)) bor(x))
ntsn
Problem-solving[13]
Tng kt
x (st(x) y (lec(y) at(x, y)))
x (st(x) y (lec(y) bor(y) at(x, y)))
x (lec(x) gv(x, s) z (st(z) at(z, x)))
ntsn
Problem-solving[13]
Bin i
x (st(x) y (lec(y) at(x, y)))
x (st(x) y (lec(y) bor(y) at(x, y)))
x (lec(x) gv(x, s) z (st(z) at(z, x)))
x (lec(x) gv(x, s) bor(x))
chng minh h thng hng sai.
ntsn
Problem-solving[13]
Bin i
x y (st(x) (lec(y) at(x, y)))
x y (st(x) lec(y) bor(y) at(x, y))
x z (lec(x) gv(x, s) st(z) at(z, x))
x (lec(x) gv(x, s) bor(x))
ntsn
Problem-solving[13]
Bin i
st(a) (lec(y) at(a, y))
st(x) lec(y) bor(y) at(x, y)
lec(x) gv(x, s) st(z) at(z, x)
lec(b) gv(x, s) bor(b)
ntsn
Problem-solving[13]
Bin i
st(a)
lec(y) at(a, y)
st(x) lec(y) bor(y) at(x, y)
lec(x) gv(x, s) st(z) at(z, x)
lec(b)
gv(x, s)
bor(b)
(1)
(2)
(3)
(4)
(5)
(6)
(7)
ntsn
Problem-solving[13]
Phn gii
st(a)
lec(y) at(a, y)
st(x) lec(y) bor(y) at(x, y)
lec(x) gv(x, s) st(z) at(z, x)
lec(b)
gv(x, s)
bor(b)
(1)
(2)
(3)
(4)
(5)
(6)
(7)
ntsn
Problem-solving[13]
Phn gii
st(a)
lec(y) at(a, y)
st(x) lec(y) bor(y) at(x, y)
lec(x) gv(x, s) st(z) at(z, x)
lec(b)
gv(x, s)
bor(b)
Nhn xt : d (4) v (6) !!!.
(1)
(2)
(3)
(4)
(5)
(6)
(7)
ntsn
Structured programming
Tm mt con ng trn 1 th
Tm ng AD ?
E
B
F
A
D
ntsn
Structured programming
Imperative approach
Thut ton Dijstra
Ly cy <t> = (A)
nh k ca <t> l B, C : <t> = (A), (AB), (AC)
nh k ca <t> l C, E, D : <t> = (A), (AB), (AC),
(ABC), (ABE), (ACD).
E
B
F
A
D
ntsn
Logic programming
Declarative approach
Chng trnh prolog
connect(A, B).
B
connect(A, C).
connect(B, C).
A
connect(B, E).
C
connect(C, D).
D
connect(E, C).
connect(E, F).
path(X, Y) :- connect(X, Y).
path(X, Y) :- connect(X, Z), path(Z, Y).
goal path(A, D) ?
ntsn
Logic programming[13]
ntsn
Bi tp
Chng 4 : Phn gii
ntsn
ntsn
Thay th
= {f(y)/x, z/y, g(x)/z},
= {a/x, b/y, x/t},
= {y/z, h(x)/y, f(x)/t }.
Tm hp ni v .
3. Dng thut ton ng nht tm mgu ca cng
thc P :
P = {q(f(x),y,u), q(u,v,h(x)), q(t,y,z)}.
2. Cho 3 thay th
ntsn
Tha s
4. Cho thay th ={a/x, b/y, g(x,y)/z} v
E = p(h(x),z), Tnh E.
5. Tm cc tha s ca T :
T = p(h(x)) r(y) p(f(y)) q(x) r(g(a))
r(y) p(a).
6. Dng phn gii kho st tnh hng sai, kh
ng ca cng thc :
(r(x,y,z) v(f(y),w)) v(x,y) t(x,z) (t(x,y)
v(x,y))
ntsn
Chng minh
7. Bng phn gii chng minh tp S l hng sai
S = {p(x) q(y), p(a) r(x), p(a) r(x), p(x)
q(b), r(a) q(y), r(x) q(b)}.
8. Dng phn gii cho bit cng thc F l hng sai
hay kh ng :
F ={(q(c) p(b)) (q(c) r(c)) (q(c) r(c))
(q(c) p(b)) (r(c) p(b)) (r(c)
p(b))}.
ntsn
Ht slide
ntsn