Pertemuan 2 Konsep dalam Teori Otomata dan Pembuktian Formal

Slides:



Advertisements
Presentasi serupa
Pertemuan 4 Finite Automata
Advertisements

Pertemuan 14 Pengantar ke Mesin Turing
Pertemuan 6 Ekspresi dan Bahasa Regular
Session 10 Context-free grammar
Definisi Rekursif Ada kalanya kita mengalami kesulitan untuk mendefinisikan suatu obyek secara eksplisit. Mungkin lebih mudah untuk mendefinisikan obyek.
Pertemuan 12 Bentuk Normal untuk Grammar Bebas Konteks
Pertemuan 9 Sifat-sifat Bahasa Regular
Induksi Matematika.
Oleh: BAGUS ADHI KUSUMA, ST
PENDAHULUAN : ALJABAR ABSTRAK
BAB II HIMPUNAN.
Session 11 Parse Tree, Application of Parse Tree, and Ambiguity
Session 12 Pushdown Automata
GRUP SIKLIK.
Himpunan Pertemuan Minggu 1.
Session 5 Finite Automata
Pertemuan 3 Finite Automata
Pertemuan 2 FINITE AUTOMATA (DFA & NFA)‏
Session 7 Regular Expression and Language
Himpunan.
FITRI UTAMININGRUM, ST, MT
MATEMATIKA BISNIS HIMPUNAN.
Modul Matematika Diskrit
OPERATOR Teknik Informatika Universitas Muhammadiyah Malang 2011 Pemrogramman Terstruktur.
Logika Matematika Konsep Dasar
Pertemuan 3 BAHASA REGULAR
Yenni astuti, S.T., M.Eng Teori Bahasa Yenni astuti, S.T., M.Eng
LANGUAGES.
MATEMATIKA BISNIS BY : ERVI COFRIYANTI.
Matematika Komputasi.
2. Mesin Turing (Bagian 2) IF5110 Teori Komputasi Oleh: Rinaldi Munir
Matematika Diskrit bab 2-Himpunan
Matematika Diskrit bab 2-Himpunan
Induksi Matematika.
BAB VII ALJABAR BOOLEAN waniwatining.
Induksi Matematika Nelly Indriani Widiastuti Teknik Informatika UNIKOM.
Teori-Bahasa-dan-Otomata
Oleh : Devie Rosa Anamisa
Matematika Diskrit bab 2-Himpunan
Logika Matematika Teori Himpunan
Bahan kuliah Agribisnis study club Frogram Study Agribisnis
Matematika Diskrit bab 2-Himpunan
Matematika Diskrit Himpunan Sri Nurhayati.
BAB 4 INDUKSI MATEMATIKA.
Matematika Diskrit bab 2-Himpunan
MATEMATIKA EKONOMI Pertemuan 2: Himpunan dan Sistem Bilangan
Logika Matematika Bab 5: Induksi Matematika
BAB II HIMPUNAN.
PENGERTIAN HIMPUNAN Himpunan merupakan kumpulan objek-objek (benda). Objek-objek yang dimaksud di sini adalah elemen atau anggota himpunan tersebut CARA.
Mata Kuliah: MATEMATIKA DISKRIT Harni Kusniyati
PENGERTIAN HIMPUNAN Himpunan merupakan kumpulan objek-objek (benda). Objek-objek yang dimaksud di sini adalah elemen atau anggota himpunan tersebut CARA.
BAB II HIMPUNAN.
HIMPUNAN.
MATEMATIKA EKONOMI Pertemuan 2: Himpunan dan Sistem Bilangan
2. Mesin Turing (Bagian 2) IF5110 Teori Komputasi Oleh: Rinaldi Munir
PENGERTIAN HIMPUNAN Himpunan merupakan kumpulan objek-objek (benda). Objek-objek yang dimaksud di sini adalah elemen atau anggota himpunan tersebut CARA.
MATEMATIKA EKONOMI Pertemuan 2: Himpunan dan Sistem Bilangan
PENDAHULUAN : ALJABAR ABSTRAK
Matematika Diskrit TIF (4 sks) 3/9/ /5/2010.
Matematika Diskrit Himpunan Sri Nurhayati.
Kuis 1 Tekom MDS 9 September 2015.
Kelas 7 SMP Marsudirini Surakarta
Logika Matematika Teori Himpunan
Tinjauan Instruksional Khusus:Mahasiswa akan dapat menjelaskan cara kerja Deterministic Finite Automata (DFA),Non-Deterministic Finite Automata (NDFA),Non.
Logika Matematika Himpunan Sri Nurhayati.
GRUP SIKLIK.
PENGERTIAN HIMPUNAN Himpunan merupakan kumpulan objek-objek (benda). Objek-objek yang dimaksud di sini adalah elemen atau anggota himpunan tersebut CARA.
BAB 1 HIMPUNAN.
BAB 1 HIMPUNAN.
Matematika Diskrit bab 2-Himpunan Himpu nan Oleh : Sri Supatmi,S.Kom.
Transcript presentasi:

