TAUTOLOGI, KONTRADIKSI, CONTINGENT Fuzy Yustika Manik , S.Kom., M.Kom CAPAIAN PEMBELAJARAN Setelah mengikuti matakuliah Logika Komputer mahasiswa Program Studi S1 Ilmu Komputer semester satu akan dapat menerapkan kaidah dan aturan logika untuk penyelesaikan masalah pengembangan algoritma pemrograman. KEMAMPUAN AKHIR YANG DI HARAPKAN Membuktikan suatu argument dengan tabel kebenaran yang menghasilkan tautology atau yang bukan tautology (kontradiksi dan contingent) MATERI KONTRADIKSI TAUTOLOGI CONTIGENT IMPLIKASI DAN APLIKASINYA TAUTOLOGI Tautologi adalah suatu bentuk kalimat yang selalu bernilai benar (T), tidak peduli bagaimana pun nilai kebenaran masingmasing kalimat penyusunnya. Dalam tabel kebenaran, suatu Tautologi selalu bernilai benar (T/B) pada semua barisnya, TUNJUKKKAN BAHWA (P V Q) V [(-P) (-Q)] p q ~p ~q PVq ~p ~q (p v q) v [(~p) (~q)] T T F F T F T T F F T T F T F T T F T F T F F T T F T T KONTRADIKSI Kontradiksi adalah :suatu bentuk kalimat yang selalu bernilai salah (F), tidak peduli bagaimana pun nilai kebenaran masing-masing kalimat penyusunnya. Dalam tabel kebenaran kontradiksi selalu bernilai salah(F) pada semua barisnya. TUNJUKKAN BAHWA (P V Q) [(~P) (~Q)] p q ~p ~q pvq ~p ~q (pvq) [(~p) (~q)] T T F F T F F T F F T T F F F T T F T F F F F T T F T F CONTINGENT Jika pada semua nilai kebenaran menghasilkan nilai F/S dan T/B, maka disebut formula campuran (contingent). TUNJUKKAN BAHWA [(PQ) → R] → P ADALAH CONTINGENT! P Q R PQ (PQ)R ((PQ)R) P F F F F T F F F T F T F F T F F T F F T T F T F T F F F T T T F T F T T T T F T F T T T T T T T LATIHAN 1 Tentukan pernyataan dibawah ini Tautologi, Kontradiksi atau bukan keduanya ! a. b. c. d. e. (( p q ) q ) p (p q) p (q r) ( q r ) p(pq) (p q) (p q) SIFAT OPERATOR LOGIKA IMPLIKASI •Operator logika implikasi memiliki sifat yang sangat unik dan khas. •Misalkan p: saya lapar, q: saya haus, maka secara aturan disjungsi bias dikatakan p v q : saya lapar atau haus. •Sedangkah q v p : saya haus atau lapar, kedua kalimat tersebut memiliki makna yang sama. SIFAT OPERATOR LOGIKA IMPLIKASI • Misalkan diberikan p : anda memiliki password yang benar, q : anda bias login ke akun facebook. Kita dapat membentuk 4 macam implikasi: • p q : Jika anda memiliki password yang benar maka anda bisa login ke akun facebook. • q p : Jika anda bisa login ke akun facebook maka anda memiliki password yang benar. • ¬p ¬q : Jika anda tidak memiliki password yang benar maka anda tidak bisa login ke akun facebook. • ¬q ¬p : Jika anda tidak bisa login ke akun facebook maka anda tidak memiliki password yang benar. SIFAT OPERATOR LOGIKA IMPLIKASI Bentuk diatas memiliki nama khusus yaitu pq Implikasi qp Konvers ¬p ¬q Inverse ¬q ¬p Kontraposisi TABEL KEBENARAN p q IMPLIKASI pq KONVERS qp T T F F T F T F T F T T T T F T INVERS KONTRAPOSISI ~p ~q ~q ~p T T F T T F T T SIFAT OPERATOR LOGIKA IMPLIKASI Contoh: • Jika Amir mempunyai mobil maka ia orang kaya • Konvers : Jika Amir orang kaya maka ia mempunyai mobil • Invers : Jika Amir tidak mempunyai mobil maka ia bukan orang kaya. • Kontraposisi : Jika Amir bukan orang kaya maka ia tidak mempunyai mobil • Jika Nina menangis maka ia sakit perut • Konvers : Jika Nina sakit perut maka ia menangis • Invers : Jika Nina tidak menangis maka ia tidak sakit perut • Kontraposisi : Jika Nina tidak sakit perut maka ia tidak menangis IMPLIKASI PADA PEMROGRAMAN • Program komputer sangat erat kaitannya dengan logika. • Cara kerja komputer sebagian besar menggunakan konsep implikasi. • Tetapi implikasi logika yang kita pelajari berbeda dengan implikasi pada program komputer. Berikut skema singkat implikasi pada program komputer. if C then S • C : Ekspresi logika yang menyatakan syarat/kondisi • S : Satu atau lebih pernyataan IMPLIKASI PADA PEMROGRAMAN • S dieksekusi jika C yang diberikan bernilai benar, dan S tidak dieksekusi jika C yang diberikan bernilai salah. • Kedudukan logika matematika yang dipelajari terletak pada eksperesi logika yang menyatakan syarat/kondisi (C). • Ekspresi logika pada komputer hanya dikenal tiga operator logika yaitu Konjungsi, Disjungsi, dan Exclusive-OR (XOR). IMPLIKASI PADA PEMROGRAMAN Contoh: • Misalkan didalam sebuah program yang ditulis dalam Bahasa Pascal terdapat pernyataan berikut: if x > y then y := x + 10 Akan diberikan nilai x = 2 dan y = 1, x = 3 dan y = 5. Jika x = 2 dan y = 1 maka ekspresi x > y bernilai benar karena faktanya 2 > 1, sehingga pernyataan y := x + 10 dilaksanakan. Nilai y sekarang menjadi y := 2 + 10 = 12. • • • • Jika x = 3 dan y = 5 maka ekspresi x > y bernilai salah karena faktanya 3 < 5, sehingga pernyataan y := x + 10 tidak dilaksanakan. IMPLIKASI PADA PEMROGRAMAN Contoh: • Misalkan didalam sebuah program terdapat pernyataan berikut: • if 1-2 = 3 then x := 2x + 1 • Secara mudah bias dinyatakan C : 1-2 = 3 bernilai salah, karena 1-2 = -1. • Perhatikan bahwa C selalu bernilai salah sehingga apapun x yang diinputkan tetap tidak diproses. CONTOH Misalkan sebuah program komputer diberikan pernyataan-pernyataan berikut: • if (1 + x = 3) v (2 + x = 4) then x := x + 5. • if (x > 2) (1+2 = 3) then x := x/2 Tentukan nilai kebenaran (benar/salah) dari peryataanpernyataan logika diatas PEMBAHASAN if (1 + x = 3) v (2 + x = 4) then x := x + 5 • Diberikan nilai x = 1, 2, 3, 4 sebagai x input maka akan ditentukan x output. • Perhatikan bahwa C : (1 + x = 3) v (2 + x = 4) dan S : x := x + 5. • Misalkan p : (1 + x = 3) dan q : (2 + x = 4). Maka C = p v q. • Jika x = 1 maka p: (1 + 1 = 2 ≠ 3) p bernilai salah dan q : (2 + 1 = 3 ≠ 4) q juga bernilai salah. Maka p = F dan q = F, C = F v F = F. • Jadi S tidak dilaksanakan, nilai x output = x input 1 PEMBAHASAN • Jika x = 2 maka p : (1 + 2 = 3) sehingga p bernilai benar dan q : (2 + 2 = 4) sehingga q juga bernilai benar. • Maka C : p v q bernilai True sehingga pernyataan S dilaksanakan menjadi x := x + 5 2 + 5 = 7. x output = 7. • Jika x = 3 maka p : (1 + 3 = 4 ≠ 3) sehingga p bernilai salah dan q : (2 + 3 = 5 ≠ 4) sehingga q juga bernilai salah. • Maka C : p v q bernilai False sehingga pernyataan S tidak dapat dilaksanakan sehingga x output = x input, x=3 PEMBAHASAN if (x > 2) (1+2 = 3) then x := x/2 • Diberikan nilai x = 1, 2, 3, 4 sebagai x input maka akan ditentukan x output. • Perhatikan bahwa C : (x > 2) (1+2 = 3) dan S : x := x/2 • Misalkan p : (x > 2) dan q : (1+2 = 3). Maka C = p q. • Jika x = 1 maka p : (1 > 2) sehingga p bernilai salah dan q selalu bernilai benar. Berdasarkan table xor, S dilaksanakan. • Nilai x output = x/2 = ½. PEMBAHASAN • Jika x = 2 maka p : (2 > 2) sehingga p bernilai salah dan q selalu bernilai benar. • Berdasarkan table xor, maka S akan selalu dilaksanakan, x output = x/2 = 1 • Jika x = 3 maka p : (3 > 2) sehingga p bernilai benar dan q selalu bernilai benar. • Berdasarkan table xor, maka S tidak dilaksanakan dikarenakan C = T T = F. maka x output = x input 3 LATIHAN 2 • Tentukan konvers, invers, dan kontraposisi dari pernyataan berikut: • Jika saya merasa bosan belajar maka saya akan mendengarkan music jazz. • Kami akan pergi berkemah hari ini apabila hari tidka hujan. • Syarat cukup untuk menjadi seorang programmer adalah mampu membuat program sederhana. • Periksalah dengan table kebenaran. Apakan kedua pernyataan ini memiliki nilai kebenaran yang sama. • ¬p q dan ¬q p • p (q p) dan ¬(q p) ¬p LATIHAN 3 •Misalkan pada sebuah program diberikan pernyataan berikut. •if (x ≥ 3) (8-x = 4) then x := x2 + 1 •if (x ≤ 2) (2 + x2 = 3) then x := x/5 Bila diberikan nilai x = 1, 2, 3, 4 sebagai x input maka akan ditentukan x output. Lengkapi table dibawah ini. x input x output 1 2 3 4 KOLEKSI FORMULA YANG KONSISTEN suatu koleksi/ kumpulan formula {A1;A2; … ;An} dikatakan konsisten (consistent) bila terdapat suatu interpretasi I yang mengakibatkan I (A1) = I (A2) = I (An) = T. CONTOH MASALAH KONSISTENSI SPESIKASI SISTEM Seorang software engineer diminta oleh manajernya untuk membuat suatu sistem informasi dengan spesikasi berikut: 1. Ketika system software di-upgrade, user tidak dapat mengakses file system; 2. Jika user dapat mengakses file system, maka user dapat menyimpan filebaru; 3. Jika user tidak dapat menyimpan file baru, maka system software tidak sedang di-upgrade. Apakah spesikasi di atas konsisten? PENYELESAIAN Untuk memeriksa konsistensi spesikasi sistem, pertama perlu menerjemahkan setiap kalimat spesifkasi menjadi formula logika proposisi. Agar sistem konsisten, formula-formula spesikasi sistem tidak boleh kontradiktif. Hal ini berarti konjungsi dari formula-formula pada tersebut harus bernilai benar untuk suatu interpretasi. Akibatnya, jika sistem memiliki n buah formula spesikasi A1;A2; … ;An maka haruslah terdapat interpretasi I yang memberikan I (A1) = I (A2) = ... = I (An) = T U n t u k m e n j awa b p e r m a s a l a h a n ko n s i s te n s i s i s te m ya n g d i d e s k r i p s i kan s e b e l u m nya , k i t a p e r l u m e n te r j e m a h ka n s p e s i fi ka s i s i s te m ke d a l a m fo r m u l a l o g i ka p ro p o s i s i . M i s a l ka n p : s y s te m s o f t wa r e s e d a n g d i - u p g r a d e . , q : u s e r d a p a t m e n g a k s e s fi l e s y s te m . , r : u s e r d a p a t m e ny i m p a n fi l e b a r u . . A k i b a t nya ket i g a ka l i m a t s p e s i fi ka s i s i s te m d a p a t d i t u l i s m e n j a d i A1 := p →⌐q A2 := q → r A3 := ⌐r → ⌐p S e l a n j u t nya a ka n d i p e r i k s a a p a ka h te r d a p a t i n te rp r et a s i I s e h i n g g a I ( A 1 ) = I ( A 2 ) = I ( A 3 ) = T. T i n j a u b a h wa d e n g a n m e m i l i h I ( p ) = F, I ( q ) = F, d a n I ( r ) = T d i p e ro l e h I (A1) = I (p → ⌐ q) = F → T = T I (A2) = I (q → r) = F → T = T I (A3) = I (⌐ r → :p) = F → T = T J a d i d a p a t d i s i m p u l ka n b a h wa s p e s i . ka s i s i s te m b e r s i f a t ko n s i s te n . LATIHAN 4 Periksa apakah spesifikasi sistem berikut konsisten. ”Sistem berada dalam state multiuser jika dan hanya jika beroperasi secara normal. Jika sistem beroperasi secara normal, maka kernel sistem sedang berfungsi. Kernel sistem tidak sedang berfungsi atau sistem dalam interrupt mode. Sistem tidak berada dalam interrupt mode” DISKUSI DISKUSI