SlideShare a Scribd company logo
1 of 31
Download to read offline
Reguler
Teori Bahasa dan
Automata (TBA)
Ekspresi
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.
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.
Penerapan Ekspresi Reguler
Beberapa penerapan Ekspresi Reguler yang nampak
biasa digunakan untuk :
• Parsing
• Validasi Input
• Find and Replace
Penerapan Ekspresi Reguler
Contoh penerapan yang lain adalah :
• Pembatasan data masukan yang diperkenankan,
misalnya suatu field masukan hanya menerima input
bilangan (0..9)
Notasi Ekspresi Reguler
• Clean Closure (*) → termasuk hampa
• Positive Closure (+) → tanpa hampa
• Union ( ∪ atau + ) → berarti atau
• Concatenation ( . ) → gabungan, notasi bisa tidak
ditulis
( )
Ž ) ,
Ajc_l Ajmqspc NmqgrgtcAjmqspc Sl gml Sl gml Aml a_rcl _rgml
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
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
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
Notasi Ekspresi Reguler
Concatenation ( . ) (Konkatenasi, titik tidak ditulis)
"karakter dipisahkan oleh tanda titik, namun
biasanya tanda titik tersebut tidak ditulis."
Contoh :
ER : a.b. => ab
ER : a.b.c. => abc
ER : 0.1.0. => 010
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".
Hubungan Ekspresi Reguler dan FSA
NFA є-move untuk ER : ab
NFA є-move untuk ER : a ∪ b
Hubungan Ekspresi Reguler dan FSA
FA untuk ER : ab
FA untuk ER : a ∪ b
Hubungan Ekspresi Reguler dan FSA
Contoh-Contoh NFA untuk ER
NFA untuk ER : 010*
NFA untuk ER : 01*0
Hubungan Ekspresi Reguler dan FSA
Contoh-Contoh NFA untuk ER
NFA untuk ER : 0 ( 1 ∪ 0 )*
NFA untuk ER : 0 ( 1 ∪ 0 )
Hubungan Ekspresi Reguler dan FSA
Contoh-Contoh NFA untuk ER
NFA untuk ER : 0*10*
NFA untuk ER : a*
Hubungan Ekspresi Reguler dan FSA
Contoh-Contoh NFA untuk ER
NFA untuk ER : a (ba)*
NFA untuk ER : (ab)*
Hubungan Ekspresi Reguler dan FSA
Ekspresi
Reguler
NFA
NFA
є-move
DFA
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
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
Membuat DFA dari Ekspresi Reguler
• Kedua, Membuat Mesin NFA
NFA untuk ER : ( 0 ∪ 1 )* 00
Membuat DFA dari Ekspresi Reguler
• Ketiga, Membuat Tabel Transisi untuk NFA
NFA untuk ER : ( 0 ∪ 1 )* 00
. /
q0 { q0 , q1 } { q0 }
q1 { q2 } θ
q2 θ θ
Membuat DFA dari Ekspresi Reguler
• Keempat, Membuat mesin DFA
. /
q0 { q0 , q1 } { q0 }
q1 { q2 } θ
q2 θ θ
DFA untuk ER : ( 0 Ž 1 )* 00
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
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 )
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.
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".
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
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,
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)*
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

More Related Content

What's hot

Notasi Bahasa - P 5,6,7
Notasi Bahasa - P 5,6,7 Notasi Bahasa - P 5,6,7
Notasi Bahasa - P 5,6,7 ahmad haidaroh
 
Turuna parsial fungsi dua peubah atau lebih
Turuna parsial fungsi dua peubah atau lebihTuruna parsial fungsi dua peubah atau lebih
Turuna parsial fungsi dua peubah atau lebihMono Manullang
 
Matriks & Operasinya Matriks invers
Matriks  & Operasinya Matriks inversMatriks  & Operasinya Matriks invers
Matriks & Operasinya Matriks inversMuhammad Martayuda
 
