Logika predikat. logika predikat disebut juga kalkulus predikat (predicate calculus) atau first order predicate logic.
1. Logika predikat disebut juga kalkulus predikat (predicate calculus) atau first order
predicate logic.
Logika predikat berperan penting dengan beberapa alasan, yakni :
Pertama : logika predikat memberi alasan logis yang mendasari bahasa
pemrograman logika, misalnya Prolog dan LISP.
Kedua : logika predikat mampu mendorong pengembangan kebutuhan aplikasi
komputer.
Ketiga : logika predikat mampu berperan di bagian pembuktian tentang masalah
“correctness” sehingga dapat secara tepat mengetahui kondisi program
yang menghasilkan keluaran yang benar.
Logika predikat digunakan untuk merepresentasikan hal-hal yang tidak dapat
direpresentasikan dengan menggunakan logika proposisi.
LOGIKA PREDIKAT
2. Logika predikat sebenarnya logika proposisional juga ditambah dengan hal-
hal yang baru yakni tentang penguantoran, kemudian ditambah istilah-istilah
baru, misalnya kuantor, universe of discourse, term, predikat fungsi dan lain-
lain. Sehingga apa saja yang ada pada logika proposisional juga digunakan
oleh predikat dengan penyesuaian tambahan pengertian-pengertian tersebut.
Jadi, pada dasarnya logika predikat adalah juga logika proposisional
ditambah persoalan kuantifikasi yang mempermasalahkan jumlah yang
ditunjukkan dengan suatu kata pada pernyataan dalam argumen tersebut,
misalnya kata “semua”, “beberapa”, “ada” dan lain-laina.
Oleh karena itu ada yg menyebutkan logika predikat dengan “Teori
Kuantifikasi” (quantification theory) karena masalah utamanya adalah pada
kuantifikasi tersebut.
LOGIKA PREDIKAT
3. LOGIKA PREDIKAT
Logika Predikat adalah logika proposisi yang bersifat
universal/umum
Logika Predikat adalah perluasan dari logika proposisi dimana
objek yang dibicarakan dapat berupa anggota kelompok.
Logika proposisi, menganggap proposisi sederhana (kalimat)
sebagai entitas tunggal.
Sebaliknya, logika predikat membedakan subjek dan predikat dalam
sebuah kalimat.
Contoh : Ani makan apel makan (Ani,apel)
3 + 3 +(3,3)
• Suatu proposisi/ premis dibagi menjadi 2 bagian yaitu
ARGUMEN/TERM (objek) atau PREDIKAT(keterangan)
o Argumen adalah individu / objek yang membuat keterangan
o Predikat adalah frase kata kerja yang menjelaskan properti objek atau
hubungan antara beberapa objek
22/07/2017 3
4. • Dalam suatu proposisi predikat bisa berupa kata kerja / bagian dari
kata kerja
• Bentuk umum :
PREDIKAT [individu(objek)1, individu(objek)2]
• Misal:
– Mobil berada dalam garasi,
Kalkulus predikat: di dalam (mobil,garasi)
mobil=argumen (objek)
garasi=argumen(objek)
– Proposisi : Hanif rajin belajar
Kalkulus predikat : rajin (Hanif, belajar)
– Proposisi : Pintu terbuka
Kalkulus predikat : buka(pintu)
22/07/2017 4
LOGIKA PREDIKAT
5. • Variabel :
– huruf bisa menggantikan argumen yang tidak dikaitkan
dengan individual tertentu
– “simbol” juga bisa digunakan untuk merancang
beberapa objek / individu
– misal : x = Hanif dan y=belajar
proposisinya : rajin(x,y)
22/07/2017 5
6. • Fungsi :
– Kalkulus Predikat menggunakan simbol untuk
mewakili fungsi-fungsi
– Misal : Wilis adalah ibu dari Hanan.
Ibu (Wilis, Hanan)
I = Ibu
h = Hanan
w = Wilis
I(h, w)
– Misal : B(x,y,z) = “x memberikan pada y nilai z”, maka
jika x=“Ahmad”, y=“Rahmat”, z=“A”, maka B(x,y,z) =
“Ahmad memberi Rahmat nilai A.”
22/07/2017 6
LOGIKA PREDIKAT
7. • Operasi
– operator yang sama seperti pada logika proporsional
– misal:
• proposisi : Rizki makan bakso, makan(Rizki, bakso)
• proposisi : Iwan makan bakso, makan(Iwan, bakso)
• Dioperasikan dengan operator/konektif dan (^)
• makan(Rizki, bakso) ^ makan(Iwan, bakso)
22/07/2017 7
LOGIKA PREDIKAT
8. TERM
Term pada logika predikat adalah ekspresi yang
merupakan objek, dibangun berdasarkan aturan :
1. Konstanta : adalah term
2. Variabel : adalah term
3. Jika t1, t2, . . . , tn adalah term, dimana n>1
dan F suatu simbol fungsi dari aritas n, maka
aplikasi : F(t1, t2, . . . , tn) adalah suatu term
4. Jika P suatu kalimat dan s dan t adalah term,
maka kondisinal if P then s else t adalah
suatu term
22/07/2017 8
LOGIKA PREDIKAT
9. Kalimat Atomik
Kalimat atomik =predikat (term1,...,termn)
atau term1 = term2
Term =fungsi (term1,...,termn)
atau konstanta atau variabel
• Contoh:
Brother(John, Richard)
Married(Father(Richard), Mother(John))
22/07/2017 9
LOGIKA PREDIKAT
10. Kalimat Kompleks
• Kalimat kompleks dibuat dari kalimat-
kalimat atomik dengan menggunakan
konektif
S, S1 S2, S1 S2, S1 S2, S1 S2
Contoh:
Sibling(KingJohn, Richard) Sibling(Richard, KingJohn)
>(1,2) ≤ (1,2)
>(1,2) >(1,2)
22/07/2017 10
LOGIKA PREDIKAT
11. Kebenaran dalam Logika Predikat
• Kalimat benar jika berkaitan dengan model dan
interpretasi
• Model berisi objek-objek dan relasi antar objek
• Interpretasi menspesifikasikan :
Simbol konstanta → objek
Simbol predikat → relasi
Simbol fungsi → relasi fungsional
• Sebuah kalimat atomik predikat(term1,...,termn) benar
jika dan hanya jika objek-objek yang menjadi acuan bagi
term1,...,termn berada dalam relasi-relasi yang diacu oleh
predikat
22/07/2017 11
12. B. LOGIKA PREDIKAT
Logika predikat digunakan untuk merepresentasikan hal-hal yang tidak
dapat direpresentasikan dengan menggunakan logika proposisi yang
dikenal dengan nama WFF (Well-Formed Formula).
Representasi Fakta Sederhana
Misal diketahui fakta-fakta sebagai berikut :
- Andi adalah seorang lelaki : A
- Ali adalah seorang lelaki : B
- Amir adalah seorang lelaki : C
- Anto adalah seorang lelaki : D
- Agus adalah seorang lelaki : E
Semua kalimat di atas dapat ditulis dengan singkat sebagai berikut :
Lelaki(X) di mana X adalah variabel yang bisa disubstitusikan dengan
Andi, Ali, Amir, Agus dan lain-lain.
LOGIKA PREDIKAT
13. LOGIKA PREDIKAT
Contoh lain :
a. “semua anak lelaki suka permen”
Pernyataan di atas dapat ditulis dengan logika predikat
sebagai berikut :
x : (anak lelaki(x) → suka(x, permen)
b. “beberapa anak lelaki suka bermain layangan”
Pernyataan di atas dapat ditulis dengan logika predikat
sebagai berikut :
x : (anak lelaki(x) Λ suka(x, bermain layangan)
14. LOGIKA PREDIKAT
• Logika predikat (kalkulus predikat) merupakan bagian dari
komputasi logika yang juga mencakup aljabar Boole (logika
proposisional), dimana fakta dan aturan dinyatakan melalui
predikat seperti:
– lelaki(Joko) // fakta
– menikah(Joko, Tuti) // fakta
– x y [menikah(x,y) Λ lelaki(x)] → ~ lelaki(y) // aturan
– y x [orang(y) → ibu(x,y) // aturan
15. LOGIKA PREDIKAT
• Kalimat pertama menunjukkan adanya fakta bahwa Joko adalah
seorang lelaki, dan kalimat kedua menyatakan bahwa Joko
menikah dengan Tuti.
• Kalimat ketiga dan kalimat keempat menunjukkan suatu aturan
atau kaidah yang umum berlaku, bahwa untuk setiap pasang orang
x dan y, jika x menikah dengan y dan x adalah lelaki, maka dapat
dipastikan bahwa y adalah bukan seorang lelaki.
• Sedangkan kalimat terakhir menyatakan bahwa untuk setiap y, ada
x sehingga jika y adalah orang, maka y mempunyai seorang ibu x (x
ibu dari y).
• Simbol predikat yang digunakan dalam kalimat-kalimat tersebut
adalah lelaki, menikah, orang dan ibu yang sering disebut sebagai
relasi, sedangkan Joko dan Tuti disebut sebagai simbol
konstanta.
16. LOGIKA PREDIKAT
BAHASA DEKLARATIF
• Bahasa yang digunakan adalah Prolog
(Programming Logic).
• Prolog digunakan karena bersifat deskriptif atau
deklaratif, sedang bahasa lain umumnya bersifat
prosedural atau imperatif.
• Sebagai bukti bahwa Prolog merupakan bahasa
deklaratif adalah dalam menyatakan fakta dan
aturan seperti berikut :
17. LOGIKA PREDIKAT
BAHASA DEKLARATIF
1. Jika ingin menyatakan bahwa Prawiro adalah bapak dari
Joko, maka dalam Prolog dituliskan sebagai:
– bapak(prawiro, joko).
2. Jika ingin menerangkan suatu kaidah bahwa A adalah kakek
dari Z maka harus dibuat dahulu logika dalam bahasa
Indonesia sehingga menjadi suatu aturan seperti berikut:
– A adalah kakek dari Z jika A adalah bapak dari X dan X
adalah bapak Z
atau
– A adalah kakek dari Z jika A adalah bapak dari X dan X
adalah ibu Z
• Aturan tersebut ditulis dalam Prolog sebagai:
– kakek(A,Z) :- bapak(A,X), bapak(X,Z).
– kakek(A,Z) :- bapak(A,X), ibu(X,Z).
18. LOGIKA PREDIKAT
• Contoh Representasi Pengetahuan Dalam Bahasa Prolog
Tree di atas dapat dibuat representasi secara logika sbb :
• Putra(labiba, raihan)
• Putra(raihan, afif)
• Putra(afif, farhan)
• Putra(afif, arfan)
• Putri(raihan, farah)
• Putri(farah, naura)
19. LOGIKA PREDIKAT
• Pertanyaan sederhana pada basis data
pengetahuan
Secara logika dapat diberikan pertanyaan dari
fakta-fakta yang sudah direpresentasikan.
Bentuk pertanyaan “siapa putri dari farah?”
untuk representasi secara logikanya, dapat
dinyatakan sbb:
– putri (farah, D)
– D = naura
D adalah sebuah variabel yang digunakan untuk
menampung jawaban dari pertanyaan siapa putri dari
farah. Pertanyaan yang direpresentasikan secara
logika putri(farah, D) didapatkan jawaban adalah D
= naura.
21. Kalimat logika predikat atau First Order Logic yang
merupakan well-formed formula (wff) didefenisikan
sebagai berikut :
1. Jika P(t1, t2, …, tn) adalah suatu predikat n-ary
maka P adalah formula atomic
2. Sebuah formula atomic adalah WFF
3. Jika P dan Q adalah WFF maka P Q, P V Q, ¬P,
P → Q, adalah juga WFF
4. Jika P adalah suatu WFF dan X bukan sebuah
quantified variable dalam P maka P tetap sebuah
WFF bahkan setelah quantifikasi. Misalnya x P
atau x P adalah WFF
LOGIKA PREDIKAT
22. Nyatakan kembali kalimat di bawah ini ke dalam logika predikat :
1. coconut-crunchy adalah sebuah biscuit
2. Neneng adalah anak kecil yang mengambil coconut-crunchy
3. Ali menyayangi anak-anak kecil yang mengambil biscuit
4. Ali menyayangi neneng
Pernyataan di atas dapat direpresentasikan dalam logika predikat
menggunakan quantifiers X dan Y sebagai berikut :
1. Biskuit(coconut-crunchy)
2. Anak kecil(neneng) ambil(neneng, coconut crunchy)
3. x : ((anak kecil(x) y :(ambil(x,y) biscuit (y))) →
sayang(Ali, x)
4. Sayang (Ali, Neneng)
LOGIKA PREDIKAT
23. Konversi ke CNF
(CNF=conjunctive normal form)
• 1. Eliminasi bikondisional atau implikasi
x ((anak kecil(x) Λ y (ambil(x,y) Λ biskuit(y))) sayang(Ali,x)
• 2. Reduksi scope di depan quantifier menggunakan
pilihan formula sbb :
a. x p ≡ x p d. (p V q) = p Λ q
b. x p ≡ x p e. (p Λ q) = p V q
c. ( p) ≡ p
mis.
x ((anak kecil(x) Λ y (ambil(x,y) Λ biskuit(y))) V sayang(Ali,x)
=> x ((anak kecil(x) V y ( ambil(x,y) V biskuit(y))) V sayang(Ali,x)
24. 3. Standarkan variabel: setiap quantifier harus
menggunakan variabel yang berbeda (pindahkan ke
bagian depan dari kalimat)
x y anak kecil (x) V ambil (x, y) V biskuit (y) V sayang (Ali,
x)
4. Skolemisasi: bentuk yang lebih general dari instansiasi
eksistensial
Setiap variabel eksistensial diganti dengan fungsi Skolem dari
variabel dengan quantifier universal
5. Hapus quantifier universal :
anak kecil (x) V ambil (x, y) V biskuit (y) V sayang (Ali, x)
Konversi ke CNF
(CNF=conjunctive normal form)
25. Resolusi Dalam Logika Predikat
Resolusi merupakan suatu teknik pembuktian
yang lebih efisien, sebab fakta-fakta yang akan
dioperasikan terlebih dahulu dibawa ke bentuk
yang sering disebut dengan nama klausa.
Pembuktian suatu pernyataan dilakukan dengan
cara menegasikan pernyataan tersebut,
kemudian dicari kontradiksinya dari pernyataan-
pernyataan yang sudah ada.
LOGIKA PREDIKAT
26. Pembuktian teorema Logika Predikat dengan Prinsip Resolusi
Pada dasarnya pembuktian teorema resolusi dalam logika predikat
sama dengan resolusi dalam logika proposisi. Bedanya, resolusi
predikat ditambah dengan unifikasi.
Misalnya ingin dibuktikan suatu teorema (Th) dari sekumpulan aksioma,
maka kita menunjukkannya dengan : {A1,A2,…An}_Th
Contohnya :
A1 = Biskuit(coconut crunchy)
A2 = Anak kecil(neneng) Λ Ambil(neneng, coconut-crunchy)
A3 = x (anak kecil(X) Λ Y (ambil(X,Y) Λ Biskuit(Y)))→ Sayang(Ali, X)
dan Teoremanya : sayang(Ali, Neneng) = A4
Buktikan teorema bahwa sayang (Ali, Neneng) !
LOGIKA PREDIKAT
27. Pembuktian teorema Logika Predikat dengan Prinsip
Resolusi
Penyelesaiannya :
Konversikan semua aksioma di atas ke dalam bentuk CNF
seperti di bawah ini:
A1 = Biskuit(coconut crunchy)
A2 = Anak kecil(Neneng)
A3 = Ambil(Neneng, coconut-crunchy)
A4 = ¬anak kecil(X) V ¬ ambil(X,Y) V ¬ biscuit (Y) V
sayang(Ali, X)
A5 = ¬Sayang(Ali, Neneng)
LOGIKA PREDIKAT
28. Graph resolusi untuk membuktikan bahwa
sayang(Ali, Neneng)
LOGIKA PREDIKAT
¬Sayang(Ali, Neneng) ¬anak kecil (x) V ¬ ambil(x,y) V ¬ biscuit (y) V sayang(Ali, x)
¬anak kecil(x) V ¬ ambil(x,y) V ¬ Biskuit (y) Biskuit(coconut crunchy)
¬anak kecil (x) V ¬ ambil (neneng, coconut crunchy) Anak kecil (Neneng)
¬ ambil (neneng, coconut crunchy) ambil (neneng, coconut crunchy)
φ
29. Latihan (1)
1. Konversikan kalimat-kalimat di bawah ini ke dalam logika predikat :
a. Mandala seorang manusia
b. Mandala berasal dari Papua
c. Semua orang Papua adalah orang Indonesia
d. Raja adalah pembuat aturan
e. Semua orang Indonesia loyal kepada raja atau membencinya
f. Tiap orang loyal kepada seseorang
g. Warga hanya membunuh pembuat aturan yang mereka tidak
loyal padanya
h. Mandala membunuh raja
2. Buktikan dengan resolusi apakah Mandala membeni raja?
30. Latihan (2)
All people who are not poor and are smart are
happy. Those people who read are not stupid. John
can read and is wealthy. Happy people have
exciting lives. Can anyone be found with an exciting
life?
31. Latihan (2)
All people who are not poor and are smart are
happy. Those people who read are not stupid. John
can read and is wealthy. Happy people have
exciting lives. Can anyone be found with an exciting
life?
x (Poor(x) Smart(x) Happy(x))
y (Read(y) Smart(y))
Read(John) Wealthy(John)
z (Happy(z) Exciting(z))
Goal: Exciting(w)
33. Latihan (3)
Anyone passing his history exam and winning the
lottery is happy. But anyone who studies or is lucky
can pass all his exams. John did not study but he is
lucky. Anyone who is lucky wins the lottery. Is John
happy?
34. Latihan (3)
Anyone passing his history exam and winning the
lottery is happy. But anyone who studies or is lucky
can pass all his exams. John did not study but he is
lucky. Anyone who is lucky wins the lottery. Is John
happy?
x (Pass(x, History) Win(x, Lottery) Happy(x)) 1
x y (Study(x) Lucky(x) Pass(x,y)) 2 3
Study(John) Lucky(John) 4 5
x (Lucky(x) Win(x, Lottery)) 6
Goal: Happy(John) 7
35. C. POHON
Pohon merupakan struktur penggambaran secara hirarki. Struktur pohon
terdiri dari node-node yang menunjukkan obyek dan arc (busur) yang
menunjukkan hubungan antar obyek.
A
G H I J M
L
K
B C D
F
E
36. D. JARINGAN SEMANTIK
Jaringan Semantik merupakan gambaran pengetahuan grafis yang
menunjukkan hubungan berbagai obyek. Obyek di sini bisa berupa
benda atau peristiwa.
Salah satu keuntungan jaringan semantik ini adalah bisa mewariskan
obyek-obyek tersebut.
pagi roda
Sekolah sepeda
Budi
buku
merah
Ani
laki2
Si kancil
dua
baju
binatang
Makhluk
hidup
wanita
Contoh jaringan semantik
masuk
adalah
adalah
berjudul
adalah
membaca
memakai
kakak
berwarna
berwarna
punya
jumlahnya
naik
adalah
adalah
pergi
37. D. FRAME
Frame merupakan kumpulan pengetahuan tentang suatu obyek tertentu,
peristiwa, lokasi, situasi dan lain-lain.
Frame memiliki slot yang menggambarkan rincian dan karkteristik obyek.
Frame digunakan untuk merepresentasikan pengetahuan yang
didasarkan pada karakteristik yang sudah dikenal berupa pengalaman-
pengalaman.
Trans. Darat
Slot solar
Slot Sedan
Slot mobil
Slot bensin
Frame alat2 transportasi
Frame macam2 angkut darat
Frame macam2 mobil
Frame jenis bahan bakar
38. E. NASKAH (SCRIPT)
Naskah : Skema representasi pengetahuan yang sama dengan frame,
yakni merepresenasikan pengetahuan berdasarkan karakteristik yang
sudah dikenal sebagai pengalaman-pengalaman
Perbedaannya dengan frame :
Frame menggambarkan obyek sedangkan naskah menggambarkan
urutan peristiwa
Elemen-elemen naskah meliputi:
a. kondisi input, yaitu kondisi yg harus dipenuhi sebelum terjadi peristiwa
dalam naskah
b. Track, varisi yang mungkin terjadi dalam suatu naskah
c. Prop, berisi obyek-obyek pendukung yang digunakan selama
peristiwa terjadi
d. Role, peran yang dimainkan oleh seseorang dalam peristiwa
e. Scene, yaitu adegan yang dimainkan dalam peristiwa tersebut
f. Hasil, yaitu kondisi yang ada setelah urutan peristiwa dalam naskah
terjadi.
39. E. NASKAH (SCRIPT)
contoh kejadian yang ada di “UTS KB”
• Jalur (track) : ujian tertulis matakuliah
Kecerdasan Buatan
• Role (peran) : mahasiswa, pengawas
• Prop (pendukung) : lembar soal, lembar
jawab, presensi, pena, dll
• Kondisi input : mahasiswa terdaftar untuk
mengikuti ujian
40. E. NASKAH (SCRIPT)
contoh kejadian yang ada di “UTS KB”
• Adegan (scene) -1 : Persiapan pengawas
– Pengawas menyiapk an lembar soal
– Pengawas menyiapkan lembar jawab
– Pengawas menyiapkan lembar presensi
• Adegan-2 : Mahasiswa masuk ruangan
– Pengawas mempersilahkan mahasiswa masuk
– Pengawas membagikan lembar soal
– Pengawas membagikan lembar jawab
– Pengawas memimpin doa
• Adegan – 3 : Mahasiswa mengerjakan soal ujian
– Mahasiswa menuliskan identitas di lembar jawab
– Mahasiswa menandatangai lembar jawab
– Mahasiswa mengerjakan soal
– Mahasiswa mengecek jawaban
41. E. NASKAH (SCRIPT)
contoh kejadian yang ada di “UTS KB”
• Adegan – 4 : Mahasiswa telah selesai ujian
– Pengawas mempersilahkan mahasiswa keluar ruangan
– Mahasiswa mengumpulkan kembali lembar jawab
– Mahasiswa keluar ruangan
• Adegan – 5 : Mahasiswa mengemasi lembar jawab
– Pengawas mengurutkan lembar jawab
– Pengawas mengecek lembar jawab dan presensi
– Pengawas meninggalkan ruangan
42. E. NASKAH (SCRIPT)
contoh kejadian yang ada di “UTS KB”
• Hasil :
– • Mahasiswa merasa senang dan lega
– • Mahasiswa merasa kecewa
– • Mahasiswa pusing
– • Mahasiswa memaki – maki
– • Mahasiswa sangat bersyukur
43. F. SISTEM PRODUKSI
Secara umum, sistem produksi terdiri dari komponen-komponen
sebagai berikut :
a. Ruang keadaan,
yang berisi berisi keadaan awal, tujuan dan kumpulan aturan yang
digunakan untuk mencapai tujuan
b. Strategi kontrol,
yang berguna untuk mengarahkan bagai-mana proses pencarian akan
berlangsung dan megnendalikan arah eksplorasi.
Representasi pengetahuan denan sistem produksi pada dasarnya
berupa aplikasi (rule) yang berupa :
a. Antecedent, yaitu bagian yang mengekspresikan situasi atau premis
(Pernyataan berawalan IF)
b. Konsekuen, yaitu bagian yang menyatakan suatu tindakan tertentu
atau konklusi yang diterapkan jika suatu situasi atau premis bernilai
benar (pernyataan berawalan THEN).