Pertemuan 2 Konsep dalam Teori Otomata dan Pembuktian Formal Teori Bahasa dan Otomata (KOM208) SKS: 3(3-0)

TIK, Subtopik dan Waktu Penyajian Tinjauan Instruksional Khusus: Mahasiswa mengetahui gambaran umum teori otomata dan akan dapat menjelaskan metode-metode pembuktian formal. Subtopik: Pengantar Finite Automata Representasi struktural Pembuktian Deduktif Pembuktian menggunakan teori himpunan, kontrapositif, kontradiksi dan counterexample. Pembuktian Induktif Alfabet, string dan bahasa Waktu penyajian: 2 x 150 menit

Pembuktian Menggunakan Teori Himpunan Jika E dan F menyatakan himpunan, pernyataan E = F berarti bahwa himpunan yang dinyatakan adalah sama. Bahwa setiap elemen dalam himpunan yang dinyatakan oleh E adalah dalam himpunan yang dinyatakan oleh F, dan sebaliknya.

Contoh 5 Buktikan bahwa hukum distributif berikut benar: R  (S  T) = (R  S)  (R  T) Bukti: Dalam pernyataan di atas, dinyatakan E = R  (S  T) F = (R  S)  (R  T)

Contoh 5 (lanjutan) () Jika x  E maka x  F Langkah Pernyataan Justifikasi 1 x  R  (S  T) Diberikan (hipotesa) 2 x  R atau x  S  T (1) dan definisi union 3 x  R atau (x  S dan x  T) (2) dan definisi interseksi 4 x  (R  S) (3) dan definisi union 5 x  (R  T) 6 x  (R  S)  (R  T) (4), (5), dan definisi interseksi

Contoh 5 (Lanjutan) () Jika x  F maka x  E Langkah Pernyataan Justifikasi 1 x  (R  S)  (R  T) Diberikan (hipotesa) 2 x  (R  S) (1) dan definisi interseksi 3 x  (R  T) 4 x  R atau (x  S dan x  T) (2),(3) dan penalaran tentang union 5 x  R atau x  S  T (4) dan definisi interseksi 6 x  R  (S  T) (5), dan definisi union

Pembuktian Menggunakan Kontradiksi Dimulai dengan mengasumsikan hipotesi H dan negasi dari kesimpulan C. Lengkapi pembuktian dengan menunjukkan bahwa sesuatu pernyataan diketahui salah setelah diturunkan secara logis dari H dan bukan C.

Contoh 6 Buktikan dengan menggunakan kontradiksi bahwa teorema berkut benar: Misal S adalah subset berhingga dari himpunan tak berhingga U, Misalkan T adalah komplemen dari S terhadap U, Maka T tak berhingga. Hipotesis: H adalah “U adalah himpunan tak hingga”, “S adalah subset berhingga dari U”, dan “T adalah komplemen dari S terhadap U”. Kesimpulan: C adalah “ T adalah tak berhingga”.