Algoritma pencarian lintasan jalur terpendek
Algoritma pencarian lintasan jalur terpendekAlgoritma pencarian lintasan jalur terpendek
Algoritma pencarian lintasan jalur terpendekLaili Wahyunita
 
Tata bahasa-bebas-konteks
Tata bahasa-bebas-konteksTata bahasa-bebas-konteks
Tata bahasa-bebas-konteksrenoskop
 
Matematika Diskrit matriks relasi-dan_fungsi
Matematika Diskrit  matriks relasi-dan_fungsiMatematika Diskrit  matriks relasi-dan_fungsi
Matematika Diskrit matriks relasi-dan_fungsiSiti Khotijah
 
Push Down Automata (PDA)
Push Down Automata (PDA)Push Down Automata (PDA)
Push Down Automata (PDA)dhea zafarina
 
Context Free Grammar 1 - Materi 6 - TBO
Context Free Grammar 1 - Materi 6 - TBOContext Free Grammar 1 - Materi 6 - TBO
Context Free Grammar 1 - Materi 6 - TBOahmad haidaroh
 
Pertemuan 6 sifat sifat bahasa Reguler
Pertemuan 6 sifat sifat bahasa RegulerPertemuan 6 sifat sifat bahasa Reguler
Pertemuan 6 sifat sifat bahasa RegulerDhan junkie
 
Contoh soal dan penyelesaian metode biseksi
Contoh soal dan penyelesaian metode biseksiContoh soal dan penyelesaian metode biseksi
Contoh soal dan penyelesaian metode biseksimuhamadaulia3
 
Matemaika Diskrit - 04 induksi matematik - 03
Matemaika Diskrit - 04 induksi matematik - 03Matemaika Diskrit - 04 induksi matematik - 03
Matemaika Diskrit - 04 induksi matematik - 03KuliahKita
 
Graf ( Matematika Diskrit)
Graf ( Matematika Diskrit)Graf ( Matematika Diskrit)
Graf ( Matematika Diskrit)zachrison htg
 
Distribusi probabilitas-diskrit-poisson
Distribusi probabilitas-diskrit-poissonDistribusi probabilitas-diskrit-poisson
Distribusi probabilitas-diskrit-poissonNarwan Ginanjar
 
Matematika Diskrit - 06 relasi dan fungsi - 03
Matematika Diskrit - 06 relasi dan fungsi - 03Matematika Diskrit - 06 relasi dan fungsi - 03
Matematika Diskrit - 06 relasi dan fungsi - 03KuliahKita
 
Persamaan Diferensial.ppt
Persamaan Diferensial.pptPersamaan Diferensial.ppt
Persamaan Diferensial.pptYonandaZein
 
Pertemuan 6 Penyederhanaan RL-Karnaugh Map
Pertemuan 6   Penyederhanaan RL-Karnaugh MapPertemuan 6   Penyederhanaan RL-Karnaugh Map
Pertemuan 6 Penyederhanaan RL-Karnaugh Mapahmad haidaroh
 

What's hot (20)

Notasi Bahasa - P 5,6,7
Notasi Bahasa - P 5,6,7 Notasi Bahasa - P 5,6,7
Notasi Bahasa - P 5,6,7
 
Turuna parsial fungsi dua peubah atau lebih
Turuna parsial fungsi dua peubah atau lebihTuruna parsial fungsi dua peubah atau lebih
Turuna parsial fungsi dua peubah atau lebih
 
Matriks & Operasinya Matriks invers
Matriks  & Operasinya Matriks inversMatriks  & Operasinya Matriks invers
Matriks & Operasinya Matriks invers
 
Algoritma pencarian lintasan jalur terpendek
Algoritma pencarian lintasan jalur terpendekAlgoritma pencarian lintasan jalur terpendek
Algoritma pencarian lintasan jalur terpendek
 
