Kom -----------------------------------------------------------------------------Ekspresi Regular Sebuah bahasa dinyatakan regular jika terdapat FSA yang dapat menerimanya. Bahasa-bahasa yang diterima oleh suatu FSA bisa dinyatakan secara sederhana dengan ekpresi regular, yang selanjutnya disebut ER. Contoh penerapannya adalah pencarian karakter atau pembatasan input bilangan (0..9) Notasi Ekspresi Regular Jenis notasi ekspresi regular adalah : * = menyatakan karakter bisa tidak muncul atau muncul berhingga kali (0-n) Contoh : ER = ab*cc L (ER) = acc, abcc,abbcc,abbbcc,abbbbcc
+
= (posisi superscript) menyatakan karakter minimal muncul satu kali atau muncul berhingga kali (1-n) Contoh : ER = 010 + L (ER) = 010,0100,01000 + atau U = menyatakan karakter bisa muncul salah satu saja. Contoh : ER = a U b L(ER)=a,b ER = a*+b* L(ER)=a,b,aa,bb,aaa,bbb . = menyatakan karakter muncul berurutan Contoh : ER = a.b.c L(ER)=abc
SOAL Dari ER berikut, cari L(ER) : 1. abc* 2. b*h*a+b 3. b*h*aUb 4. (aUb)* = a*Ub* 5. 01++0* 6. 01++0*Uab Jawab : 1. ab,abc,abcc,abccccccccccccccc 2. a,b,bha,bhb,bbhha 3. idem 4. a,aaa,aaaaaaaaaa,b,bbbb,bbbbbbbbb 5. 01,011,0111,0,00,000 6. Cari sendiri Hubungan Ekspresi Regular dan FSA Notasi ekspresi regular bila konversikan dalam FSA adalah sebagai berikut : Ekspresi Finite State Automata q0
q1
q0
q1
ab
q0
q1
q2
a*b a q0 b q1
a(ba)* q0
a q1 b
(ab)* q1
a q0 b
SOAL Gambarkan ER dari FSA berikut : 0100* 0(1U0)* 01*0 0*10* 0(10)*+ba 01*U10*11* a(ba*Ua(ba*b)*)