Contoh 6 (Lanjutan) Bukti dengan kontradiksi: Dengan menggunakan kontradiksi, kita asumsikan “bukan C” yaitu asumsikan bahwa T adalah berhingga. Telah diasumsikan bahwa S dan T adalah berhingga karena S dan T berhingga T adalah komplemen dari S terhadap U, maka haruslah U berhingga. Tetapi karena U dalam hipotesa dinyatakan tak hingga, dan himpunan tidak dapat berhingga dan tak berhingga sekaligus, maka kita telah membuktikan pernyataan logis salah.

Pembuktian dengan Counterexample Kadang-kadang kita ingin membuktikan bahwa suatu pernyataan bukan merupakan teorema, Seringkali lebih mudah membuktikan bahwa suatu pernyataan bukan teorema daripada membuktikan bahwa suatu pernyataan adalah teorema. Contoh 7: Apakah pernyataan berikut benar Semua bilangan prima adalah ganjil. Bukti: 2 adalah bilangan prima, tetapi 2 adalah genap. Dalam pembuktian tersebut, kita mencari counterexample yang mengakibatkan pernyataan tidak benar.

Pembuktian dengan Kontrapositif Bentuk kontrapositif dari pernyataan “IF H THEN C” adalah “IF not C THEN not H”. Pernyataan dan kontrapositifnya adalah keduanya benar atau keduanya salah sehingga kita dapat membuktikan salah satunya untuk membuktikan yang lain. Teorema dalam Contoh 3: Jika x  4 maka 2x  x2, memiliki bentuk kontrapositif : Jika tidak 2x  x2 maka tidak x  4 atau Jika 2x < x2 maka x < 4

Pembuktian Induktif Pembuktian induktif biasanya digunakan dalam pembuktian yang melibatkan objek yang didefinisikan secara rekursif. Pembuktian induktif yang sering dijumpai berhubungan dengan integer. Dalam teori otomata, pembuktian induktif juga diperlukan untuk konsep yang didefinisikan secara rekursif seperti tree dan ekspresi regular.

Induksi pada integer Anggap diberikan pernyataan S(n) untuk dibuktikan dimana n adalah integer. Pendekatan umum untuk membuktikan S(n) benar adalah membuktikan Basis, dimana kita menunjukkan S(i) untuk integer i tertentu, biasanya i = 0 atau i = 1. Langkah induktif, dimana kita mengasumsikan n  i, dimana i adalah integer basis dan tunjukkan bahwa “jika S(n) maka S(n + 1).

Induksi Struktural Dalam teori otomata, terdapat beberapa struktur yang didefinisikan secara rekursif, sebagai contoh tree dan ekspresi. Seperti induksi integer, semua definisi rekursif memiliki basis case, dimana satu atau lebih struktur dasar didefinisikan, dan langkah induktif, dimana struktur yang kompleks didefinisikan dalam bentuk struktur yang didefinisikan sebelumnya.

Contoh 7 Berikut adalah definisi rekursif dari tree: Basis : Sebuah node tunggal adalah tree, dan node tersebut adalah akar dari tree. Induksi : Jika T1, T2,...,Tk adalah tree Tree yang baru dapat dibentuk dengan cara sebagai berikut : Mulai dengan node baru N, yang merupakan akar dari tree. Tambahkan salinan dari semua tree T1, T2,...,Tk. Tambahkan edge-edge dari node N ke akar-akar dari setiap tree T1, T2,...,Tk.

Contoh 8 Berikut adalah definisi rekursif dari ekspresi yang menggunakan operator aritmatik  dan , dimana operand-nya adalah bilangan atau variabel. Basis : Bilangan atau huruf (yaitu variabel) adalah ekspresi. Induksi : Jika E dan F adalah ekspresi, maka E + F, E * F dan (E) juga ekspresi. Contoh, 2 dan x adalah ekspresi dari basis, langkah induktif menyatakan bahwa x + 2, (x + 2) dan 2 * (x + 2) adalah ekspresi.

