Tugas tba kelompok 1 kelas b
-
Upload
robbie-akachopa -
Category
Documents
-
view
194 -
download
4
description
Transcript of Tugas tba kelompok 1 kelas b
![Page 1: Tugas tba kelompok 1 kelas b](https://reader034.fdocuments.net/reader034/viewer/2022052123/54553298b1af9fb66e8b4771/html5/thumbnails/1.jpg)
Reguler
Teori Bahasa dan Automata (TBA)Ekspresi
![Page 2: Tugas tba kelompok 1 kelas b](https://reader034.fdocuments.net/reader034/viewer/2022052123/54553298b1af9fb66e8b4771/html5/thumbnails/2.jpg)
Pengertian Ekspresi Reguler
Ekspresi Reguler adalah :• notasi yang digunakan dalam manipulasi teks dan
data, atau ;• notasi fleksibel dan ringkas untuk menemukan dan
menggantikan pola teks
Sebuah bahasa dinyatakan reguler jika terdapat finite state automata (FSA) yang dapat menerimanya.
![Page 3: Tugas tba kelompok 1 kelas b](https://reader034.fdocuments.net/reader034/viewer/2022052123/54553298b1af9fb66e8b4771/html5/thumbnails/3.jpg)
Penerapan Ekspresi Reguler
Bahasa yang diterima oleh suatu FSA bisa dinyatakan secara sederhana dengan Ekspresi Reguler (ER).
ER memberikan suatu pola (pattern) atau template untuk untai/string dari suatu bahasa.
Untai yang menyusun bahasa reguler akan cocok (match) dengan pola bahasa itu.
![Page 4: Tugas tba kelompok 1 kelas b](https://reader034.fdocuments.net/reader034/viewer/2022052123/54553298b1af9fb66e8b4771/html5/thumbnails/4.jpg)
Penerapan Ekspresi Reguler
Beberapa penerapan Ekspresi Reguler yang nampak biasa digunakan untuk :
• Parsing• Validasi Input• Find and Replace
![Page 5: Tugas tba kelompok 1 kelas b](https://reader034.fdocuments.net/reader034/viewer/2022052123/54553298b1af9fb66e8b4771/html5/thumbnails/5.jpg)
Penerapan Ekspresi Reguler
Contoh penerapan yang lain adalah : • Pembatasan data masukan yang diperkenankan,
misalnya suatu field masukan hanya menerima input bilangan (0..9)
![Page 6: Tugas tba kelompok 1 kelas b](https://reader034.fdocuments.net/reader034/viewer/2022052123/54553298b1af9fb66e8b4771/html5/thumbnails/6.jpg)
Notasi Ekspresi Reguler
• Clean Closure (*) → termasuk hampa• Positive Closure (+) → tanpa hampa• Union ( ∪ atau + ) → berarti atau• Concatenation ( . ) → gabungan, notasi bisa tidak
ditulis
( ) Ž ) ,Ajc_l Ajmqspc Nmqgrgtc Ajmqspc Sl gml Sl gml Aml a_rcl _rgml
![Page 7: Tugas tba kelompok 1 kelas b](https://reader034.fdocuments.net/reader034/viewer/2022052123/54553298b1af9fb66e8b4771/html5/thumbnails/7.jpg)
Notasi Ekspresi Reguler
Clean Closure ( * ) => ( baca : asterisk )"karakter bisa tidak muncul, bisa juga muncul berhingga kali ( 0 - n )".
Contoh :• ER : ab*c => ac, abc, abbc, abbbc, abbbbc• ER : 010* => 01, 010, 0100, 01000, 010000• ER : a*dc => dc, adc, aadc, aaadc, aaaadc
![Page 8: Tugas tba kelompok 1 kelas b](https://reader034.fdocuments.net/reader034/viewer/2022052123/54553298b1af9fb66e8b4771/html5/thumbnails/8.jpg)
Notasi Ekspresi Reguler
Positive Closure (+) => ( + pada posisi superscript )"karakter muncul minimal satu kali, hingga n kali.(1-n)".
Contoh :• ER : a+d => ad, aad, aaad, aaaad, aaaaad• ER : adc+ => adc, adcc, adccc, adcccc, adccccc• ER : 01+0 => 010, 0110, 01110, 011110, 0111110
![Page 9: Tugas tba kelompok 1 kelas b](https://reader034.fdocuments.net/reader034/viewer/2022052123/54553298b1af9fb66e8b4771/html5/thumbnails/9.jpg)
Notasi Ekspresi Reguler
Union ( ∪ atau + ) "union berarti atau, akan memilih salah satu dari karakter yang di hubungkan dengan tanda union".
Contoh :• ER : a ∪ b => a, b• ER : a* ∪ b => b, a, aa, aaa, aaaa, aaaaa• ER : 01* + 0 => 0, 01, 011, 0111, 01111
![Page 10: Tugas tba kelompok 1 kelas b](https://reader034.fdocuments.net/reader034/viewer/2022052123/54553298b1af9fb66e8b4771/html5/thumbnails/10.jpg)
Notasi Ekspresi Reguler
Concatenation ( . ) (Konkatenasi, titik tidak ditulis)"karakter dipisahkan oleh tanda titik, namun biasanya tanda titik tersebut tidak ditulis."
Contoh :ER : a.b. => abER : a.b.c. => abcER : 0.1.0. => 010
![Page 11: Tugas tba kelompok 1 kelas b](https://reader034.fdocuments.net/reader034/viewer/2022052123/54553298b1af9fb66e8b4771/html5/thumbnails/11.jpg)
Hubungan Ekspresi Reguler dan FSA
• Untuk setiap ekspresi reguler ada satu Non-deterministic Finite Automata dengan transisi є (NFA є-move) yang ekuilvalen
• Sementara untuk setiap Deterministic Finite Automata ada satu Ekspresi Reguler dari bahasa yang diterima oleh Deterministic Finite Automata.
Sederhananya, "kita bisa membuat suatu Non-deterministic Finite Automata dari suatu ekspresi reguler".
![Page 12: Tugas tba kelompok 1 kelas b](https://reader034.fdocuments.net/reader034/viewer/2022052123/54553298b1af9fb66e8b4771/html5/thumbnails/12.jpg)
Hubungan Ekspresi Reguler dan FSA
NFA є-move untuk ER : ab
NFA є-move untuk ER : a ∪ b
![Page 13: Tugas tba kelompok 1 kelas b](https://reader034.fdocuments.net/reader034/viewer/2022052123/54553298b1af9fb66e8b4771/html5/thumbnails/13.jpg)
Hubungan Ekspresi Reguler dan FSA
FA untuk ER : ab
FA untuk ER : a ∪ b
![Page 14: Tugas tba kelompok 1 kelas b](https://reader034.fdocuments.net/reader034/viewer/2022052123/54553298b1af9fb66e8b4771/html5/thumbnails/14.jpg)
Hubungan Ekspresi Reguler dan FSA
Contoh-Contoh NFA untuk ER
NFA untuk ER : 010*
NFA untuk ER : 01*0
![Page 15: Tugas tba kelompok 1 kelas b](https://reader034.fdocuments.net/reader034/viewer/2022052123/54553298b1af9fb66e8b4771/html5/thumbnails/15.jpg)
Hubungan Ekspresi Reguler dan FSA
Contoh-Contoh NFA untuk ER
NFA untuk ER : 0 ( 1 ∪ 0 )*
NFA untuk ER : 0 ( 1 ∪ 0 )
![Page 16: Tugas tba kelompok 1 kelas b](https://reader034.fdocuments.net/reader034/viewer/2022052123/54553298b1af9fb66e8b4771/html5/thumbnails/16.jpg)
Hubungan Ekspresi Reguler dan FSA
Contoh-Contoh NFA untuk ER
NFA untuk ER : 0*10*
NFA untuk ER : a*
![Page 17: Tugas tba kelompok 1 kelas b](https://reader034.fdocuments.net/reader034/viewer/2022052123/54553298b1af9fb66e8b4771/html5/thumbnails/17.jpg)
Hubungan Ekspresi Reguler dan FSA
Contoh-Contoh NFA untuk ER
NFA untuk ER : a (ba)*
NFA untuk ER : (ab)*
![Page 18: Tugas tba kelompok 1 kelas b](https://reader034.fdocuments.net/reader034/viewer/2022052123/54553298b1af9fb66e8b4771/html5/thumbnails/18.jpg)
Hubungan Ekspresi Reguler dan FSA
EkspresiReguler
NFA
NFAє-moveDFA
![Page 19: Tugas tba kelompok 1 kelas b](https://reader034.fdocuments.net/reader034/viewer/2022052123/54553298b1af9fb66e8b4771/html5/thumbnails/19.jpg)
Membuat DFA dari Ekspresi Reguler
Langkah yang digunakan Untuk membuat Deterministic Finite Automata dari Ekspresi Reguler adalah :
• Membuat Ekspresi Reguler• Membuat Mesin NFA• Membuat Tabel Transisi untuk NFA• Membuat Mesin DFA• Melakukan Pengecekan DFA
ER NFA Tabel Transisi DFA Cek-DFA
![Page 20: Tugas tba kelompok 1 kelas b](https://reader034.fdocuments.net/reader034/viewer/2022052123/54553298b1af9fb66e8b4771/html5/thumbnails/20.jpg)
Membuat DFA dari Ekspresi Reguler
Contoh Permasalahan :"kita ingin membuat DFA yang menerima bahasa yang berupa semua string yang berakhiran dengan '00'. Diketahui ∑ = ( 0, 1 )".
Cara Penyelesaian :• Pertama, kita buat Ekspresi Reguler-nya :
( 0 Ž 1 )* 00
![Page 21: Tugas tba kelompok 1 kelas b](https://reader034.fdocuments.net/reader034/viewer/2022052123/54553298b1af9fb66e8b4771/html5/thumbnails/21.jpg)
Membuat DFA dari Ekspresi Reguler
• Kedua, Membuat Mesin NFA
NFA untuk ER : ( 0 ∪ 1 )* 00
![Page 22: Tugas tba kelompok 1 kelas b](https://reader034.fdocuments.net/reader034/viewer/2022052123/54553298b1af9fb66e8b4771/html5/thumbnails/22.jpg)
Membuat DFA dari Ekspresi Reguler
• Ketiga, Membuat Tabel Transisi untuk NFA
NFA untuk ER : ( 0 ∪ 1 )* 00
. /q0 { q0 , q1 } { q0 }
q1 { q2 } θq2 θ θ
![Page 23: Tugas tba kelompok 1 kelas b](https://reader034.fdocuments.net/reader034/viewer/2022052123/54553298b1af9fb66e8b4771/html5/thumbnails/23.jpg)
Membuat DFA dari Ekspresi Reguler
• Keempat, Membuat mesin DFA . /
q0 { q0 , q1 } { q0 }
q1 { q2 } θq2 θ θ
DFA untuk ER : ( 0 Ž 1 )* 00
![Page 24: Tugas tba kelompok 1 kelas b](https://reader034.fdocuments.net/reader034/viewer/2022052123/54553298b1af9fb66e8b4771/html5/thumbnails/24.jpg)
Membuat DFA dari Ekspresi Reguler
• Kelima, Melakukan Pengecekan DFA
DFA untuk ER : ( 0 Ž 1 )* 00
"Cek DFA yang sudah dibuat dengan melihat apakah untai/string dari hasil ER berikut bisa diterima atau tidak"
00, 100,000, 0100, 0000, 1100
![Page 25: Tugas tba kelompok 1 kelas b](https://reader034.fdocuments.net/reader034/viewer/2022052123/54553298b1af9fb66e8b4771/html5/thumbnails/25.jpg)
Review
1. Apa yang dimaksud dengan Ekspresi Reguler, FSA, NFA dan DFA ?
2. Bagaimana hubungan antara Ekspresi Reguler dengan FSA ?3. Sebutkan Himpunan String yang memenuhi :
ER : 10*(1+0)*11 !4. Tuliskan Himpunan String yang memenuhi NFA Berikut !
5. Buatlah DFA yang menerima bahasa berupa semua string, yang memuat minimal dua nol berurutan. Dik : ∑ = ( 0, 1 )
![Page 26: Tugas tba kelompok 1 kelas b](https://reader034.fdocuments.net/reader034/viewer/2022052123/54553298b1af9fb66e8b4771/html5/thumbnails/26.jpg)
Review (1)
1. Apa yang dimaksud dengan Ekspresi Reguler, FSA, NFA dan DFA ?
• Ekspresi Reguler adalah notasi yang digunakan dalam manipulasi teks dan data untuk menemukan dan menggantikan pola teks.
• FSA (Finite State Automata) adalah Model matematika yang dapat menerima input dan mengeluarkan output. FSA merupakan bagian Mesin automata dari bahasa reguler yang terdiri atas NFA dan DFA
• NFA (Non-Deterministic Finite Automata) adalah bagian FSA yang memungkingkan satu simbol menimbulkan transisi ke lebih dari satu kondisi dan memberikan beberapa kemungkinan gerakan sehingga keluarannya tidak dapat dipastikan.
• DFA (Deterministic Finite Automata) adalah bagian FSA yang memungkinkan dari suatu state ada tepat satu state berikutnya untuk setiap simbol input (masukan) yang di terima.
![Page 27: Tugas tba kelompok 1 kelas b](https://reader034.fdocuments.net/reader034/viewer/2022052123/54553298b1af9fb66e8b4771/html5/thumbnails/27.jpg)
Review (2) 2. Bagaimana hubungan antara Ekspresi Reguler dengan
FSA ?
• Untuk setiap ekspresi reguler ada satu Non-deterministic Finite Automata dengan transisi (NFA є-move) yang ekuilvalen
• Sementara untuk setiap Deterministic Finite Automata ada satu Ekspresi Reguler dari bahasa yang diterima oleh Deterministic Finite Automata.
• Sederhananya, "kita bisa membuat suatu Non-deterministic Finite Automata dari suatu ekspresi reguler".
![Page 28: Tugas tba kelompok 1 kelas b](https://reader034.fdocuments.net/reader034/viewer/2022052123/54553298b1af9fb66e8b4771/html5/thumbnails/28.jpg)
Review (3)
3. Sebutkan Himpunan String yang memenuhi :ER : 10(1+0)0*1 !
Himpunan String yang memenuhi adalah ER : 10(1+0)0*1 :
Jika antara (1+0) dipilih 0, maka sting yg terbentuk :1001, 10001, 100001, 1000001, 10000001, 1000000...1
Jika antara (1+0) dipilih 1, maka sting yg terbentuk :1011, 10101, 101001, 1010001, 10100001, 1010000...1
![Page 29: Tugas tba kelompok 1 kelas b](https://reader034.fdocuments.net/reader034/viewer/2022052123/54553298b1af9fb66e8b4771/html5/thumbnails/29.jpg)
Review (4) 4. Tuliskan Himpunan String yang memenuhi NFA Berikut !
Himpunan String yang memenuhi adalah :• 0100, 0101, 0110, 0111, 1100, 1101, 1110, 1111,• 00100, 00101, 00110, 00111, 11100, 11101, 11110, 11111,• 000100, 000101, 000110, 000111, 111100, 111101, 111110,
111111,• 0000100, 0000101, 0000110, 0000111, 1111100, 1111101,
1111110, 1111111,
![Page 30: Tugas tba kelompok 1 kelas b](https://reader034.fdocuments.net/reader034/viewer/2022052123/54553298b1af9fb66e8b4771/html5/thumbnails/30.jpg)
Review (5)5. Buatlah DFA yang menerima bahasa berupa semua string,
dimana simbol ketiga dari kanan adalah 1. Dik : ∑ = ( 0, 1 )
Ekspresi Reguler :
NFA untuk ER : (0+1)*00(0+1)*
ER : (0+1)*00(0+1)*
![Page 31: Tugas tba kelompok 1 kelas b](https://reader034.fdocuments.net/reader034/viewer/2022052123/54553298b1af9fb66e8b4771/html5/thumbnails/31.jpg)
Review (5) . /
q0 { q0 , q1 } { q0 }
q1 { q2 } θ
q2 { q2 } { q2 }
DFA untuk ER : (0+1)*00(0+1)*
00, 100, 001, 000, 0100, 0100, 1001, 0000, 1100, 0011, 1010011, 110011
Tabel Transisi