Anda di halaman 1dari 66

Ekspresi Reguler

Pertemuan Ke-8

Sri Handayaningsih, S.T., M.T.


Email : ning_s12@yahoo.com
Teknik Informatika
TIU dan TIK
1. memahami konsep ekspresi reguler
dan ekivalensinya dengan bahasa
reguler.
2. Mengetahun Penerapan Ekspresi
Reguler
3. Mengetahui Definisi Formal ER
4. Mengetahui Bahasa untuk ER
5. Mengetahui proses Konversi ER ke FA

TEORI BAHASA OTOMATA


2
Ekspresi Regular
ekspresi Regular adalah menggambarkan
bahasa regular

Contoh: ( a b 
c) *

Menggambarkan bahasanya
a, bc
* 
, a, bc, aa, abc, bca,...
TEORI BAHASA OTOMATA
3
Definisi Rekursif
Ekspresi reguler yg paling sederhana :
, , 
Diberikan ekspresi reguler r1 and r2
Maka :
r1 r2
r1 
r2
Merupakan ekspresi reguler
r1 *

r1
TEORI BAHASA OTOMATA
4
Contoh 1

Ekspresi reguler  c
a b  *
(c )

Bukan Ekspresi reguler : 


a b 

TEORI BAHASA OTOMATA


5
Bahasa dari Ekspresi reguler

L
r : bahasa dari Ekspresi reguler r