Contoh 8 (lanjutan) Bukti: Misalkan S(x) adalah pernyataan tentang struktur x yang didefinisikan oleh definisi rekursif tertentu. Basis: Buktikan S(x) untuk struktur basis x. Langkah induktif: Ambil suatu struktur x berdasarkan definisi rekursif dibentuk dari Y1, Y2,...,Yk. Asumsikan bahwa pernyataan S(Y1), S(Y2) ,...,S(Yk) dan gunakan pernyataan ini untuk membuktikan S(x).

Konsep dalam Teori Otomata Alphabet Sebuah alphabet adalah himpunan berhingga dan tak kosong dari simbol. Alphabet disimbolkan oleh . Contoh:  = {0, 1} alphabet biner  = {a, b,..., z}, himpunan semua huruf kecil. Himpunan semua karakter ASCII.

Konsep dalam Teori Otomata (lanjutan) String Sebuah string (atau word) adalah deretan simbol berhingga yang dipilih dari alphabet. Contoh : 011011 dan 1111 adalah string dari alphabet biner  = {0, 1}. String kosong adalah string dimana tidak ada kemunculan simbol. String tersebut dinotasikan oleh .

Konsep dalam Teori Otomata (lanjutan) Panjang dari string adalah banyaknya posisi untuk simbol dalam string. Contoh, 01101 memiliki panjang 5. Umumnya panjang dari string adalah banyaknya simbol dalam string. Pernyataan tersebut tidak sepenuhnya benar, sebagai contoh terdapat 2 simbol dalam string 01101 yaitu 0 dan 1, tetapi terdapat 5 posisi untuk simbol, dan panjangnya adalah 5. Notasi standar untuk panjang string w adalah |w|. Contoh: |011| = 3 dan || = 0.

Konsep dalam Teori Otomata (lanjutan) x adalah sebuah substring dari string lain y jika ada string w dan z, keduanya dapat berupa string kosong, sedemikian sehingga y = wxz. Sebagai contoh, car adalah substring dari carry, car, vicar.

Konsep dalam Teori Otomata (lanjutan) Pangkat dari Alphabet Jika  adalah alphabet, dapat dinyatakan himpunan dari semua string dengan panjang tertentu dari alphabet tersebut dengan menggunakan notasi eksponensial. Kita mendefinisikan k sebagai himpunan dari string dengan panjang k, setiap string tersebut memiliki simbol dalam .

Konsep dalam Teori Otomata (lanjutan), Contoh 9 Perhatikan bahwa 0 = {}, untuk alphabet apapun. Bahwa  adalah string yang memiliki panjang 0. Jika  = {0, 1} maka 1 = {0, 1} 2 = {00, 01, 10, 11} 3 = {000, 001, 010, 011, 100, 101, 110, 111} dan seterusnya. Semua string pada alphabet  dinotasikan *. Contoh: {0,1}* = {, 0, 1, 00, 01, 10, 11, 000, ...} dan * = 0  1  2  ...

Konsep dalam Teori Otomata (lanjutan) Kadang-kadang kita tidak ingin memasukkan string kosong dalam himpunan string. Himpunan string-string tak kosong dari alphabet  dinotasikan +. Dengan demikian : + = 1  2  3  ... * = +  {}.

Konsep dalam Teori Otomata (lanjutan) Perangkaian String (concatenation) Misalkan x dan y adalah string, maka xy menyatakan perangkaian dari x dan y, bahwa string dibentuk dengan membuat salinan dari x dan diikuti oleh salinan dari y. Jika x adalah string yang disusun oleh i simbol, x = a1a2 ... ai dan y adalah string yang disusun oleh j simbol, y = b1b2 ... bj maka xy adalah string dengan panjang i + j, xy = a1a2 ... aib1b2 ... bj Contoh: x = 01101 dan y = 110, maka xy = 01101110 dan yx = 11001101. Untuk suatu string w, persamaan w = w = w dipenuhi. Bahwa  adalah identitas untuk perangkaian.

Konsep dalam Teori Otomata (lanjutan) Bahasa Himpunan string-string yang semuanya dipilih dari *, dimana  adalah alphabet, dan L  *, maka L adalah bahasa pada . Perhatikan bahwa bahasa pada  tidak harus meliputi string-string dengan semua simbol dari . Dengan demikian, jika L adalah bahasa pada , diketahui bahwa L adalah bahasa pada alphabet yang merupakan superset dari . Bahasa umum dapat dipandang sebagai himpunan dari string.

