Pertemuan 7 Ekspresi dan Bahasa Regular (lanjutan).

Download Report

Transcript Pertemuan 7 Ekspresi dan Bahasa Regular (lanjutan).

Session 7 Regular Expression and Language

Theory of Language and Automata (KOM208 ) SKS: 3(3-0)

Special Instructional Objectives, Subtopics and Presentation Time • Special Instructional Objectives: – 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) 1. Associativity and Commutative Law.

An a. L + M = M + L, commutative law of union.

b. (L+M)+N=L+(M+N), associativity of union.

c. (LM)N = L(MN), associativity of concatenation .

2. Identity and Annihilator a.

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

.

b.

c.

 L = L   L = L  = L,  =  ,  is the identity for concatenation. is the annihilator for the concatenation.

Algebraic Laws for Regular Expressions (2) 3. 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

.

4. Hukum Idempotent untuk

union

: L + L = L.

Hukum-Hukum Aljabar untuk Ekspresi Regular (3) 5. Hukum-hukum yang melibatkan

closure

: a. (L*)* = L* b.

c.

 * =   * =  d. 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  = 0(  + 01* + 1*) = 01* dari (2b) dari (3a), distributif kiri 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

1. (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)

2. 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)

3. 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. 2001.

Introduction to Automata Theory, Languange, and Computation

. Edisi ke-2. Addison-Wesley