download

Matakuliah
Tahun
Versi
: H0383/Sistem Berbasis Pengetahuan
: 2005
: 1/0
Pertemuan 3
Predicate Logic
1
Learning Outcomes
Pada akhir pertemuan ini, diharapkan mahasiswa
akan mampu :
• Menggunakan Predicate Logic untuk
Representasi Pengetahuan
2
Outline Materi
•
•
•
•
•
Propositional Logic
Sintaksis dan Semantik FOPL
Sifat-sifat FOPL
Bentuk Klausal dari FOPL
Prosedur konversi ke dalam bentuk
klausal
3
Propositional Logic(PL)
PL merupakan bentuk khusus dari FOPL
• Hujan datang dan angin berhembus
kencang.
• Bentuk PL: H & A.
• H, A : propositions
• Jika rajin belajar maka akan berhasil
• Bentuk PL: RB
4
Propositional Logic(PL)
Sintaksis:
• T(true), F(false) adalah statement
(pernyataan).
• Jika P dan Q adalah statement, maka
berikut ini adalah statements:
• (~P), (P&Q), (PVQ),(PQ),(PQ)
Contoh:
• ((P&(~QVR)(QS)) adalah statement
5
Propositional Logic
Semantik dari PL: True atau False
No
True statements
False statements
1
~f
~t
2
t&t’
f&a
3
tVa
a&f
4
aVt
fVf’
5
at
tf
6
fa
tf
7
tt’
ft
8
ff’
t,t’:true statements
f,f’:false statements
a: any statements (false or true)
6
Propositional Logic
Contoh:
• ((P&~Q)R)VQ
• Let P is true, Q is false, R is false
• Rule 2: ~Q is true
• Rule 3: (P&~Q) is true
• Rule 6: (P&~Q)R is false
• Rule 5: statement is false
7
Propositional Logic
• Hukum-hukum ekivalen:
idem potency
PVP=P, P&P=P
Associative
(PVQ)VR = PV(QVR)
(P&Q)&R = P&(Q&R)
Commutative
PVQ=QVP, P&Q=Q&P
PQ = QP
Distributive
P&(QVR) = (P&Q)V(P&R)
PV(Q&R) = (PVQ)&(PVR)
De Morgan
~(PVQ) = ~P&~Q
~(P&Q) = ~PV~Q
Conditional elimination
PQ = ~PVQ
Bi-conditional elimination
PQ = (PQ)&(QP)
8
Propositional Logic
Pengambilan kesimpulan dalam PL:
• Modus Ponen:
• P,PQ: Q
• Kambing berkaki 4
• If x berkaki 4  x binatang
• Kambing adalah binatang
• Chain Rules: PQ,QR: PR
• x suka teh tawar x tak suka gula
• X tak suka gula  x diabetes
• X suka the tawar  x diabetes
9
FOPL
• Kekurangan dari PL adalah: kurang
ekspresif dan tidak dapat mengakomodasi
(contohnya) statement dibawah ini:
– Seluruh pelajar di fasilkom harus mengambil
mata kuliah SBP
– Baba adalah pelajar di fasilkom
• PL tidak dapat mengambil kesimpulan
bahwa Baba harus mengambil mata kuliah
SBP.
10
First Order Predicate Logic
• FOPL dikembangkan oleh para logicians
sebagai pelengkap PL.
• Sintaksis FOPL sebagaimana PL namun
dilengkapi oleh Predicates dan Functions.
• Semantik dari FOPL lebih ditentukan oleh
interpretasi dari predikat(predicate)
daripada proposition dlm PL.
11
FOPL
•
•
•
•
•
•
•
Sintaksis:
Connectives: &, V,~,,.
Quantifiers: universal  ,existential 
Constants
Variables
Functions
Predicates
12
FOPL
Representasikan Pengetahuan di bawah ini
dengan menggunakan FOPL:
• Seluruh pegawai berpenghasilan lebih dari
$2000 per tahun wajib membayar pajak.
• Beberapa pegawai sakit hari ini.
• Tidak ada pegawai yang berpenghasilan
lebih besar dari pimpinan
13
FOPL
Untuk merepresentasikan expresi tsb.,
definisikan predikat dan fungsi.
• E(x) atau EMPLOYEE(x) utk pegawai
• P(x) atau PRESIDENT(x) utk pimpinan
• i(x) atau income(x) utk penghasilan x
• GE(u,v) utk u lebih besar dari v
• S(x) atau SICK(x) utk pegawai sakit
• T(x) atau TAX(x) utk pajak
14
FOPL
• For all x if x an employee and the income of x greater then or
equal to 1000 then x pay taxes
• There is an employee and the employee is sick today
• For all x and y if x is an employee and y is the president then
the income of x is not greater than or equal to the income of y
x(( E ( x) & GE(i ( x), 2000))  T ( x)
x( E ( y )  S ( y ))
xy(( E ( x) & P( y )) ~ GE(i ( x), i ( y ))
15
FOPL
Expresi (statement) dalam FOPL biasa
disebut well-formed formula (wff)
Maka sintaksis dari FOPL dapat
didefinisikan sbb:
• If P and Q are wff, then ~P, P&Q, PVQ,
PQ, PQ, x P( x), x P( x)
adalah wff
16
FOPL
• Semantik FOPL : True atau False selama
elemen dari expresi berada dalam
domainnya.
• Evaluasi truth value dari
x (( A(a, x)  B( f ( x))) & C ( x))  D( x)
17
FOPL
• Diberikan domain dari expresi adalah {1,2}
• Diketahui konstanta a=2, f(1)=2, f(2)=1,
A(2,1)=B(1)=C(1)=D(2)=true,
A(2,2)=B(2)=C(2)=D(1)= false.
• Maka apabila expresi tersebut NOT TRUE
untuk seluruh nilai x, x={1,2} maka expresi
tsb. bernilai FALSE
18
FOPL
• Sifat-sifat expresi dalam FOPL
19
FOPL
PQ = ~P V Q:
• PINTAR(x)  SUKSES(x)
Asumsi:
• PINTAR(budi)  SUKSES(budi)
:TRUE
Ekivalen:
• ~PINTAR(budi) V SUKSES(budi)
:TRUE
Pembuktian:
• Bila PINTAR(budi) adalah TRUE maka
~PINTAR(budi) adalah FALSE
• Konsekuensinya SUKSES(budi) harus TRUE
20
FOPL
• Bentuk klausal adalah bentuk formal
disjunk(DNF), yaitu bentuk koneksi logika
terdiri atas &(AND), V(OR) dan ~(NOT).
• Pemetaan wff predicate logic ke dalam
bentuk klausal akan memudahkan sistem
melakukan automatic reasoning.
21
FOPL
Tahapan konversi ke dalam bentuk klausal:
• Eliminasi ekivalen () & implikasi ()
sesuai tabel ekivalen
• Pindahkan simbol negasi langsung ke
depan atom individu, misalkan.
~ (x) F [ x]  x ~ F [ x]
~ (x) F [ x]  (x) ~ F [ x]
22
FOPL
• Ubah nama variabel sehingga masing-masing
quantifier menunjuk variabel yg berbeda.
x( P( x)  (x Q( x)))
x( P( x)  (y Q( y )))
• Eleminasi existential quantifier melalui proses
Skolemization (lihat prosedur)
• Pindahkan seluruh universal quantifier kemuka
(kiri) expresi dan ubah expresi menjadi bentuk
normal konjunk (CNF).
• Eleminasi seluruh universal quantifier dan
konjungsi (operator &).
23
FOPL
Skolemization:
• Apabila quantifier terdepan(terkiri) dalam sebuah
ekspresi adalah sebuah existential quantifier, maka ganti
seluruh variabel yg dikuantisasi olehnya dengan sebuah
konstanta yang unik. Kemudian eleminasi existential
quantifier tsb.
• Prosedur diatas berlaku pula untuk existential quantifier
yg tidak didahului universal quantifier.
• Apabila existential quantifier didahului oleh universal
quantifier, maka ubah variabel yg dikuantisasi menjadi
sebuah fungsi, dimana argumen funsi tsb. adalah
variabel yang dikuantisasi universal quantifier yg
mendahului existential quantifier tsb.. Kemudian
eleminasi existential quantifier tsb.
24
FOPL
• Contoh:
u v x y P( f (u ), v, x, y )  Q(u, v, y )
• Setelah skolemization:
vx P( f (a), v, x, g (v, x))  Q(a, v, g (v, x))
25
FOPL
• Contoh konversi ke bentuk klausal
x y (z P( f ( x), y, z )  (u Q( x, u ) & v R( y, v)))
x y (~ (z P( f ( x), y, z ))  (u Q( x, u ) & v R( y, v)))
x y (z ~ P( f ( x), y, z )  (u Q( x, u ) & v R( y, v))
y (z ~ P( f (a ), y, z )  (u Q(a, u ) & v R( y, v))
y ( ~ P( f (a ), y, g ( y ))  ( Q(a, h( y )) & R( y, p ( y )))
y ( ~ P( f (a ), y, g ( y ))  ( Q(a, h( y )) & ~ P( f (a ), y, g ( y ))  R( y, p ( y )))
Bentuk klausal :
~ P( f (a ), y, g ( y ))  ( Q(a, h( y ))
~ P( f (a ), y, g ( y ))  R( y, p ( y ))
26
Penutup
• Pengetahuan direpresentasikan kedalam bentuk
formal logika sehingga dapat dilakukan
manipulasi menurut logika.
• First Order Predicate Logic merupakan
pengembangan dari Propositional Logic dengan
menambahkan unsur class dan subclass
sehingga “expressiveness” dari Pengetahuan
dapat direpresentasikan.
• Bentuk klausal diperlukan untuk melakukan
automated reasoning pada bab selanjutnya
27