Konsep dalam Teori Otomata (lanjutan), Contoh 10 Bahasa Inggris, yang merupakan koleksi dari kata-kata dalam bahasa Inggris yang benar. Kata-kata tersebut merupakan string pada alphabet yang mengandung semua huruf. Bahasa C atau bahasa pemrograman lainnya. Dalam bahasa tersebut, program yang benar adalah subset dari string-string yang mungkin yang dibentuk dari alphabet. Alphabet tersebut adalah subset dari karakter-karakter ASCII.

Konsep dalam Teori Otomata (lanjutan) Contoh bahasa dalam teori otomata: Bahasa dari semua string yang berisi n buah 0 dan diikuti oleh n buah 1, untuk n  0: {, 01, 0011, 000111, ...} Himpunan string-string dari 0 dan 1 dengan banyaknya 0 sama dengan banyaknya 1. {, 01, 10, 0011, 0101, 1001 ...} Himpunan bilangan biner yang memiliki nilai prima {10, 11, 101, 111, 1011, ...} * adalah bahasa untuk alphabet   adalah bahasa kosong, merupakan bahasa pada suatu alphabet. {}, bahasa yang hanya mengandung string kosong, juga merupakan bahasa pada suatu alphabet. Perhatikan bahwa   {}

Contoh 11 Berikut adalah contoh bahasa pada  = {a, b}: L1 = {, a, aa, aab} L2 = {x  {a, b}* |x| ≤ 8} L3 = {x  {a, b}* |x| adalah ganjil} L4 = {x  {a, b}* na(x) ≥ nb(x)} L5 = {x  {a, b}* |x| ≥ 2, x diawali dan diakhiri dengan b}

Notasi lain dari Bahasa (1) Berdasarkan string-string yang dikonstruksi di dalamnya. Contoh: L1 = {ab, bab}*  {b}{bb}* 2. Sifat atau karakteristik dari string dalam L, Contoh: L = {byb y  {a, b}*}. 3. Definisi rekursif Contoh: Definisi rekursif dari L*:   L* Untuk suatu x  L* dan suatu y  L, xy  L* Tidak ada string dalam L* selain yang diperoleh menggunakan aturan 1 dan 2.

Notasi lain dari Bahasa (2) Definisi rekursif untuk bahasa pal dari string-string palindrom pada :   pal Untuk suatu a  , a  pal Untuk suatu x  , dan suatu a  , axa a  pal Tidak ada string dalam pal selain yang diperoleh menggunakan aturan 1, 2 dan 3.

Notasi lain dari Bahasa (3) Definisi rekursif dari bahasa (LAE) yang string-string di dalamnya berupa ekspresi aljabar dengan tanda kurung penuh (sepasang) untuk setiap operator dengan  = {i, (, ), +, }. i  LAE Untuk suatu x, y  LAE, (x+y) dan (xy) adalah anggota dari LAE. Tidak ada string dalam LAE selain yang diperoleh menggunakan aturan 1 dan 2. Contoh string dalam bahasa tersebut: i, (i+i), (ii), ((i+i)i), ((i(ii))+i).

Perangkaian Bahasa Jika L1 dan L2 adalah bahasa, L1 dan L2  *. Perangkaian dari L1 dan L2 dinotasikan L1L2 = {xy | x  L1 dan y  L2}. Sebagai contoh, {hope, fear}{less, fully} = {hopeless, hopefully, fearless, fearfully}. Untuk L adalah bahasa, L{} = {}L karena untuk setiap x  L, x = x = x.

Daftar Pustaka John E. Hopcroft, Rajeev Motwani, Jeffrey D. Ullman. 2001. Introduction to Automata Theory, Languange, and Computation. Edisi ke-2. Addison-Wesley Martin J. C. 2003. Introduction to Languanges and The Theory of Computation. McGraw-Hill.