Tata bahasa-bebas-konteks
Tata bahasa-bebas-konteksTata bahasa-bebas-konteks
Tata bahasa-bebas-konteks
 
Matematika Diskrit matriks relasi-dan_fungsi
Matematika Diskrit  matriks relasi-dan_fungsiMatematika Diskrit  matriks relasi-dan_fungsi
Matematika Diskrit matriks relasi-dan_fungsi
 
Push Down Automata (PDA)
Push Down Automata (PDA)Push Down Automata (PDA)
Push Down Automata (PDA)
 
Context Free Grammar 1 - Materi 6 - TBO
Context Free Grammar 1 - Materi 6 - TBOContext Free Grammar 1 - Materi 6 - TBO
Context Free Grammar 1 - Materi 6 - TBO
 
Pertemuan 6 sifat sifat bahasa Reguler
Pertemuan 6 sifat sifat bahasa RegulerPertemuan 6 sifat sifat bahasa Reguler
Pertemuan 6 sifat sifat bahasa Reguler
 
Contoh soal dan penyelesaian metode biseksi
Contoh soal dan penyelesaian metode biseksiContoh soal dan penyelesaian metode biseksi
Contoh soal dan penyelesaian metode biseksi
 
Pengertian sistem berkas
Pengertian sistem berkasPengertian sistem berkas
Pengertian sistem berkas
 
Matemaika Diskrit - 04 induksi matematik - 03
Matemaika Diskrit - 04 induksi matematik - 03Matemaika Diskrit - 04 induksi matematik - 03
Matemaika Diskrit - 04 induksi matematik - 03
 
Graf ( Matematika Diskrit)
Graf ( Matematika Diskrit)Graf ( Matematika Diskrit)
Graf ( Matematika Diskrit)
 
Materi 6. perulangan
Materi 6. perulanganMateri 6. perulangan
Materi 6. perulangan
 
4.matriks dan relasi
4.matriks dan relasi4.matriks dan relasi
4.matriks dan relasi
 
Distribusi probabilitas-diskrit-poisson
Distribusi probabilitas-diskrit-poissonDistribusi probabilitas-diskrit-poisson
Distribusi probabilitas-diskrit-poisson
 
Matematika Diskrit - 06 relasi dan fungsi - 03
Matematika Diskrit - 06 relasi dan fungsi - 03Matematika Diskrit - 06 relasi dan fungsi - 03
Matematika Diskrit - 06 relasi dan fungsi - 03
 
Persamaan Diferensial.ppt
Persamaan Diferensial.pptPersamaan Diferensial.ppt
Persamaan Diferensial.ppt
 
Pertemuan 6 Penyederhanaan RL-Karnaugh Map
Pertemuan 6   Penyederhanaan RL-Karnaugh MapPertemuan 6   Penyederhanaan RL-Karnaugh Map
Pertemuan 6 Penyederhanaan RL-Karnaugh Map
 
Array dan Contoh
Array dan ContohArray dan Contoh
Array dan Contoh
 

Viewers also liked

Viewers also liked (18)

1.introduction
1.introduction1.introduction
1.introduction
 
Chapter08
Chapter08Chapter08
Chapter08
 
6 mis-availability
6 mis-availability6 mis-availability
6 mis-availability
 
[Tep667][t02][06835;06923;07722][final]
[Tep667][t02][06835;06923;07722][final][Tep667][t02][06835;06923;07722][final]
[Tep667][t02][06835;06923;07722][final]
 
Snmptn 2012 tpa [akachopa.com]
Snmptn 2012 tpa [akachopa.com]Snmptn 2012 tpa [akachopa.com]
Snmptn 2012 tpa [akachopa.com]
 
2 mis-information businesscore
2 mis-information businesscore2 mis-information businesscore
2 mis-information businesscore
 
