Bahasa Regular Muhammad Rafi Muttaqin S.Kom, M.Kom Teori Bahasa Otomata
Program Studi Informatika
STT Wastukancana Hierarchi Tata Bahasa • Menurut Noam Chomsky (1950), tata bahasa formal dikelompokan menjadi 4 tingkatan (hierarchi), biasa disebut tata bahasa menurut Chomsky. • Pengelompokan tata-bahasa menurut Chomsky ini ditentukan oleh aturan produksi yang dimiliki oleh grammar, yaitu tata-bahasa Tipe-0, Tipe-1, Tipe-2 dan Tipe-3. • Andaikan aturan produksi dalam suatu grammar G dituliskan sebagai : α β • dengan masing-masing α dan β adalah string-string yang dapat terdiri dari simbol Non terminal atau pun simbol terminal, atau : α , β ϵ (∑ U N)* maka masing-masing kelas tata-bahasa dibatasi sebagai berikut: Tipe 0 (Non-restricted Grammar) • adalah tata-bahasa yang paling luas, juga biasa disebut PHRASE STRUCTURED GRAMMAR. • Tata-bahasa Tipe-0 adalah tata-bahasa yang memiliki aturan produksi : α β dengan batasan : α : minimal terdiri dari 1 simbol Non terminal , β : tidak dibatasi Hierarki Chomsky Bahasa Mesin Automata Aturan Produksi Regular (Tipe 3) Finite State Automata α adalah sebuah simbol (FSA) meliputi variabel. Deterministic Finite β maksimal memiliki sebuah Automata (DFA), simbol variabel yang bila Non-deterministic Finite ada terletak diposisi paling Automata (NFA) kanan.
Bebas Konteks Push Down Automata α berupa sebuah simbol
(Tipe 2) variable Context Sensitive Linear Bounded Automata |α|≤|β| (Tipe 1) Natural Language Mesin Turing Tidak ada batasan (Tipe 0) Hierarki Chomsky
Level 3 Level 2 Level 1 Level 0
Regular Bebas Konteks Context Sensitive Unrestricted grammar Tipe 0 (Non-restricted Grammar) • Contoh: Tipe 1 (Context Sensitive Grammar) • Adalah tata-bahasa tipe-0 yang memiliki aturan produksi α β dengan tambahan batasan: Tipe-1 (lanjt….)
• Contoh:
Apakah tata bahasa ini termasuk dalam tipe-1?
Bandingkan dengan contoh tata bahasa tipe-0, apakah termasuk tipe-1 juga? Tunjukkan bahwa string a termasuk anggota bahasa! Tipe-2 (Context-Free Grammar) • Adalah tata bahasa tipe-1 yang memiliki aturan produksi : α β dengan tambahan batasan: • α : HANYA terdiri dari 1 simbol Non terminal saja, • β : tidak dibatasi Tipe-2 (Lanj…) • Contoh: Tunjukkan bahwa aturan produksi d bawah ini tidak termasuk pada grammar tipe-2! Tipe-3 (Regular Grammar) • Adalah tata bahasa tipe-2 yang memiliki aturan produksi α β dengan tambahan batasan: • α : HANYA terdiri dari 1 simbol Non terminal saja • β : dalam bentuk salah satu diantara : a, aB, atau ε Dimana a adalah simnol terminal dan B adalah simbol Non terminal. Tipe-3 (lanj…) • Tipe-3 merupakan tata bahasa yang paling banyak aturan dari hirarki tata bahasa yang ada. • Secara diagram keempat tata bahasa dapat digambarkan sebagai berikut: Tipe-3 (lanj…) • Contoh: Latihan 1. Pilihlah dari sekian aturan produksi dibawah ini kedalam level-level bahasa yang ada: a) E fgH b) E HgB c) EF a d) A aeGab e) Abc dEF f) D Ddd g) A AAA h) FGH abc 2. Buatlah alasan-alasan untuk setiap jawaban dari soal diatas ! Ekspresi Regular • Jika ∑ adalah suatu himpunan abjad (yang tentu saja jumlahnya terhingga), maka: 1. ∑* = himpunan seluruh string yang dapat disusun dari abjad dalam ∑ adalah berjumlah TAK HINGGA 2. Kumpulan dari semua bahasa yang dapat dibangkitkan dari abjad dalam ∑ berjumlah tak terhitung. Definisi Ekspresi Regular 1. Ø = { } = (himpunan kosong) adalah sebuah ER 2. { ε } = string kosong adalah ER 3. Untuk setiap a є ∑, maka a adalah ER 4. Jika a dan b adalah ekspresi regular maka aUb, ab, dan a* adalah ER
Dari definisi tentang ER selanjutnya dapat dituliskan
beberapa akibat logis, berdasarkan teori himpunan sebagai berikut: Tata Bahasa Regular • Tata Bahasa ini memiliki aturan produksi α β dengan batasan : Contoh Mesin Pengenal Bahasa 1. Bahasa Regular, mesin pengenalnya : Finite State Automata 2. Bahasa bebas konteks : Push Down Automata 3. Bahasa konteks sensitive : Linear Bounded Automata 4. Bahasa unsrestricted : Mesin Turing Tugas • Tuliskanlah notasi untuk ekspresi regular di bawah ini: ▫ 1. Sederetan a dengan panjang minimal 1 ▫ 2. Sederetan a dengan panjang minimal nol dan diakhiri dengan b ▫ 3. a atau b dengan panjang minimal nol ▫ 4. sederetan ab dengan panjang minimal nol • Bagaimanakah mengungkapkan kalimat untuk ekspresi regular berikut: ▫ 5. {ab*} ▫ 6. {a*b} ▫ 7. {a*, b*} ▫ 8. {a*b*} ▫ 9. {00}* ▫ 10. {10}*{1}