contoh
L c ) *
( a b  , a, bc, aa, abc, bca,...

TEORI BAHASA OTOMATA


6
Definisi
Untuk Ekspresi reguler yg paling sederhana:

L


L
 

L
a 
a
TEORI BAHASA OTOMATA
7
Definisi (Lanjutan)
Untuk Ekspresi reguler r1 dan r2

L
r1 r2 L
r1 L
r2 

L r2 L
r1  r1 L
r2 

L
r1 *
L
r1 
*

L

r1 
L
r1
TEORI BAHASA OTOMATA
8
Contoh 2
a b 
Ekspresi reguler : a*
L
a b 
a *L a b  L a *
L a b L a *
La L b La *

a  b 
a *
a, b , a, aa, aaa,...
a, aa, aaa,..., b, ba, baa,...
TEORI BAHASA OTOMATA
9
Tentukan L(r) dari :

Ekspresi reguler r 
a b 
* a bb

TEORI BAHASA OTOMATA


10
Jawab

Ekspresi reguler r 
a b 
* a bb
Adalah :

L
r 
a, bb, aa, abb, ba, bbb,...

TEORI BAHASA OTOMATA


11
Tentukan L(r) dari :

Ekspresi reguler r 
aa 
* bb 
*b

TEORI BAHASA OTOMATA


12
Jawab

Ekspresi reguler r 
aa 
* bb 
*b

L
r {a b b : n, m 0}
2n 2m

TEORI BAHASA OTOMATA


13
Apakah berikut ini merupakan Ekspresi
reguler?

L(r ) = { seluruh string yang tidak boleh


ada dua “0” yang berurutan }

TEORI BAHASA OTOMATA


14
Contoh 1

Ekspresi reguler r (0 1) * 00 (0 1) *

L(r ) = {seluruh string yang ada


dua “0” yang berurutan }

TEORI BAHASA OTOMATA


15
Contoh 2

Reguler ekspresi r (1 01) * (0 )

L(r ) = {seluruh string yang tidak ada


dua “0” yang berurutan }

TEORI BAHASA OTOMATA


16
Equivalen ekspresi Reguler

Definisi:

ekspresi regular r1 dan r2

adalah equivalen jika L(r1) L( r2 )

TEORI BAHASA OTOMATA


17
Contoh
L = {seluruh string yang tidak ada
dua “0” yang berurutan }

r1 (1 01) * (0 )


r2 (1* 011*) * (0 ) 1* (0 )

r1 dan r2
L(r1) L( r2 ) L
Adalah equivalen
TEORI BAHASA OTOMATA
Ekspresi reguler
18
Expresi Reguler
dan
Bahasa Reguler

TEORI BAHASA OTOMATA


19
Teorema
General Bahasa
Bahasa
dengan
Regular
Ekspresi Reguler

TEORI BAHASA OTOMATA


20
Pembuktian

General Bahasa Bahasa


dengan Regular
Ekspresi Reguler

General Bahasa Bahasa


dengan Regular
Ekspresi Reguler
TEORI BAHASA OTOMATA
21
Pembuktian - bagian 1

General Bahasa Bahasa


dengan Regular
Ekspresi Reguler

Untuk setiap ekspresi reguler r


Bahasa L(r ) adalah reguler

Pembuktian dengan induksi pada ukuran r


TEORI BAHASA OTOMATA
22
Induksi Dasar
Ekspresi reguler Paling Sederhana:
, , 
NFA

L(M1)  L()
Bahasa
L(M 2 ) {} L()
reguler
a
L(M 3 ) {a} L(a)
TEORI BAHASA OTOMATA
23
Induksi Hipotesa

Asumsi
Untuk ekspresi reguler r1 dan r2
maka ;

L( r1) dan L( r2 ) adalah bahasa reguler

TEORI BAHASA OTOMATA


24
Langkah Induksi
Pembuktian: L
r1 r2 

L r2 
r1 
Adalah
Bahasa Reguler
L
r1 *

TEORI BAHASA OTOMATA


L

r1 
25
Dengan definisi dari ekspresi reguler, maka:

L
r1 r2 L
r1 L
r2 

L r2 L
r1  r1 L
r2 

L
r1 *
L
r1 
*

L

r1 
L
r1
TEORI BAHASA OTOMATA
26
Dengan hipotesis induksi didapatkan:
L( r1) dan L( r2 ) adalah bahasa reguler

diketahui:
Bahasa reguler adalah pendekatan
dari 3 hal ini:
Union L
r1 L r2 
Concatenation L
r1 L
r2 
Star 
L
r1 
*
TEORI BAHASA OTOMATA
27
Oleh karena itu :

L
r1 r2 
L
r1 L
r2 

Adalah bahasa
L r2 L
r1  r1 L
r2 
reguler

L
r1 *
L
r1 
*
TEORI BAHASA OTOMATA
28
Kesimpulan:

L(( r1)) Adalah bahasa reguler

TEORI BAHASA OTOMATA


29
Pembuktian - bagian 2

General Bahasa Bahasa


dengan reguler
Ekspresi Reguler

untuk setiap bahasa reguler L merupakan


ekspresi reguler r dengan L( r ) L

Pembuktian dengan contruksi pada Ekspresi reguler


TEORI BAHASA OTOMATA
30
Selama L adalah reguler yang diambil dari
NFA M yang diterimanya

L(M ) L

Satu state akhir

TEORI BAHASA OTOMATA


31
Dari M konstruksi untuk equivalen menggunakan
Graf Transisi secara Umum
Dengan penamaan transisi adalah ekspresi
reguler

Contoh :
M
a c a c
a, b a b
TEORI BAHASA OTOMATA
32
b b
Contoh Lain : a
q0 q1 a, b q2
b

b b
a
q0 q1 a b q2
b
TEORI BAHASA OTOMATA
33
b b
Perulangan state : a
q0 q1 a b q2
b

bb * a b

q0 bb * (a b) q2
TEORI BAHASA OTOMATA
34
Kesimpulan Ekspresi Reguler :
bb * a b

q0 bb * (a b) q2

r (bb * a) * bb * (a b)b *

L( r ) L( M ) L
TEORI BAHASA OTOMATA
35
Secara Umum
e
Pergerakan Statenyad: c
qi q qj
a b

ae * d ce * b
ce * d
qi qj
TEORI BAHASA OTOMATA
ae * b
36
Graf transisi Akhir : r1 r4
r3
q0 qf
r2
Kesimpulan ekspresi reguler :

r r1 * r2 (r4 r3r1 * r2 ) *

L( r ) L( M ) L
TEORI BAHASA OTOMATA
37
Standard dari Bahasa Reguler

Bahasa reguler

FA

Ekspresi
NFA Regular
TEORI BAHASA OTOMATA
38
Jika diberikan Bahasa Regular L

Berarti: Bahasa L adalah standar


representasi

TEORI BAHASA OTOMATA


39
Properti dari
Bahasa Regular

TEORI BAHASA OTOMATA


40
Untuk bahasa regular L1 dan L2

Union: L1 L2
Concatenation: L1L2
Star: L1 * Adalah
Bahasa Reguler
Reversal: L1R

Complement: L1
Intersection:
TEORI BAHASA OTOMATA L1 L2
41
Bahasa reguler L1 Bahasa reguler L2

L
M1 
L1 L
M2
L2

NFA M1 NFA M2

State yang diterima tunggal State yang diterima tunggal


TEORI BAHASA OTOMATA
42
Contoh
M1
n 0
a
L1 {a b} n
b

M2
L2 
ba b a

TEORI BAHASA OTOMATA


43
Union
L1 L2
NFA untuk M1

 M2

TEORI BAHASA OTOMATA


44
Contoh
NFA untuk L1 L2 {a b} {ba}
n

L1 {a b}n
a
b

 L2 {ba}
b a
TEORI BAHASA OTOMATA
45
Concatenation
L1L2
NFA untuk

M1 M2
 

TEORI BAHASA OTOMATA


46
Contoh
L1L2 {a b}{ba} {a bba}
n n
NFA untuk

L1 {a b} n

a L2 {ba}
b  b a 

TEORI BAHASA OTOMATA


47
Star Operation
L1 *
NFA untuk 
L1 *
M1
 


TEORI BAHASA OTOMATA
48
Contoh
w w1w2  wk
NFA untuk L1* {a b} * n
wi L1

L1 {a b} n

a
 b 

TEORI BAHASA OTOMATA



49
Reverse
R
NFA for L1
L1 M1 M1

1. Reverse seluruh transisi

2. Buat state awal yg dapat diterima


dan sebaliknya
TEORI BAHASA OTOMATA
50
Contoh
M1
a
L1 {a b} n
b

M1
a
R
L1 {ba } n b

TEORI BAHASA OTOMATA


51
Complement

L1 M1 L1 M1

1. Ambil FA yang diterima oleh L1

2. Buat state akhir non-final,


dan sebaliknya
TEORI BAHASA OTOMATA
Kenapa tdk NFA?
52
Contoh
M1
a a, b

L1 {a b} n b a, b

M1
n a a, b
L1 {a, b} * 
{a b}
b a, b
TEORI BAHASA OTOMATA
53
Intersection

L1 regular
Lihat L1 L2
L2 regular regular

TEORI BAHASA OTOMATA


54
Hukum DeMorgan’s : L1 L2 L1 L2

L1 , L 2 regular

L1 , L 2 regular

L1  L2 regular

L1  L2 regular
L1  L2 regular
TEORI BAHASA OTOMATA
55
Contoh

L1 {a b} regular
n
L1 L2 {ab}
L2 {ab, ba} regular regular

TEORI BAHASA OTOMATA


56
Pembuktian lain untuk Closur Interseksi

Mesin M1 Mesin M2
FA untuk L1 FA untuk L2

Bangun FA baru M yg dpt diterima L1 L2

M Simulasi secara paralel M1 dan M 2


TEORI BAHASA OTOMATA
57
State pada M

qi , p j

State pada M1 State pada M 2

TEORI BAHASA OTOMATA


58
FA M1 FA M2

q1 a q2 p1 a p2
transisi transisi

FA M

q1, p1 a q2 , p2
transisi
TEORI BAHASA OTOMATA
59
FA M1 FA M2

q0 p0
State awal State awal

FA M

q0 , p0
State awal
TEORI BAHASA OTOMATA
60
FA M1 FA M2

qi pj pk

State akhir State akhir

FA M
qi , p j qi , pk

State akhir

Kedua isi harus dapat diterima oleh state


TEORI BAHASA OTOMATA
61
M Simulasi secara paralel M1 dan M 2

M Menerima string w Jika dan hanya jika

M1 menerima stringw dan


M 2 menerima stringw

L( M ) L( M1) L( M 2 )

TEORI BAHASA OTOMATA


62
Contoh:

n 0 m 0
L1 {a b} n
L2 {ab } m

M1 M2
a b
q0 b q1 p0 a p1
a, b b a
q2 p2
a, b a, b
TEORI BAHASA OTOMATA
63
Konstruksi Mesin untuk Irisan

TEORI BAHASA OTOMATA


64
Automata untuk irisan
n n
L {a b} {ab } {ab}
a, b

q0 , p0 a q0 , p1 b q1, p1 a q2 , p2

b a b a
q1 , p2 b q0 , p2 q2 , p1

a b
a, b
TEORI BAHASA OTOMATA
65
Pustaka
1. Tedy Setiadi, Diktat Teori Bahasa dan Otomata,
Teknik Informatika UAD, 2005
2. Hopcroft John E., Rajeev Motwani, Jeffrey D. Ullman,
Introduction to Automata Theory, Languages, and
Computation, 2rd, Addison-Wesley,2000
3. Martin C. John, Introduction to Languages and Theory of
Computation, McGraw-Hill Internatioanal edition,1991
4. Linz Peter,Introduction to Formal Languages & Automata,
DC Heath and Company, 1990
5. Dulimarta Hans, Sudiana, Catatan Kuliah Matematika
Informatika, Magister Teknik Informatika ITB, 1998
6. Hinrich Schütze, IMS, Uni Stuttgart, WS 2006/07,
Slides based on RPI CSCI 2400

TEORI BAHASA OTOMATA


66