1
Chương 3
K thut gii quyết vn đề
(tiếp)
Lê Thanh Hương
1
Khoa CNTT
Đ
HBKHN
3.6 Biểu diễn bằng logic hình thức và
các phương pháp chứng minh
VD1. Bài toán con khỉ - nải chuối
•Ti(O,x): đối tượng O ti v trí x
B
an
đầ
u:
Muốn:
Hành động của khỉ:
tại(A,x) tại (A,y)
tại(A,x) tại(O,x) tại(A,y) tại(O,y)
ti(A,4) , ti(B,3), ti(C,1), ti(D,2)
ti(B,2) , trên(C,B), trên(A,C), trên(D,A)
Trên(O1,O2): đối tượng O1 nm trên O2
2
123 4
C
D
B
A tại(A,x)
tại(O,x) trên(A,O)
tại(A,x) tại(O1,x) tại(O2,x)
trên(O1,O2)
Logic mnh đề (Propositional Logic)
•1 mnh đề p là 1 phát biu ch có nhn giá tr đúng (true,
T, 1) hoc sai (false, F, 0)
liên kết vi nhau to thành câu
Câu (well formed formulas – các công thc đúng ng
pháp)
–T và F là câu
Các biến mnh đề là câu: P, Q, R, S
3
–Nếu φψlà câu thì nhng biu thc sau cũng là câu:
(φ), ¬φ, φ∨ψ, φ∧ψ, φ→ψ, φ↔ψ
Các biu thc logic mnh đề được xây dng trên các tên
mnh đề và các phép toán logic theo quy tc cú pháp
nht định
Các toán t
Hi(
and và)
)
Các phép toán logic
Hi
(
,
and
,
và)
•Tuyn (, or, hoc)
•Ph định (¬,,not, không)
A
B
C
A
(B
C)
Th t ưu tiên: ¬∧∨→↔
o
eo
)
•Tương đương ()
4
A
B
C
A
(B
C)
ABCD(AB)(CD)
ABCD(A(BC))D
2
Ng nghĩa
Ý nghĩa ca mt câu là giá tr chân lý ca nó {T,F}. Ví d
P1
,
2P2
,
2P3
,
1
,
,
,
false true false
Mt s lut đánh giá giá tr chân lý:
¬Sđúng nếu S sai
S1S2đúng nếu S1đúng và S2đúng
ế
5
S1S2đúng n
ế
u S1đúng hoc S2đúng
¬P1,2 (P2,2 P3,1) = true (true false)
= true true = true
Bng chân lý
•Giá tr chân lý ca mt biu thc được tính da trên
bn
g
chân l
ý
6
•D thy ab ⇔¬ab ⇔¬b⇒¬a
biu thc logic mnh đề đều có th đưa v dng
biu thc tương đương ch cha phép ,¬,
Các phép biến đổi tương đương
Hai câu có ý nghĩa tương đương nếu cùng giá tr đúng:
giao hoán
giao
hoán
kết hp
ph định kép
tương phn
7
de Morgan
phân phi
Các phép biến đổi tương đương
Lut hp thu:
•(A (A B) A•(A (A B)) A
Các lut v 0, 1:
•A 0 0
•A 1 1
¬1 0
•A 0 A
•A 1 A
¬0 1
Lut bài trung:
8
Lut
bài
trung:
¬A A 1
Lut mâu thun:
¬A A 0
3
Hp gii
•Lut hp gii (Các câu cn được chuyn sang
dng kết ni chun trước khi hp gii)
β
α∨
β
¬β γ
α∨γ
•Chng minh KL: thêm ¬KL vào CSTT để xem
có xung đột không
9
•Áp dng hp gii đến khi xut hin mâu
thun
Hp gii
Dng kết ni chun (Conjunctive Normal Form - CNF)
E.g., (A ∨¬B) (B ∨¬C ∨¬D)
•Lut hp gii cho CNF:
l1lk, m1mn
l1li-1 li+1 lkm1mj-1 mj+1 ...
mn
trong đól
m
nhau
10
trong
đó
l
i
m
j
nhau
E.g., P1,3 P2,2, ¬P2,2
P1,3
Chuyn đổi sang CNF
B1,1 (P1,2 P2,1)
1. Loi b phép , thay α β b
ng (α β)
(β α).
(B1,1 (P1,2 P2,1)) ((P1,2 P2,1) B1,1)
2. Loi b phép , thay α β bng ¬αβ.
(¬B1,1 P1,2 P2,1) (¬(P1,2 P2,1) B1,1)
3Đưa
vào trong sdng lut de Morgan phđịnh kép:
11
3
.
Đưa
¬
vào
trong
s
dng
lut
de
Morgan
ph
định
kép:
(¬B1,1 P1,2 P2,1) ((¬P1,2 ∧¬P2,1) B1,1)
4. Áp dng lut phân phi đối vi phép :
(¬B1,1 P1,2 P2,1) (¬P1,2 B1,1) (¬P2,1 B1,1)
Ví d
(A
B)
(C
D)
(A
B)
(C
D)
1. Loi b phép suy ra
¬(AB)(¬CD)
2. Chuyn ph định vào trong ngoc
(
A
B)
(
C
D)
12
(
¬
A
∧¬
B)
(
¬
C
D)
3. Phân phi
(¬A∨¬CD)(¬B∨¬CD)
4
Ví dụ
Chuyn đổi các công thc sau v dng kết ni
chun:
1. P (¬P Q R)
2. (¬P Q) (P ∧¬Q)
3. ¬(P Q) (P Q)
4. (P Q) R
13
5. (P (Q R)) ((P S) R)
6. (P (Q R)) S
7. P Q R S
Thut toán hp gii ca
Robinson
Chng minh bng phn chng: CSTT ∧¬KL không tho
mãn
14
Thut toán hp gii ca Robinson
Chng minh bng phn chng: CSTT ∧¬KL không tho mãn
Gi s có GT1, GT2,…,GTn. Cn CM KL phn chng
GT
1
GT
1
…><
GTn
¬KL
Viết mi GTi, ¬KL trên 1 dòng
Đưa GTi, ¬KL v dng chun CNF
(
)
(
)(*)
15
(
p1pn
)
(
q1qn
)
(*)
Tách mi dòng (*) thành các dòng con:
p1pn
q1qn
Thut toán hp gii ca Robinson
Xét 1 cp dòng
u)
¬
p
q
u)
¬
p
q
v) pr
Hp gii:
w) qr
Vô lý xut hin khi
i)
¬
t
16
i)
¬
t
ii) t
đpcm
5
Ví d
VD
1
:
VD2:
VD
1
:
1. a
2. ab
3. b(cd)
4. c
VD2:
1. abc
2. bc d
3. a
4. b
Chng minh d
17
Chng minh d
Chng
minh
d
Ví d
VD3:
1.
p
VD4:
1.
((
ab
)
c
)
(
c
d
)
p
2. pq
3. qrst
4. pu
5. vw
6
u
v
((
)
)
(
)
2. amdf
3. mbc
4. ac
5. (af)(¬eg)
6
(m
f)
g
18
6
.
u
v
7. vt
Cho r,s. CM t
6
.
(m
f)
g
Cho a,m. CM g
Ví d 5
1. a1 a2 a3 a4
2. a1 a5
3. a2 a3 a5
4. a2 a4 a6 a7
5. a5 a7
6. a1 a3 a6 a7
19
Cho các mnh đ
a1, a2 đúng.
Đưa các biu thc logic trên v dng chun
áp dng phương pháp hp gii ca Robinson, chng
minh a7 đúng.
Logic v t cp 1
(First Order Logic – FOL)
Logic mnh đề ch x lý thông tin kiu s kin đúng hoc sai
như
trimưa
như
tri
mưa
.
•Vi logic v t cp 1, biến được dùng thay cho các đối tượng
c th.
FOL cho phép biu din các đối tượng, thuc tính ca đối
tượng, và quan h gia các đối tượng.
•V t p(x,…y) là mt phát biu cha các biến x,…y sao cho
khi x,…y nhn giá tr c th thì p(x,…y) nhn giá tr đúng hoc
sai
20
sai
.
•VD. Nếu p(x,y,z) nghĩa là x.y = z thì tính cht giao hoán ca
phép nhân x.y = y.x được biu din dưới dng
x,y p(x,y,z) p(y,x,z)
Logic v t cp 1 còn s dng thêm các toán t ,