Session 7 Regular Expression and Language

Presentasi berjudul: "Session 7 Regular Expression and Language"— Transcript presentasi:

Session 7 Regular Expression and Language
Theory of Language and Automata (KOM208) SKS: 3(3-0)

Special Instructional Objectives, Subtopics and Presentation Time
Students are able to explain the construction of regular expression and language and their relation to automata Subtopics: Operators of regular expression Construction of regular expression Conversion of DFA into regular expression Conversion of regular expression into automata Presentation Time: 1 x 150 minutes

Algebraic Laws of Regular Expression (1)
Associativity and Commutative Law. L + M = M + L, commutative law of union. (L+M)+N=L+(M+N), associativity of union. (LM)N = L(MN), associativity of concatenation . Identity and Annihilator An annihilator for an operator is a value such that when an operator is applied to the annihilator with another value, the result is the annihilator  + L = L +  = L,  is the identity for union. L = L = L,  is the identity for concatenation. L = L =,  is the annihilator for the concatenation.

Algebraic Laws for Regular Expressions (2)
Distributive Law L(M+N) = LM + LN, hukum distributif kiri dari perangkaian pada union. (M+N)L = ML + NL, hukum distributif kanan dari perangkaian pada union. Hukum Idempotent untuk union: L + L = L.

Hukum-Hukum Aljabar untuk Ekspresi Regular (3)
Hukum-hukum yang melibatkan closure: (L*)* = L* * =  * =  L+ = LL* = L*L L+ = L + LL + LLL + ... L* =  + L + LL + LLL + ... Dengan demikian LL* = L + LL + LLL + LLLL + ... e. L* = L+ +  f. L? =  + L merupakan definisi dari operator ?

Contoh 6 Diberikan ekspresi regular 0 + 01*.
Ekspresi tersebut dapat disederhanakan menggunakan hukum-hukum aljabar dalam ekspresi regular: 0 + 01* = 0 + 01* dari (2b) = 0( + 1*) dari (3a), distributif kiri = 01* karena  + R = R

Hukum-Hukum Aljabar untuk Ekspresi Regular (4)
Jika diberikan 2 ekspresi regular E dan F, dapat diuji apakah E = F benar. Cara mengujinya adalah sebagai berikut: Konversi E dan F ke ekspresi regular kongkrit berturut C dan D dengan mengganti setiap variabel oleh sebuah simbol kongkrit. Uji apakah L(C) = L(D), jika benar, maka E=F benar. Jika salah maka E=F salah.

Contoh 7 (L + M )* = (L*M*)*
Untuk menunjukkan kesamaan tersebut, ganti variabel L dan M berturut-turut dengan simbol a dan b, sehingga diperoleh ekspresi regular (a+b)* dan (a*b*)*. Kedua ekspresi regular tersebut menyatakan bahasa dengan semua string dari para a dan para b. Dengan demikian, kesamaan (L + M )* = (L*M*)* benar.

Contoh 7 (lanjutan) L* =L*L*
Untuk menunjukkan kesamaan tersebut, ganti variabel L dengan simbol a, sehingga diperoleh ekspresi regular a* dan a*a*. Kedua ekspresi regular tersebut menyatakan bahasa dengan semua string dari para a. Dengan demikian, kesamaan L* =L*L* benar.

Contoh 7 (Lanjutan) L + ML = (L + M)L
Untuk menunjukkan kesamaan tersebut, ganti variabel L dan M berturut-turut dengan simbol a dan b, sehingga diperoleh ekspresi regular a+ba dan (a+b)a. Kedua ekspresi regular tersebut menyatakan bahasa yang berbeda. Untuk menunjukkan hal tersebut, pilih aa dalam bahasa dari ekspresi regular (a+b)a, tapi tidak dalam bahasa dari ekspresi regular a+ba. Dengan demikian, kesamaan L + ML = (L + M)L salah

Daftar Pustaka John E. Hopcroft, Rajeev Motwani, Jeffrey D. Ullman Introduction to Automata Theory, Languange, and Computation. Edisi ke-2. Addison-Wesley

Presentasi serupa