[Www.akachopa.com]sbmptn 2013 saintek
[Www.akachopa.com]sbmptn 2013 saintek[Www.akachopa.com]sbmptn 2013 saintek
[Www.akachopa.com]sbmptn 2013 saintek
 
1 mis-information excelence
1 mis-information excelence1 mis-information excelence
1 mis-information excelence
 
[Www.akachopa.com]sbmptn 2013 tpa
[Www.akachopa.com]sbmptn 2013 tpa[Www.akachopa.com]sbmptn 2013 tpa
[Www.akachopa.com]sbmptn 2013 tpa
 
Hasil seleksisnmptn2014
Hasil seleksisnmptn2014Hasil seleksisnmptn2014
Hasil seleksisnmptn2014
 
Bank
BankBank
Bank
 
4 abstract class, interface
4 abstract class, interface4 abstract class, interface
4 abstract class, interface
 
9 mis-collaboration platform
9 mis-collaboration platform9 mis-collaboration platform
9 mis-collaboration platform
 
11 mis-erp
11 mis-erp11 mis-erp
11 mis-erp
 
Indonesian quran-wb
Indonesian quran-wbIndonesian quran-wb
Indonesian quran-wb
 
Ilmu sosiologi
Ilmu sosiologiIlmu sosiologi
Ilmu sosiologi
 
Bab 5 perilaku menyimpang
Bab 5 perilaku menyimpangBab 5 perilaku menyimpang
Bab 5 perilaku menyimpang
 
Tugas akhir
Tugas akhirTugas akhir
Tugas akhir
 

More from Robbie AkaChopa

More from Robbie AkaChopa (19)

Monetisasi blog 1
Monetisasi blog 1Monetisasi blog 1
Monetisasi blog 1
 
[Www.akachopa.com]sbmptn 2013 tkdu
[Www.akachopa.com]sbmptn 2013 tkdu[Www.akachopa.com]sbmptn 2013 tkdu
[Www.akachopa.com]sbmptn 2013 tkdu
 
[Www.akachopa.com]sbmptn 2013 soshum
[Www.akachopa.com]sbmptn 2013 soshum[Www.akachopa.com]sbmptn 2013 soshum
[Www.akachopa.com]sbmptn 2013 soshum
 
Jadwal pembekalan kkn 73 kelompok iv fak. pertanian, fak. teknik 12 13 juni 2...
Jadwal pembekalan kkn 73 kelompok iv fak. pertanian, fak. teknik 12 13 juni 2...Jadwal pembekalan kkn 73 kelompok iv fak. pertanian, fak. teknik 12 13 juni 2...
Jadwal pembekalan kkn 73 kelompok iv fak. pertanian, fak. teknik 12 13 juni 2...
 
Snmptn 2012 tbs [akachopa.com]
Snmptn 2012 tbs [akachopa.com]Snmptn 2012 tbs [akachopa.com]
Snmptn 2012 tbs [akachopa.com]
 
Snmptn 2012 ipa [akachopa.com]
Snmptn 2012 ipa [akachopa.com]Snmptn 2012 ipa [akachopa.com]
Snmptn 2012 ipa [akachopa.com]
 
Snmptn 2012 ips [akachopa.com]
Snmptn 2012 ips [akachopa.com]Snmptn 2012 ips [akachopa.com]
Snmptn 2012 ips [akachopa.com]
 
Soal stat
Soal statSoal stat
Soal stat
 
10. deadlock
10. deadlock10. deadlock
10. deadlock
 
09 sinkronisasi proses
09 sinkronisasi proses09 sinkronisasi proses
09 sinkronisasi proses
 
Inferensi statistik satu populasi
Inferensi statistik satu populasiInferensi statistik satu populasi
Inferensi statistik satu populasi
 
Inferensi statistik
Inferensi statistikInferensi statistik
Inferensi statistik
 
Tabel distribusi
Tabel distribusiTabel distribusi
Tabel distribusi
 
