1 / 25

Kalkulus Predikat

Kalkulus Predikat. ASK 344-2 Pemrograman Logik. Cecilia E. Nugraheni Jurusan Ilmu Komputer Universitas Katolik Parahyangan Semester Genap 2006/2007. Kalkulus Predikat. Pengantar Proposisi Bentuk klausal Pembuktian theorema. Pengantar. Dasar dari pemrograman logik adalah logika formal.

valerian
Download Presentation

Kalkulus Predikat

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. Kalkulus Predikat ASK 344-2Pemrograman Logik Cecilia E. Nugraheni Jurusan Ilmu Komputer Universitas Katolik Parahyangan Semester Genap 2006/2007

  2. Kalkulus Predikat • Pengantar • Proposisi • Bentuk klausal • Pembuktian theorema

  3. Pengantar • Dasar dari pemrograman logik adalah logika formal. • Sebuah proposisi dapat dipandang sebagai pernyataan logis yang dapat bernilai benar atau tidak benar. • Proposisi terdiri atas objek dan hubungan/relasi antar objek. • Logika formal menyediakan satu metode untuk menjelaskan proposisi, dengan tujuan agar proposisi dapat diuji validitasnya.

  4. Pengantar • Tiga kebutuhan dasar logika formal: • Menyatakan proposisi • Menyatakan relasi antar proposisi • Menurunkan/memperoleh proposisi dari kumpulan proposisi yang ada • Logika simbolik dapat memenuhi kebutuhan dasar tersebut di atas. • Kalkulus predikat adalah bentuk khusus logika simbolik yang digunakan untuk pemrograman logik.

  5. Proposisi • Objek dari proposisi pemrograman logik dinyatakan sebagai term sederhana. • Term sederhana dapat berupa: • Konstanta • Variabel • Proposisi yang paling sederhana disebut proposisi atomik yang terdiri atas term gabungan.

  6. Proposisi • Term gabungan adalah satu elemen dari sebuah relasi matematik yang dinyatakan dengan notasi fungsi. • Sebuah term gabungan tersusun atas: • Functor (simbol fungsi, nama relasi) • Rangkaian parameter • Term gabungan dengan 1 parameter disebut 1-tupel; dengan 2 parameter disebut 2-tupel, dst.

  7. Proposisi • Contoh term gabungan: • man(jake) menyatakan bahwa {jake} adalah sebuah 1-tupel pada relasi yang bernama man • like(bob, steak) menyatakan bahwa {bob, steak} adalah sebuah 2-tupel pada relasi yang bernama like • jake,bob, dan steak adalah konstanta. • Proposisi tidak mempunyai arti semantik.

  8. Proposisi • Proposisi dapat dinyatakan dengan dua modus: • Proposisi didefinisikan bernilai benar  fakta • Nilai kebenaran proposisi akan ditentukan kemudian  query • Proposisi gabungan terdiri atas dua atau lebih proposisi atomik yang dihubungkan dengan operator logika.

  9. Proposisi • Tabel operator

  10. Proposisi • Contoh proposisi gabungan: • a  b  c • a b  c • Presedensi operator •  • , ,  • ,  • a  b  c ekivalen dengan (a (b))c

  11. Proposisi • Variabel dapat muncul hanya bila diperkenalkan oleh kuantifikator. • Ada dua kuantifikator: • Universal x. p : untuk semua x, p benar • Eksistensial x. p : terdapat sebuah nilai x dimana p benar

  12. Bentuk klausal • Bahasa logik paling baik berada pada bentuk yang paling sederhana  redudansi minimal. • Masalah dengan kalkulus predikat : banyak cara untuk menyatakan proposisi yang sama  redudansi. • Diperlukan bentuk proposisi standar  bentuk klausal.

  13. Bentuk klausal • Sintaks umum proposisi berbentuk klausal B1 B2  …  Bn  A1 A2  …  An arti : Jika semua Ai benar maka paling sedikit ada satu Bi benar. • Karakteristik bentuk klausal: • Tidak diperlukan kuantifikator eksistensial • Kuantifikator universal implisit pada penggunaan variabel pada proposisi atomik • Tidak ada operator selain konjungsi dan disjungsi

  14. Bentuk klausal • Contoh: • likes(bob, trout)  likes(bob,fish)  fish(trout) • father(louis, al)father(louis, violet)  father(al, bob)  mother(violet, bob)  grandfather (louis, bob)

  15. Konversi ke bentuk klausal • Relabel clashing variables. • Eliminate , , and . • Move  inwards. • Skolemise existentially quantified variables. • Drop universal quantifiers. • Distribute disjunction over conjunction. • Rewrite as clauses.

  16. Latihan 1 • Ubahlah proposisi berikut dalam bentuk klausal: • X.Y.(p(X,Y)  q(X,Y)) • X.Y.(q(X,Y)  p(X,Y)) • X.Y.(p(X,Y)  (q(X<Y)  r(X,Y)) • X.Y.(p(X,Y)  q(X,Y)) • (X.p(X))  (X.p(X))

  17. Latihan 2 • Consider the following sentences • All who can read are literate. • Dolphins are not literate. • Some dolphins are intelligent. • Some who are intelligent cannot read. • Using only the predicates read, literate, dolphins, intelligent, represent the above sentences in first-order predicate calculus. • Convert 1-4 into clausal form.

  18. KP dan pembuktian theorema • Kalkulus predikat menyediakan metode untuk menyatakan kumpulan proposisi. • Kegunaan kumpulan proposisi tersebut adalah untuk menentukan apakah ada fakta yang dapat diturunkan dari kumpulan proposisi tersebut • Analog dengan matematikawan: menemukan theorema baru dari kumpulan aksioma dan theorema yang sudah ada.

  19. KP dan pembuktian theorema • Pembuktian theorema secara otomatis: RESOLUSI. • Resolusi dapat bekerja dengan proposisi berbentuk klausal. • Konsep resolusi: • P1  P2 dan Q1  Q2 • Misal P1  Q2 dan ganti namanya dengan T. • Maka T  P2 dan Q1  T. • Lebih lanjut, Q1  P2.

  20. KP dan pembuktian theorema Contoh: • older(joanne, jake)  mother(joanne, jake) wiser(joanne, jake)  older(joanne, jake) hasil: wiser(joanne, jake)  mother(joanne, jake) • father(bob,jake)  mother(bob,jake)  parent(bob, jake) grandfather(bob,fred)  father(bob, jake) father(jake,fred) hasil: mother(bob, jake)  grandfather(bob,fred)

  21. KP dan pembuktian theorema • Resolusi bisa lebih kompleks dari contoh sebelumnya. • Terutama dengan adanya kemunculan variabel. • Diperlukan pencarian nilai variabel tertentu agar pembuktian berhasil  INSTANSIASI. • Proses instansiasi mungkin gagal  perlu dilakukan backtrack.

  22. KP dan pembuktian theorema • Resolusi dapat digunakan untuk mendeteksi ketidakkonsistenan yang terdapat pada sekumpulan proposisi. • Resolusi dapat digunakan untuk pembuktian theorema (kontradiksi): • Theorema yang akan dibuktikan dinegasikan • Lakukan resolusi • Jika ada ketidakkonsistenan maka terbukti bahwa theorema tersebut benar. • Theorema asal disebut hipotesis, dan yang dinegasikan disebut goal.

  23. KP dan pembuktian theorema • Pembuktian theorema dengan resolusi memerlukan bentuk khusus: klausa Horn. • Klausa Horn mempunyai 2 bentuk: • Proposisi atomik tunggal di sisi kiri contoh: likes(bob,trout)  likes(bob,fish)  fish(trout) • Sisi kiri kosong contoh: father(bob,jake) • Hampir semua proposisi dapat dinyatakan sebagai klausa Horn.

  24. Latihan 3 • Find out the response by using resolution: • Jack owns a dog. • Every dog owner is an animal lover. • No animal lover kills an animal. • Either Jack or John killed the cat, who is named Tuna. • Cat is an animal. Did John kill the cat?

  25. Latihan 4 • Whoever can read is a literate. • Dolphins are not literate. • Some dolphins are intelligent. Prove by resolution that there exist some who are intelligent can not read.

More Related