download

Matakuliah
Tahun
Versi
: T0162/Teori Bahasa dan Automata
: 2005
: 1/0
Pertemuan 12
CONTEXT FREE GRAMMAR (CFG)
Lanjutan..
1
Learning Outcomes
Pada akhir pertemuan ini, diharapkan mahasiswa
akan mampu :
• << TIK-99 >>
• << TIK-99>>
2
Outline Materi
•
•
•
•
•
Materi 1
Materi 2
Materi 3
Materi 4
Materi 5
3
CONTEXT FREE GRAMMAR (CFG)
Lanjutan..
Greibach Normal Form :
• Lemma G1 :
Misalkan G = (V,T,P,S) suatu CFG.
A  1B2 suatu produksi dalam P dan
B  12…r himpunan produksi B.
4
CONTEXT FREE GRAMMAR (CFG)
Lanjutan..
Misalkan G1 = (V,T,P1,S) diperoleh dengan
menghilangkan semua produksi dalam
bentuk
A  12 dari P dan menambahkan
produksi dalam bentuk :
A  112122…1r2
maka L(G) = L(G1)
5
CONTEXT FREE GRAMMAR (CFG)
Lanjutan..
• Lemma G2 :
Misalkan G = (V,T,P,S) suatu CFG.
A  A1A2…Ar adalah himpunan
sebagian produksi A, sedangkan produksi
lainnya dalam bentuk :
A  12…s*
6
CONTEXT FREE GRAMMAR (CFG)
Lanjutan..
Misalkan G1 = (V  {B},T,P1,S} dibentuk
dengan menambahkan variabel B ke V
dan mengganti semua produksi A dengan
produksi dalam bentuk :

A


i

1.
1

i

s


A  iB
2.
B  i 

B  iB
1ir
maka L(G1) = L(G)
7
CONTEXT FREE GRAMMAR (CFG)
Lanjutan..
Pembuktian Lemma G2 :
• Derivasi leftmost dari G untuk produksi
A  AI berakhir dengan produksi
A  j sebagai berikut :
A  Ai1  Ai2i1  …  Aipip-1 …i1
 j ipip-1…i1
8
CONTEXT FREE GRAMMAR (CFG)
Lanjutan..
• Dalam G1 urutan penggantian di atas
berbentuk :
A  j B  j ipB  j ipip-1B …  j ipip-1
…  j ipip-1 …i2 B
j ipip-1 …i2 i1
9
CONTEXT FREE GRAMMAR (CFG)
Lanjutan..
Dalam Parse-Tree kedua derivasi di atas
berbentuk :
A
i1
A
i2
A
j
B
ip
A
B
ip
i2
A
B
j
i1
G
G1
10
CONTEXT FREE GRAMMAR (CFG)
Lanjutan..
Theorem : (Greibach Normal Form)
Setiap CFL tanpa  dapat dihasilkan oleh
suatu CFG yang produksinya berbentuk :
A  a
dimana A
: variabel / non-terminal
a
: terminal

: string variabel yang
mungkin empty
11
CONTEXT FREE GRAMMAR (CFG)
Lanjutan..
Contoh :
Ubah produksi grammar berikut ke dalam
bentuk Greibach Normal Form :
G = ({A1, A2, A3}, {a, b}, P, A1)
dimana P terdiri dari :
1. A1  A2 A3
2. A2  A3 A1 b
3. A3  A1 A2 a
12
CONTEXT FREE GRAMMAR (CFG)
Lanjutan..
Penyelesaian :
Tahap 1 :
Simbol A1 dalam (3) diganti dengan
produksi (1) {Lemma G1} :
1. A1  A2 A3
2. A2  A3 A1  b
3. A3  A2 A3 A2 a
13
CONTEXT FREE GRAMMAR (CFG)
Lanjutan..
Selanjutnya A2 paling kiri dalam (3) diganti
dengan produksi (2) :
1. A1  A2 A3
2. A2  A3 A1  b
3. A3  A3 A1 A3 A2 b A2 A3 A2 a
14
CONTEXT FREE GRAMMAR (CFG)
Lanjutan..
Selanjutnya aplikasi Lemma G2 pada
produksi (3) diperoleh :
1. A3
2. A3
3. B3
4. B3
 b A3 A2 A3
 a B3
 A1 A3 A2
 A1 A3 A2 B3
15
CONTEXT FREE GRAMMAR (CFG)
Lanjutan..
Dengan demikian P menjadi :
1. A1
2. A2
3. A3
4. B3
 A2 A3
 A3 A1  b
 bA3 A2 B3 aB3 bA3 A2 a
 A1 A3 A2  A1 A3 A2 B3
Produksi (3) sudah GNF, dengan subsitusi
yang lain diubah ke dalam GNF.
16
CONTEXT FREE GRAMMAR (CFG)
Lanjutan..
Tahap 2 :
Dengan menggunakan produksi (3) secara
substitusi ke dalam produksi lainnya di peroleh :
A2  bA3 A2 B3 A1 aB3 A1 bA3 A2 A1 a
A1 a
A1  bA3 A2 B3 A1 A3 aB3 A1 A3 bA3 
bA3A2 A1A3 a A1 A3
17
CONTEXT FREE GRAMMAR (CFG)
Lanjutan..
Dengan menggunakan produksi untuk
A1 diperoleh :
B3  bA3A2B3A1A3A3A2B3
 aB3A1A3A3A2B3
 bA3A3A2B3 bA3A2A1A3A3A2B3
 aA1A3A3A2B3 bA3A2B3A1A3A3A2
 aB3A1A3A3A2 bA3A3A2
 bA3A2A1A3A3A2  aA1A3A3A2
18
<< CLOSING>>
19