Al quran-pdf
Al quran-pdfAl quran-pdf
Al quran-pdf
 
Presentation
PresentationPresentation
Presentation
 
12 mis-the cloud
12 mis-the cloud12 mis-the cloud
12 mis-the cloud
 
10 mis-green it
10 mis-green it10 mis-green it
10 mis-green it
 
7 mis-coorporate
7 mis-coorporate7 mis-coorporate
7 mis-coorporate
 
4 mis-itil
4 mis-itil4 mis-itil
4 mis-itil
 

Tugas tba kelompok 1 kelas b

  • 2. 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.
  • 3. 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.
  • 4. Penerapan Ekspresi Reguler Beberapa penerapan Ekspresi Reguler yang nampak biasa digunakan untuk : • Parsing • Validasi Input • Find and Replace
  • 5. Penerapan Ekspresi Reguler Contoh penerapan yang lain adalah : • Pembatasan data masukan yang diperkenankan, misalnya suatu field masukan hanya menerima input bilangan (0..9)
  • 6. Notasi Ekspresi Reguler • Clean Closure (*) → termasuk hampa • Positive Closure (+) → tanpa hampa • Union ( ∪ atau + ) → berarti atau • Concatenation ( . ) → gabungan, notasi bisa tidak ditulis ( ) Ž ) , Ajc_l Ajmqspc NmqgrgtcAjmqspc Sl gml Sl gml Aml a_rcl _rgml
  • 7. 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
  • 8. 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
  • 9. 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
  • 10. Notasi Ekspresi Reguler Concatenation ( . ) (Konkatenasi, titik tidak ditulis) "karakter dipisahkan oleh tanda titik, namun biasanya tanda titik tersebut tidak ditulis." Contoh : ER : a.b. => ab ER : a.b.c. => abc ER : 0.1.0. => 010
  • 11. 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".
  • 12. Hubungan Ekspresi Reguler dan FSA NFA є-move untuk ER : ab NFA є-move untuk ER : a ∪ b
  • 13. Hubungan Ekspresi Reguler dan FSA FA untuk ER : ab FA untuk ER : a ∪ b
  • 14. Hubungan Ekspresi Reguler dan FSA Contoh-Contoh NFA untuk ER NFA untuk ER : 010* NFA untuk ER : 01*0
  • 15. Hubungan Ekspresi Reguler dan FSA Contoh-Contoh NFA untuk ER NFA untuk ER : 0 ( 1 ∪ 0 )* NFA untuk ER : 0 ( 1 ∪ 0 )
  • 16. Hubungan Ekspresi Reguler dan FSA Contoh-Contoh NFA untuk ER NFA untuk ER : 0*10* NFA untuk ER : a*
  • 17. Hubungan Ekspresi Reguler dan FSA Contoh-Contoh NFA untuk ER NFA untuk ER : a (ba)* NFA untuk ER : (ab)*
  • 18. Hubungan Ekspresi Reguler dan FSA Ekspresi Reguler NFA NFA є-move DFA
  • 19. 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
  • 20. 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
  • 21. Membuat DFA dari Ekspresi Reguler • Kedua, Membuat Mesin NFA NFA untuk ER : ( 0 ∪ 1 )* 00
  • 22. Membuat DFA dari Ekspresi Reguler • Ketiga, Membuat Tabel Transisi untuk NFA NFA untuk ER : ( 0 ∪ 1 )* 00 . / q0 { q0 , q1 } { q0 } q1 { q2 } θ q2 θ θ
  • 23. Membuat DFA dari Ekspresi Reguler • Keempat, Membuat mesin DFA . / q0 { q0 , q1 } { q0 } q1 { q2 } θ q2 θ θ DFA untuk ER : ( 0 Ž 1 )* 00
  • 24. 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
  • 25. 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 )
  • 26. 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.
  • 27. 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".
  • 28. 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
  • 29. 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,
  • 30. 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)*
  • 31. 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