Ekspresi Reguler
Sri Handayaningsih, S.T., M.T.
TIU dan TIK
1. memahami konsep ekspresi reguler dan ekivalensinya dengan bahasa reguler.
2. Mengetahun Penerapan Ekspresi Reguler
Reguler
3. Mengetahui Definisi Formal ER 4. Mengetahui Bahasa untuk ER
Ekspresi Regular
ekspresi Regular adalah menggambarkan bahasa regular Contoh: Menggambarkan bahasanya
*
)
(
a
b
c
a
,
bc
*
,
a
,
bc
,
aa
,
abc
,
bca
,...
Definisi Rekursif
,
,
Ekspresi reguler yg paling sederhana :
2
r
1
r
Diberikan ekspresi reguler and Maka :
11 2 1 2 1*
r
r
r
r
r
r
Merupakan ekspresi reguler Maka :
Contoh 1
a
b
c
*
(
c
)
Ekspresi reguler
a
b
Bahasa dari
Ekspresi reguler
: bahasa dari Ekspresi reguler
r
L
r
contoh
(
a
b
c
)
*
,
a
,
bc
,
aa
,
abc
,
bca
,...
Definisi
Untuk Ekspresi reguler yg paling sederhana:
L
a
a
L
L
Definisi (Lanjutan)
Untuk Ekspresi regulerr
1 danr
2
r
1r
2
L
r
1L
r
2L
r
1r
2L
r
1L
r
2L
r
1*
L
r
1*
L
r
1L
r
1L
Contoh 2
Ekspresi reguler :
a
b
a
*
a
b
a
*
L
L
a
b
L
a
*
a
b
L
a
*
L
L
a
L
b
L
a
*
a
b
a
*
a
,
b
,
a
,
aa
,
aaa
,...
Tentukan L(r) dari :
Jawab
Ekspresi reguler
r
a
b
*
a
bb
Adalah :
r
a
,
bb
,
aa
,
abb
,
ba
,
bbb
,...
Tentukan L(r) dari :
Jawab
Ekspresi reguler
r
aa
*
bb
*
b
2n 2m
r
{
a
2b
2b
:
n
,
m
0
}
Apakah berikut ini merupakan
Ekspresi
reguler
?
)
(r
L
(r
)
= { seluruh string yang tidak bolehL
= { seluruh string yang tidak bolehContoh 1
Ekspresi reguler
r
(
0
1
)
*
00
(
0
1
)
*
)
(r
L
(r
)
= {seluruh string yang adaL
= {seluruh string yang adaContoh 2
Reguler ekspresi
r
(
1
01
)
*
(
0
)
)
(r
L
(r
)
= {seluruh string yang tidak adaL
= {seluruh string yang tidak adaEquivalen ekspresi Reguler
Definisi:ekspresi regular
r
1danr
2 ekspresi regular danadalah
equivalen
jika 1r
r
2)
(
)
(
r
1L
r
2L
Contoh
L
= {seluruh string yang tidak adadua “0” yang berurutan }
)
0
(
*
)
01
1
(
1
r
)
0
(
*
1
)
0
(
*
*)
011
*
1
(
2
r
L
r
L
r
L
(
1)
(
2)
Adalah equivalenr
1 danr
2Expresi Reguler
dan
Bahasa Reguler
Bahasa Reguler
Teorema
General Bahasa dengan Ekspresi Reguler Bahasa RegularPembuktian General Bahasa dengan Ekspresi Reguler Bahasa Regular General Bahasa dengan Ekspresi Reguler Bahasa Regular
Pembuktian - bagian 1
Bahasa Regular General Bahasa dengan Ekspresi Regulerr
)
(r
L
Untuk setiap ekspresi reguler
Bahasa adalah reguler
Induksi Dasar
Ekspresi reguler Paling Sederhana:
,
,
NFA)
(
)
(
M
L
L
(
M
1)
L
(
)
L
)
(
}
{
)
(
M
2
L
L
Bahasa reguler aInduksi Hipotesa
AsumsiUntuk ekspresi reguler dan maka ;
1
r
r
2maka ;
dan adalah bahasa reguler
)
(
r
1Langkah Induksi
Pembuktian:
1 2 2 1r
r
L
r
r
L
Adalah
1 2 1*
r
L
r
r
L
Adalah Bahasa RegulerDengan definisi dari ekspresi reguler, maka:
1 2 1 2 2 1 2 1r
L
r
L
r
r
L
r
L
r
L
r
r
L
1 1 1 1*
*
r
L
r
L
r
L
r
L
)
(
r
1L
L
(
r
2)
Dengan hipotesis induksi didapatkan:
dan adalah bahasa reguler
Bahasa reguler adalah pendekatan diketahui:
Bahasa reguler adalah pendekatan dari 3 hal ini:
r
11L
r
2 2L
r
L
r
L
Union ConcatenationOleh karena itu :
r
1r
2
L
r
1L
r
2L
Adalah bahasa
1*
1*
2 1 2 1r
L
r
L
r
L
r
L
r
r
L
Adalah bahasa regulerKesimpulan:
))
((
r
1Pembuktian - bagian 2
Bahasa reguler General Bahasa dengan Ekspresi RegulerL
r
L
(
r
)
L
untuk setiap bahasa reguler merupakan ekspresi reguler dengan
Selama adalah reguler yang diambil dari NFA yang diterimanya
L
M
L
M
L
(
M
)
L
L
(
)
Dari konstruksi untuk equivalen menggunakan Graf Transisi secara Umum
Dengan penamaan transisi adalah ekspresi reguler
M
Contoh :a
b
a,
c
M
a
b
a
c
Contoh Lain :
a
a,
b
b
b
0q
q
1q
2b
b
a
a
b
0q
q
1q
2b
Perulangan state :
b
a
a
b
b
0q
q
1q
2b
0q
q
2b
a
bb *
)
(
*
a
b
bb
Kesimpulan Ekspresi Reguler : 0
q
q
2b
a
bb *
)
(
*
a
b
bb
0q
q
2*
)
(
*
*
)
*
(
bb
a
bb
a
b
b
r
Secara Umum
Pergerakan Statenya : iq
q
q
ja
b
c
d
e
iq
q
jd
ae *
ce *
b
d
ce *
b
ae *
Graf transisi Akhir : 0
q
q
f 1r
2r
3r
4r
2r
*
)
*
(
*
2 4 3 1 2 1r
r
r
r
r
r
r
Standard dari Bahasa Reguler
Bahasa reguler
FA
Jika diberikan Bahasa Regular
Berarti:
L
Bahasa adalah standar
Berarti: Bahasa adalah standar representasi
Properti dari
Bahasa Regular
Bahasa Regular
1
L
L
2 2 1L
L
Concatenation: Star: 2 1L
L
Union: Adalah Untuk bahasa regular dan*
1L
Star: Adalah Bahasa Reguler 1L
Complement: RL
1 Reversal:1
L
Bahasa reguler
M
1L
1L
NFA 2L
M
2L
2L
Bahasa reguler NFA 1M
State yang diterima tunggal
NFA
M
2State yang diterima tunggal
Contoh
}
{
1a
b
L
na
b
1M
0 n
ba
L
2
b
a
2M
Union
NFA untuk 1M
2 1L
L
2M
Contoh
a
b
}
{
1a
b
L
n}
{
}
{
2 1L
a
b
ba
L
n
NFA untukb
L
2
{
ba
}
Concatenation
NFA untuk 1 2L
L
1M
1M
2M
M
2
Contoh
NFA untuk}
{
a
b
L
n}
{
}
}{
{
2 1L
a
b
ba
a
bba
L
n
na
b
b
a
}
{
1a
b
L
n}
{
2ba
L
Star Operation
NFA untuk*
1L
1M
*
1L
Contoh
NFA untukL
1*
{
a
nb
}
*
}
{
a
b
L
n
1 2 1 L w w w w w i k a
b
}
{
1a
b
L
n
Reverse
RL
1 1M
NFA for
1M
1L
1. Reverse seluruh transisi
2. Buat state awal yg dapat diterima dan sebaliknya
Contoh
}
{
1a
b
L
na
b
1M
}
{
1 n Rba
L
a
b
1M
Complement
1
M
1
L
L
1M
1
1. Ambil
FA yang diterima oleh
L
12. Buat state akhir non-final, dan sebaliknya
Contoh
}
{
1a
b
L
na
b
1M
b
a,
b
a,
}
{
*
}
,
{
1a
b
a
b
L
na
b
1M
b
a,
b
a,
Intersection
1L
regularL
regular LihatL
1
L
2 2L
regular regularHukum DeMorgan’s :
L
1
L
2
L
1
L
2 2 1 , L L regular 2 1 , L L regularregular 2 1 L L regular 2 1 L L regularContoh
}
{
1a
b
L
n}
,
{
2ab
ba
L
regular regular}
{
2 1L
ab
L
regular}
,
{
2ab
ba
L
regular regular1
L
untuk untukL
2 FA 1M
FA 2M
Mesin MesinPembuktian lain untuk Closur Interseksi
Bangun FA baru
M
yg dpt diterimaL
1
L
2M
Simulasi secara paralelM
danM
State pada
M
j i p q , 1M
M
21
M
M
2 1q
a
q
2 transisi 1p
a
p
2 transisi FA FA 1 1, p
q
a
M
FA 2 2, p
q
0
q
State awal 0p
State awal 1M
M
2 FA FA State awal 0 0, p
q
M
FAi q State akhir j p State akhir k p 1
M
M
2 FA FAM
FA State akhir j i p q , q ,i pkM
FAM
Simulasi secara paralelM
1 danM
2M
Menerima stringw
Jika dan hanya jikamenerima string dan
w
1
M
menerima stringw
2M
)
(
)
(
)
(
M
L
M
1L
M
2L
Contoh:
}
{
1a
b
L
na
1M
0 n}
{
2
ab
m
L
b
2M
0 ma
b
b
b
0 q q1 p0 1 p 2 q 2 p aa
b a,0 0, p
q
Automata untuk irisan
} { } { } {a b ab ab L n n 1 0, p q
a
b
q1, p1a
2 2, p q b a, 2 1, p qb
2 0, p qa
1 2, p qb
a
b
b
a
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 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