Presentasi sedang didownload. Silahkan tunggu

Presentasi sedang didownload. Silahkan tunggu

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

Presentasi serupa


Presentasi berjudul: "Pertemuan 2 Konsep dalam Teori Otomata dan Pembuktian Formal Teori Bahasa dan Otomata (KOM208 ) SKS: 3(3-0)"— Transcript presentasi:

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

2 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

3 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.

4 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)

5 Contoh 5 (lanjutan) (  ) Jika x  E maka x  F LangkahPernyataanJustifikasi 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) (3) dan definisi union 6 x  (R  S)  (R  T) (4), (5), dan definisi interseksi

6 Contoh 5 (Lanjutan) (  ) Jika x  F maka x  E LangkahPernyataanJustifikasi 1 x  (R  S)  (R  T) Diberikan (hipotesa) 2 x  (R  S) (1) dan definisi interseksi 3 x  (R  T) (1) dan definisi interseksi 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

7 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.

8 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”.

9 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.

10 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.

11 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 2 x  x 2, memiliki bentuk kontrapositif : Jika tidak 2 x  x 2 maka tidak x  4 atau Jika 2 x < x 2 maka x < 4

12 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.

13 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).

14 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.

15 Contoh 7 Berikut adalah definisi rekursif dari tree: –Basis : Sebuah node tunggal adalah tree, dan node tersebut adalah akar dari tree. –Induksi : Jika T 1, T 2,...,T k 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 T 1, T 2,...,T k. –Tambahkan edge-edge dari node N ke akar-akar dari setiap tree T 1, T 2,...,T k.

16 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.

17 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 Y 1, Y 2,...,Y k. –Asumsikan bahwa pernyataan S(Y 1 ), S(Y 2 ),...,S(Y k ) dan gunakan pernyataan ini untuk membuktikan S(x).

18 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.

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

20 Konsep dalam Teori Otomata (lanjutan) Panjang dari string adalah banyaknya posisi untuk simbol dalam string. Contoh, memiliki panjang 5. Umumnya panjang dari string adalah banyaknya simbol dalam string. Pernyataan tersebut tidak sepenuhnya benar, sebagai contoh terdapat 2 simbol dalam string 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.

21 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.

22 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 .

23 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 ...

24 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 ...  * =  +  {  }.

25 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 = a 1 a 2... a i dan y adalah string yang disusun oleh j simbol, y = b 1 b 2... b j maka xy adalah string dengan panjang i + j, xy = a 1 a 2... a i b 1 b 2... b j Contoh: x = dan y = 110, maka xy = dan yx = Untuk suatu string w, persamaan  w = w  = w dipenuhi. Bahwa  adalah identitas untuk perangkaian.

26 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.

27 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.

28 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, ,...} Himpunan string-string dari 0 dan 1 dengan banyaknya 0 sama dengan banyaknya 1. { , 01, 10, 0011, 0101, } 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   {  }

29 Contoh 11 Berikut adalah contoh bahasa pada  = {a, b}: 1.L 1 = { , a, aa, aab} 2.L 2 = {x  {a, b}*  |x| ≤ 8} 3.L 3 = {x  {a, b}*  |x| adalah ganjil} 4.L 4 = {x  {a, b}*  n a (x) ≥ n b (x)} 5.L 5 = {x  {a, b}*  |x| ≥ 2, x diawali dan diakhiri dengan b}

30 Notasi lain dari Bahasa (1) 1.Berdasarkan string-string yang dikonstruksi di dalamnya. Contoh: L 1 = {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.

31 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.

32 Notasi lain dari Bahasa (3) Definisi rekursif dari bahasa (L AE ) yang string-string di dalamnya berupa ekspresi aljabar dengan tanda kurung penuh (sepasang) untuk setiap operator dengan  = {i, (, ), +,  }. i  L AE Untuk suatu x, y  L AE, (x+y) dan (x  y) adalah anggota dari L AE. Tidak ada string dalam L AE 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).

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

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


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

Presentasi serupa


Iklan oleh Google