1 / 24

The Logical Basis For Computer Programming

LOGIKA & ALJABAR BOOLEAN. The Logical Basis For Computer Programming. Richard Waldinger Zohar Manna. Pendahuluan. Kebenaran suatu pernyataan bisa ditentukan dari strukturnya saja , tanpa harus tahu kebenaran pembentuk-pembentuknya ( constituents ).

sen
Download Presentation

The Logical Basis For Computer Programming

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. LOGIKA & ALJABAR BOOLEAN The Logical Basis For Computer Programming Richard Waldinger Zohar Manna

  2. Pendahuluan • Kebenaransuatupernyataanbisaditentukandaristrukturnyasaja, tanpaharustahukebenaranpembentuk-pembentuknya (constituents). • SepertiP or (not P)dansetiappernyataandenganbentukserupaadalahbenar, tidakpeduliapakahPbenaratausalah. • Suatukalimatabstrakadalahvalidjikabernilaibenartanpamempedulikankebenaranataukesalahandariproposisi-proposisipembentuknya.

  3. Pendahuluan (CONT) • Sebagaicontoh, jikakitatahubahwakalimatabstrak not ( P and (not P) ) or Q valid, makakitabisadengancepatmenyimpulkanbahwakalimat-kalimatkongkrit not ( [x  0] and (not [x  0]) ) or ( y  0 ) bernilaitrue (benar), tanpaharustahuapakahx  0dany  0bernilaitrueataufalse (salah).

  4. Pendahuluan (CONT) • Sebaliknya, setiapinstancedarisuatukalimatabstrakseperti P and (not P) bernilaifalsetanpaharustahuapakahPbernilaitrue atau false. Selanjutnya, kalimatsemacaminiakandisebutkalimatcontradictory. PerhatikanbahwasuatukalimatFadalahvalid precisely when (ketikasecarapasti) negasi (negation) nya, yaitu (not F) adalahcontradictory.

  5. Pendahuluan (CONT) • Di samping itu, banyak kalimat-kalimat abstrak seperti P or Q dan not P tidak valid maupun tidak contradictory; karena mereka mempunyai instances yang bisa bernilai true atau false.

  6. Pendahuluan (CONT) • Kemudianadapasangankalimat-kalimatabstrakseperti if P then Qdanif (not Q) then (not P), adalahekuivalen, dalampengertianbahwasuatuinstancekonkritsalahsatudarikeduanyabernilaitrue precisely whencontoh yang bersesuaiandarisatunyabernilaitrue. Sebagaicontoh, duakalimatkongkrit “Jikaseorangmahasiswamengikutiujianakhirsuatumatakuliah, makamahasiswatersebutakanmendapatnilaiuntukmatakuliahtersebut.” dan “Jikaseorangmahasiswatidakmendapatnilaisuatumatakuliah, makamahasiswatersebuttidakmengikutiujianakhiruntukmatakuliahtersebut.” adalahcontohdaripasangankalimatdiatasdankeduanyabernilaitrue. Akantetapikeduanyatidakvalid.

  7. Bahasa • Sepertihalnyabahasapadaumumnya, makalogikaproposisionalterdiridarikalimat-kalimat (sentences), khususnyakalimatabstrak (abstract sentence). • Aturansintaktik (syntactic rules) menerangkantatacarapembentukankalimatdalamlogikaproposisional ( pengertiannyasesuaidenganaturansintaktikdalamsetiapbahasapemrograman (programming language) ).

  8. Bahasa(propositions) • Kalimat-kalimatdalam (bahasa) logikaproposisionaldibentukdarisimbol-simbol, yang disebutproposisi (propositions). Simbol-simbol yang dimaksuddikelompokkanmenjadidua, yaitu : • Simbol-simbolkebenaran (truth symbols) truedanfalse • Simbol-simbolproposisional (propositional symbols) P, Q, R, S, P1, Q1, R1, S1, P2, Q2, R2, S2, ... (huruf-hurufbesarP, Q, R,atauS, danmungkindenganindeks-indeksnumerik).  • Dalampembicaraantidakresmi, huruf-hurufskripE, F, G, danH, danmungkindengansubskrip (indeks) numerikakandigunakanuntukmenyatakankalimat.

  9. Bahasa (Kalimat) • Kalimat-kalimatdalamlogikaproposisionaldibangundariproposisi-proposisidenganmenerapkanpropositional connectives : not, and, or, if-then, if-and-only-if, if-then-else • Kalimatdibentukmenurutaturan-aturan (rules) berikut : • setiapproposisi, yaitusuatusimbolkebenaranatausuatusimbolproposisimerupakankalimat. • apabilaFkalimat, makademikianjuganegasi (negation) nya (notF). • apabilaF danGkalimat, makademikianjugakonjungsi (conjunction) nya, yaitu (FandG), selanjutnyaFmaupunGdisebutconjunctsdari (FandG).

  10. Kalimat (CONT) • Kalimatdibentukmenurutaturan-aturan (rules) berikut : • apabilaFdanGkalimat, makademikianjugadisjungsi (disjunction) nya, yaitu(ForG), selanjutnyaFmaupunGdisebutdisjunctsdari(ForG). • apabilaFdanGkalimat, makademikianjugaimplikasi (implication) nya, yaitu (ifFthenG). SelanjutnyaFdisebutantecedentdanGdisebutconsequent dari (ifFthenG). Kalimat (ifGthen F) disebutconversedarikalimat (ifFthenG). • apabilaFdanGkalimat, makademikianjugaekuivalensi (equivalence) nya, yaitu(F if and only ifG), selanjutnyaFdisebutsisi-kiri (left-hand side) danGdisebutsisi-kanan (right-hand side) dari(F if and only if). G • apabilaF, Gdan H kalimat, makademikianjugakondisional (conditional) nya, yaitu (ifFthenGelseH). SelanjutnyaF, G, dan H masing-masingdisebutklausa-if (if-clause), klausa-then (then-clause), danklausa-else (else-clause) darikondisional (ifFthenG elseH).

  11. Kalimat (Contoh-contoh) • Ekspresiberikut E : ((not(P or Q)) if and only if ((not P) and (not Q))) merupakankalimat (sentence), karena PdanQ keduanyamerupakankalimat, jadi (P or Q), (not P), dan(not Q) merupakankalimat, sehingga (not (P or Q)) and ((not P) and (not Q)) merupakankalimat, jadiekspresiE, ((not(P or Q)) if and only if ((not P) and (not Q))), merupakankalimat.

  12. Notasi (not (P and (not Q))) not (P or Q) if and only if (not P) and (not Q) (if ((P or Q) and (if Q then R)) then (if (P and Q) then (not R)))

  13. Notasi (cont) (if ((P or Q) and (if Q then R)) then (if (P and Q) then (not R))) bisa ditulis sebagai berikut :

  14. Notasi(konvensional) ((~(P  Q))  ((~P)  (~Q)), dan (((P  Q)  (Q  R))  ((P  R)  (~R)))

  15. Nilai (arti) sebuahKalimat • Memperlihatkan bagaimana memberi (atau memasang) nilai-nilai kebenaran (truth values), true atau false, ke kalimat logika proposisional. • Apakah nilai kebenaran suatu kalimat seperti (P or (not Q)) adalah true atau false jika diketahui apakah nilai-nilai kebenaran dari simbol-simbol proposisional P dan Q itu sendiri true atau false. • Informasi ini disediakan oleh suatu interpretation.

  16. Interpretasi • Suatu interpretasi I merupakan suatu pemberian (assignment) suatu nilai kebenaran, true atau false, ke masing-masing himpunan simbol-simbol proposisional; interpretasi kosong (empty interpretation) tidak memberi nilai kebenaran ke suatu simbol proposisional manapun. • Untuk sebarang kalimat F, suatu interpretasi I dikatakan sebagai interpretasi untuk (interpretation for) F jika I memberi suatu nilai kebenaran, true atau false, ke masing-masing simbol proposisional dari F. • Sebagai contoh, perhatikan kalimat F : P or (not Q) • Salah satu interpretasi untuk F memberi nilai false keP dan nilai true ke Q, yaitu :

  17. Interpretasi (cont) • Interpretasi lain untuk F adalah : Selanjutnya bisa dikatakan bahwa P bernilai false dan Qbernilai true di bawah (under) I1dan P bernilai false dan Q bernilai falseunder I2.

  18. Aturan-aturanSemantik • Menjelaskanbagaimanacaramenentukannilaikebenaransuatukalimat (sentence), atauaturan-aturan (rules) apasaja yang diperlukanuntukmenentukannilaikebenarandarisuatukalimat.

  19. Aturan-aturanSemantik (cont) • Misal E suatu kalimat dan Imerupakan suatu interpretasi untuk E. Maka nilai kebenaran dari E (dan semua kalimat-kalimat bagiannya) di bawah Iditentukan dengan menerapkan secara berulang-ulang aturan-aturan semantik berikut : • aturan proposisi nilai kebenaran dari masing-masing simbol proposisional P, Q, R, ... dalam Esama dengan nilai kebenaran yang diberikan oleh I pada simbol tersebut.

  20. Aturan-aturanSemantik (cont) • aturan true kalimattruebernilaitrue underI. • aturan false kalimatfalsebernilaifalseunderI. • aturan not negasi (negation) dariF (yaitu, not F)bernilaitruejikaFfalse, danbernilaifalsejikaFtrue. • aturan and konjungsi (conjunction) (yaitu, Fand G)bernilaitrue jikakeduaFdanGbernilaitrue, sebaliknyabernilaifalse (yaitu, jikaFfalseatauGfalse). • aturan or disjungsi(disjunction)(yaitu, For G)bernilaitruejikaFtrueatauGtrue, dansebaliknyabernilaifalse (yaitu, FdanG Gbernilaifalse).

  21. Aturan-aturanSemantik (cont) • aturan if-then implikasi (implication) (yaitu, ifFthen G) bernilai true jika Ffalse atau Gtrue, dan sebaliknya bernilai false (yaitu, jika Ftrue dan Gfalse). • aturan if-and-only-if ekuivalensi (equivalence) (yaitu, Fif and only ifG) bernilai true jika nilai kebenaran F sama dengan nilai kebenaran G (yaitu, jika F dan G keduanya bernilai true atau jika F dan G keduanya bernilai false), dan sebaliknya bernilai false (yaitu, jika Ftrue dan Gfalse atau jika Ffalse dan Gtrue). • aturan if-then-else nilai kebenaran dari kondisional (conditional) (yaitu, if FthenGelseH) adalah sama dengan nilai kebenaran dari G jika F bernilai true, dan sama dengan nilai kebenaran dari H jika F bernilai false.

  22. Sifat-sifatKalimat • SuatukalimatF dikatakanvalidjikaFbernilaitruedibawah (under) setiapinterpretasiuntukF . Kalimatvaliddalamlogikaproposisionalkadang-kadangdisebuttautologies. • SuatukalimatFdikatakansatisfiablejikaFbernilaitruedibawahsuatuinterpretasiuntukF . • SuatukalimatFdikatakancontradictory (atauunsatisfiable) jikaFbernilaifalsedibawahsetiapinterpretasiuntukF .

  23. Sifat-sifatKalimat • Suatu kalimat Fimplies kalimat G jika untuk setiap interpretasi I sekaligus untuk F dan G. Jika F bernilai true di bawah I maka G juga bernilai true di bawah I. • Dua kalimat F dan G dikatakan equivalent jika di bawah setiap interpretasiIuntuk F dan G, F mempunyai nilai kebenaran sama dengan nilai kebenaran G • Suatu kumpulan kalimat-kalimat F1, F2, ... dikatakan consistent jika ada beberapa interpretasi untuk F1, F2, ... di mana masing-masing Fi bernilai true.

  24. Catatan(satisfiabledanvalid) • SuatukalimatFsatisfiableprecisely whennegasinya (notF) tidak valid. • Diketahuibahwa Fsatisfiable precisely when (dengandefinisisatisfiabilitas) bernilaitrue dibawahsuatuinterpretasiI precisely when (denganaturan not) (notF) bernilaifalsedibawahsuatuinterpretasiI precisely when (dengandefinisivaliditas) (notF) tidakvalid.

More Related