LOGIKA ORDE PERTAMA (FOL)
First order logic
adalah sebuah bahasa formal yang digunakan di ilmu matematika, philosophy,
bahasa dan ilmu computer. Disebut juga kalkulus predikat, merupakan logika yang
digunakan untuk merepresentasikan masalah yang tidak dapat direpresentasikan
dengan menggunakan proposisi. Logika predikat dapat memberikan representasi
fakat-fakta sebagai suatu pernyataan yang mapan (well form). Kalkulus predikat bisa menganalisakan
kalimat-kalimat ke dalam subjek dan argumen dalam berbagai cara yang
berbeda-beda, yang pada akhirnya kalkulus predikat bisa digunakan untuk
memecahkan problem of multiple generality (masalah dalam berbagai keadaan umum) yang telah
membingungkan sebagian besar ahli-ahli logika abad pertengahan. Dengan
menggunakan logika predikat ini, untuk pertama kalinya, para ahli-ahli logika
bisa memberikan quantifier yang cukup umum untuk merepresentasikan semua argumen yang
terdapat pada natural language.
Pemisalan 1:
Semua gajah punya belalai. Bona seekor gajah.
Dengan Demikian, Bona punyabelalai
Tanpa perlu dibuktikanvaliditasnya, argument
tersebut valid karena Conclusi mengikutiPremis-premisnya.
Pemisalan2:
Semua siswa pasti pandai. Adi seorang siswa.
Dengan demikian, Adi pastipandai.
Secara nalar bisadilihat bahwa argument
tersebut mempunyai validitas yang kuat. Tapi ketikadibuktikan dengan Logika
Proposional, argument tersebut tidak bisadiselesaikan. Dibuktikan dengan logika
proposional:
p : Semua mahasiswa pasti pandai.(Premis 1)
q : Kinoy seorang mahasiswa.(Premis 2)
r : Dengan demikian, Kinoy pastipandai.
(Conclusi)
Dibuat dalam formuladengan operator AND
menjadi . Formula tersebut tidak ada dalam hukum-hukum logikaproposisi yang
dapat digunakan untuk mendukung validitas argument tersebut,karena tidak ada
yang bisa digunakan untuk menghubungkan ketiga pernyataandiatas. Dan tidak
mungkin juga suatu kesimpulan yang berbeda dihasilkan daripremis yang berbeda.
Pemisalan3:
Setiap manusia pasti mati. Karena Sayuti
adalah manusia, maka dia pastimati.
Secara intuisi kalimattersebut bernilai Benar.
Berdasarkan logika proposisi kalimat tersebut dapat disimbolkan sebagai:
p : Setiap manusia pasti mati
q : Sayuti adalah manusia
r : Sayuti pasti mati
Berdasarkan kerangka berfikir
Logika Proposisi bukanlah konsekuensi Logis dari pdan q. Pernyataan ‘Setiap
manusia pasti mati’ mengandungpernyataan Himpunan, yaitu Himpunan ‘manusia’,
dimana individu yang merupakanbagian dari himpunan manusia jumlahnya tidak
terhingga. Sedangkan pernyataan ‘Sayuti adalah manusia’ secara
implisitmenyatakan anggota dari himpunan ‘manusia’/ universal of discourse.
Struktur sepertidiatas tidak
dikenali oleh Logika Proposisi, karena apabila ingin membuktikankebenaran dari
pernyataan ‘Setiap manusiapasti masti’ maka harus dicari nilai kebenaran dari
seluruh elemen himpunanmanusia yang jumlahnya tak terhingga. Ini tidak mungkin
dilakukan.
Untuk mengatasipermasalahan
diatas diperlukan kerangka berfikir lain selain Logika Proposisiyaitu Logika
First-Order (Kalkulus Predikat). Maka dapat didefinisikan bahwa
LogikaFirs-Order adalah perluasan dari konsep Logika Proposisi untuk
mengatasipermasalahan yang tidak dapat dipecahkan melalui kerangka berfikir
LogikaProposisi dengan penambahan 3 komponen logika yaitu: Term (suku),
Predicate,dan Quantifier.
Dasar Logika First-Order
Logika First-Orderdigunakan untuk
merepresentasikan hal-hal yang tidak dapat direpresentasikan menggunakan
LogikaProposisi. Operator-operator yang digunakan pada Logika First-Order
adalah
SIMBOL
ARTI
BENTUK
Implies / Maka / Implikasi
jika … maka …
Not / Tidak / Negasi
tidak …
And / Dan / Konjungsi
… dan …
Or / Atau / Disjungsi
… atau …
Universal Quantifier
Untuk setiap / seluruh
Existensial Quantifier
Terdapat / ada
x
Term
-
Term / Suku
Term adalah parametersuatu fungsi bisa berupa
konstanta, variabel, dan nilai suatu fungsi. Bentukterm adalah:
P (x).
Dimana P adalahPredikat (ditulis dengan huruf
besar) dan x adalah variabel (ditulisdengan huruf kecil). P(x) dapat disebut
sebagai nilai darifungsi proposisi P pada x. Ketika nilai variabel x telah
ditetapkan maka barulah P(x)memiliki nilai kebenaran.
UniversalQuantifier
Definisi: Jika Asuatu ekspresi logika dan x
adalah variable, maka jika ingin menentukanbahwa A adalah bernilai benar untuk
semua nilai yang dimungkinkan untuk x,maka akan ditulis. Disini disebut
kuantoruniversal, dengan A adalah scope dari kuantor tersebut. Variabel
xdisebut terikat (bound) dengan kuantor.
Simbol UniversalQuantifier menggantikan kata
‘untuksemua’, ‘untuk seluruh’.Dan digunakan pada pembentukan formula dengan
bentuk:
(x) P(x)
(x) P(x) bernilai benar apabila predikat
P(x)bernilai benar. Formula tersebut dapat dibaca sebagai ‘Seluruh x untuk
P(x)’ atau ‘Setiap x untuk P(x)’
Contoh:
“Semua Gajah mempunyai belalai”Jika G adalah
gajahdan B adalah belalai maka ditulis dalam kuantor universal menjadi , dibaca
“Jika x adalah Gajah maka, x mempunyai belalai”.Belum bisa dibuktikan secara
predikat karena jumlah gajah bisa banyak bisa sajacuma satu, maka diperluas
menjadi , dibaca “Untuk semua x, jika x seekor gajah, maka xmempunyai belalai”.
“Semua mahasiswa harus rajin belajar”Langkah1:
Cari lingkupatau scope dari kuantor universal, pada argument diatas menjadi
“Jika x adalahmahasiswa, maka x harus rajin belajar” ditulis menjadi .
Langkah2: Beri kuantoruniversal didepannya,
dari hasil yang didapat pada langkah pertama menjadi
Langkah3: Ubah menjadisuatu fungsi, menjadi
ExistentialQuantifier
Definisi: Jika Asuatu ekspresi logika dan x
adalah variable, maka jika ingin menentukanbahwa A adalah bernilai benar untuk
sekurang-kurangnya satu dari x,maka akan ditulis . Disini disebut
kuantoreksistensial, dengan A adalah scope dari kuantor tersebut. Variabel
xdisebut terikat (bound) dengan kuantor.
Simbol ExistentialQuantifier
menggantikan kata ‘ada’, ‘beberapa’, ‘tidaksemua’, ‘terdapat’.Dan
digunakan pada pembentukan formula dengan bentuk:
(x) P(x)
(x) P(x) bernilai benar apabila ada x
yang menyebabkan P(x)bernilai benar. Formula tersebut dapat dibaca sebagai ‘Ada
x untuk P(x)’
Contoh:
“Ada bilangan prima yang genap”Jika P adalah
bilangan‘prima’ dan G adalah ‘genap’, argumen tersebut dapat dibaca “Ada x,
yang xadalah bilangan prima dan x adalah genap”, sehingga disimbolkan menjadi .
“Ada pelajar memperoleh beasiswa
prestasi”Langkah1: Cari lingkupatau scope dari kuantor eksistensial, pada
argument diatas menjadi “Ada x, yang x adalahpelajar, dan x memperoleh beasiswa
prestasi”, sehingga ditulis menjadi
Langkah2: Berilahkuantor eksistensial di
dari hasil yangdidapat pada langkah pertama menjadi
Langkah3: ubah menjadisuatu fungsi, menjadi
6.3 Transformasi
Pernyataan Kedalam FormulaFirst-Order
Langkah-langkahmen-transformasi penyataan
kedalam formula First-Order adalah sebagai berikut:
1. Buat
penafsiran mengenaipernyataan tersebut
2. Tentukan dan
deklarasikanpredikat-predikat yang digunakan
3. Tentukan
quantifier yangdiperlukan
Hal yang perludiperhatikan adalah penafsiran
atau cara pandang kita dalam menafsirkanpernyataan tersebut. Penafsiran yang
berbeda akan menghasilkan formula yang berbeda. Kadang
dalammentransformasikan sebuah pernyataan kedalam formula first-order
diperlukanquantifier lebih dari satu.
Contoh:
1. Tentukan
nilai dari Plus(Plus(3,2), Plus (2,1)).
Jawab:
PLUS (PLUS (3,2), PLUS (2,1))
= PLUS (5, PLUS (2,1))
=PLUS (5,3)
=8
2. Tuliskan
pernyataan berikutkedalam bentuk formula
a. Setiap bilangan Rasional
adalahbilangan Real
b. Ada bilangan yang
merupakan bilangan prima
c. Untuk setiap bilangan x, ada
bilangan y dimana x < y
Jawab:
Langkahpertama definisikan dulu predikat-predikat
P(x)
: x adalah
bilangan prima
Q(x)
: x adalah
bilangan rasional
R(x)
: x adalah
bilangan real
KECIL(x)
:x lebih kecil dari y
a.
(x) (Q(x) R(x))
b. (x)
P(x)
c. (x) (y)
KECIL (x,y)
3. Ubahlah
pernyataan “Tidak ada orang tua menginginkan anaknyajadi penjahat” kedalam
bentuk formula first-order.
Jawab:
Kalimattersebut ekuivalen dengan:
“Jika x adalah orang tua, maka x tidakingin
anaknya jadi penjahat”
Predikatyang digunakan:
P(x) : xadalah orang tua
Q(x) :xingin anaknya jadi penjahat (gunakan
operator Negasi)
FormulaFirst-Order: (x) (P(x) Q(x))
4. Tuliskan
dalam bentuk formulapernyataan berikut “x lebih besar dari y”
Jawab:
Interpretasi ke-1:Jika ditafsirkan bahwa
“untuk setiap xada y yang lebih kecil” maka kita bisa menyatakan x > y,
makaPredikatnya: BESAR(x,y) maka formulanya menjadi: (x) ((y) BESAR(x,y)
Interpretasi ke-2: Jikaditafsirkan “untuk
sembarang x dan y,jika x lebih besar dari y, maka tidak benar pernyataan y
lebih besar dari x”maka formulanya menjadi: (x) (y) (BESAR(x,y)
BESAR(y,x))
6.4 Pembuktian
pada Logika First-Order
Pembuktian LogikaFirst-Order hampir sama
dengan pembuktan pada Logika Proposisi. Hanya saja padaLogika First-Order
pembuktian menggunakan Aturan Inferensi lebih mungkin untukdilakukan.
Contoh:
Buktikan bahwa “Setiap manusia pasti mati.
Sayuti adalahmanusia, Karenanya Sayuti pasti mati.”
Jawab:
Misal dideklarasikanpredikat berikut:
MAN(x)
:x adalah manusia
MORTAL(x) :x pasti mati
Maka pernyataan padasoal menjadi:
P1
:(x)
(MAN(x) MORTAL(x))
P2
:MAN(Sayuti)
Untuk membuktikanbahwa kesimpulan “Sayuti
pasti mati”harus dibuktian bahwa MORTAL(Sayuti) adalah konsekuensi logis dari
P1dan P2. Maka;
Dilakukan pembuktianlangsung:
P1P2
: (x) (MAN(x) MORTAL(x)) MAN(Sayuti)
Karena
(MAN(x) MORTAL(x))bernilai Benar untuk semua x maka;
(MAN(Sayuti) MORTAL(Sayuti))juga
Benar
(x) (MAN(x)MORTAL(x))
MAN(Sayuti)
(MAN(Sayuti)MORTAL(Sayuti))
MORTAL(Sayuti)
Premis P1
Premis P2
Langkah 1 dan 2
P1: x Sayuti
Persoalan Logika First-Order dalam AI
Logika First-Order digunakan dalam ilmu
IntelejensiBuatan sebagai Representasi Pengetahuan. Persolan yang ada memiliki
pernyataanlebih kompleks lagi tapi dapat diselesaikan dengan Pelacakan
Terbalik(Backward)
Contoh:
Diberikanpernyataan sebagai berikut:
1. Andi adalah
seorang mahasiswa
2. Andi masuk
jurusan Informatika
3. Setiap
mahasiswa Informatikapasti mahasiswa Teknik
4. Kalkulus
adalah matakuliah yangsulit
5. Setiap
mahasiswa teknik pastiakan suka kalkulus atau akan membencinya
6. Setiap
mahasiswa pasti akansuka terhadap suatu matakuliah
7. Mahasiswa yang
tidak pernahhadir pada kuliah matakuliah sulit, maka mereka pasti tidak suka
terhadapmatakuliah tersebut
8. Andi tidak
pernah hadir kuliahmatakuliah kalkulus.
Buktikan Apakah Andi suka matakuliah kalkulus?
Jawab:
Ubah pernyataan menjadi bentuk formula:
1. Mahasiswa(Andi)
2. Informatika(Andi)
3. x:
Informatika(x)Teknik(x)
4. sulit(kalkulus)
5. x: Teknik(x)suka(x,
kalkulus) benci(x, kalkulus)
6. x: y:
suka(x,y)
7. x: y:
mahasiswa(x)sulit(y)hadir(x,y) suka(x,y)
8. hadir(Andi,kalkulus)
Pernyataan Apakah Andi suka matakuliah
kalkulus = suka(Andi,kalkulus)
ARGUMEN PADA LOGIKA PREDIKAT
Validitas sebuah argumen dapat dibuktikan
dengan contoh yang mirip dengan contoh 1. perhatikan contoh argumen berikut:
Contoh 2:
1. Semua mahasiswa pasti pandai
2. Badu seorang mahasiswa
3. Dengan demikian, Badu pandai
Secara nalar, kebanyakkan orang akan menilai
bahwa argumen di atas mempunyai validitas yang kuat. Akan tetapi, saat
validitas tersebut ingin dibuktikan dengan logika proposisional, ternyata tidak
bisa diselesaikan. Pembuktiannya dapat dilakukan dengan mengikuti prosedur
logika proposisional dengan menentukan terlebih dahulu proposisi-proposisinya :
A = Semua mahasiswa pasti pandai
B = Badu seorang mahasiswa
C = Badu pasti pandai
Selanjutnya akan menjadi seperti berikut :
A
B
_____
:. C
Dalam ekspresi logika : (A ˄ B)=>C
Dalam bentuk ekspresi logika diatas, tidak ada
hukum-hukum logika proposisional yang dapat digunakan untuk membuktikan
validitas argumen tersebut karena tidak ada yang mampu menghubungkan antara
ketiga proposisi yang digunakan diatas. Atau tidak mungkin suatu kesimpulan
yang berbeda dapat dihasilkan dari premis-premis yang berbeda. Dengan
kata lain, tidak mungkin suatu kesimpulan berupa C dapat dihasilkan dari premis
A dan premis B.
Jika argumen diatas masih ingin dibuktikan
dengan logika proposisional, maka kalimatnya harus diperbaiki. Misal seperti
berikut:
Contoh 3:
1. Jika Badu seorang mahasiswa, maka ia pasti
pandai
2. Badu seorang mahasiswa
3. Dengan demikian, ia pasti pandai
Jika diubah dalam bentuk ekspresi logika :
1. B=>C premis 1
2. B
premis 2
3. C
kesimpulan
Atau dapat juga ditulis : [(B=>C) ˄ B]
=> C
Dalam logika proposisional, ekspresi logika
diatas sudah benar karena kesimpulan diambil dari premispremis. Persoalan yang
terjadi adalah pernyataan tersebut tidak sepenuhnya mampu menangkap ide pada
argumen yang pertama yaitu “Semua mahasiswa pandai”. Ide pada pernyataan
tersebut tidak tertangkap pada argumen kedua karena hanya mampu menunjuk
seorang mahasiswa yaitu Badu, bukan semua mahasiswa. Persoalan lain juga
terjadi, yakni kesulitan menentukan objek. Misalnya orang yang dimaksudkan jika
diganti dengan kata ganti orang. Perhatikan pernyataan-pernyataan pada contoh
argumen berikut:
Contoh 4:
1. Jika Badu seorang mahasiswa, maka ia pasti
pandai
2. Dewi seorang mahasiswa
3. Dengan demikian, ia pasti
pandai
Tidak ada komentar:
Posting Komentar