materi 1 dan 2.doc

14
TEORI BAHASA DAN OTOMATA 1. PENDAHULUAN Teori Bahasa Teori bahasa membicarakan tentang bahasa formal (formal language), terutama untuk perancangan kompilator (compiler) dan pemroses naskah (text processor). ™ Bahasa formal adalah kumpulan kalimat. ™ Semua kalimat dalam sebuah bahasa dibangkitkan oleh sebuah tata bahasa (grammar). Otomata (Automata) Adalah mesin abstrak yang dapat mengenali (recognize), menerima( accept) atau membangkitkan (generate) sebuah kalimat dalam bahasa tertentu. 2. KONSEP DASAR String adalah deretan terbatas (finite) symbol-simbol. String hampa adalah string dengan nol buah simbol ™ Dalam grammmar, dikenal symbol-symbol, yaitu : 1. Simbol terminal (token) Adalah symbol-simbol yang dilambangkan dengan huruf kecil, dan symbol-simbol tersebut sudah tidak dapat diturunkan lagi Contoh : a, b, c 2. Simbol non terminal(variable) Adalah symbol-simbol yang dilambangkan dengan huruf besar, dan symbol-simbol tersebut m asih dapat diturunkan lagi Contoh : A, B, C 3. Simbol Awal (Start) Adalah symbol awal, biasanya dilambangkan dengan S Aturan produksi dilambangkan dengan : α→β : artinya α dapat diganti atau diturunkan dengan symbol β Derivasi kalimat (pembentukan kalimat) dilambangkan dengan : αβ : artinya α adalah kalimat yang terdiri dari deretan symbol β 3. GRAMMAR DAN KLASIFIKASI CHOMSCY Grammar (G) didefinisikan sebagai pasangan 4 tuple yaitu : V T : himpunan symbol terminal V N : himpunan symbol non terminal S : symbol awal (start) Q : himpunan produksi

Upload: selfia

Post on 21-Nov-2015

232 views

Category:

Documents


8 download

DESCRIPTION

teori bahasa dan otomata

TRANSCRIPT

TEORI BAHASA DAN OTOMATA1. PENDAHULUAN Teori Bahasa Teori bahasa membicarakan tentang bahasa formal (formal language), terutama untuk perancangan kompilator (compiler) dan pemroses naskah (text processor).

Bahasa formal adalah kumpulan kalimat.

Semua kalimat dalam sebuah bahasa dibangkitkan oleh sebuah tata bahasa

(grammar).Otomata (Automata)Adalah mesin abstrak yang dapat mengenali (recognize), menerima( accept) atau membangkitkan (generate) sebuah kalimat dalam bahasa tertentu.

2. KONSEP DASAR String adalah deretan terbatas (finite) symbol-simbol.

String hampa adalah string dengan nol buah simbol

Dalam grammmar, dikenal symbol-symbol, yaitu :

1. Simbol terminal (token)Adalah symbol-simbol yang dilambangkan dengan huruf kecil, dan symbol-simbol tersebut sudah tidak dapat diturunkan lagiContoh : a, b, c

2. Simbol non terminal(variable)Adalah symbol-simbol yang dilambangkan dengan huruf besar, dan symbol-simbol tersebut masih dapat diturunkan lagiContoh : A, B, C

3. Simbol Awal (Start)Adalah symbol awal, biasanya dilambangkan dengan S

Aturan produksi dilambangkan dengan :

: artinya dapat diganti atau diturunkan dengan symbol Derivasi kalimat (pembentukan kalimat) dilambangkan dengan :

: artinya adalah kalimat yang terdiri dari deretan symbol 3. GRAMMAR DAN KLASIFIKASI CHOMSCYGrammar (G) didefinisikan sebagai pasangan 4 tuple yaitu : VT : himpunan symbol terminal

VN : himpunan symbol non terminalS : symbol awal (start)

Q : himpunan produksi

Teori Bahasa Automata ~ Lina Susanti, S. KomDerivasi kalimat dan penentuan bahasa :Contoh :

Tentukan bahasa dari masing-masing grammar dari aturan produksi berikut :

1. G dengan Q = {1. SaAa, 2. A Aa, 3. Ab } Penyelesaian :

a. Derivasi kalimat terpendek (hindari aturan produksi yang menyebabkan looping):

S aAa (1)

aba (3)

b. Derivasi kalimat terpendek 1 (semua aturan produksi terlibat, tetapi tidak ada looping):

c. Derivasi kalimat umum (semua aturan produksi terlibat dan ada looping):S aAa(1)

aAaa(2)

aAaaa(2)

aAaaaa(2)

.

aAan(2)

aban(3)

Dari pola kedua buah kalimat dapat disimpulkan L(G) = {aban n1}2. G dengan Q = {1. SAb, 2. A Bc, 3. BCb, 4. CCa, 5. Ca} Penyelesaian :

a. Derivasi kalimat terpendek :S Ab(1)

Bcb(2)

Cbcb(3)

abcb(5)

b. Derivasi kalimat terpendek 1: S Ab (1)

Bcb (2)

Cbcb (3)

Cabcb (4)

aabcb (5)

c. Derivasi umum :

S Ab (1)

Bcb (2)

Cbcb (3)

Cabcb (4)

Caabcb (4)

Caaabcb (4)

.

aaaabcb (5)

Dari pola kedua buah kalimat dapat disimpulkan L(G) = {an bcb n1}Teori Bahasa Automata ~ Lina Susanti, S. Kom3. G dengan Q = {1. SA, 2. AaB, 3. BC, 4. CbD, 5. DA,

6. DE, 7. EF, 8. FbG }Penyelesaian :

a. Derivasi kalimat terpendek :S A(1)

aB(2)

aC(3)

abD(4)

abE(6)

abF(7)

abbG(8)

b. Derivasi kalimat umum :

S A (1)

aB (2)

aC (3)

abD (4)

abA (5)..looping pertama

abaB (2)

abaC (3)

ababD (4)

ababA (5).looping ke-2

ababaB (2)

ababaC (3)

abababD (4)

abababE (6)

abababF (7)

abababbG (8)

Dari pola kedua buah kalimat dapat disimpulkan L(G) = {(ab)n bGn1}Latihan soal :Dari aturan produksi dibawah ini cari derivasi kalimat terpendek dan derivasi kalimat umum untuk menentukan grammar dari masing-masing kalimat :

1. G dengan Q = {1. SBA, 2. A aBa, 3. Bb }

2. G dengan Q = {1. SaS, 2. S aB, 3. BbC, 4. CaC, 5. Ca}

3. G dengan Q = {1. SaSBC, 2. SabB, 3. bBbb, 4. bCbc, 5. CBBC,

6. cCcc}Teori Bahasa Automata ~ Lina Susanti, S. KomFINITE STATE AUTOMATA (FSA)Merupakan model matematika yang dapat menerima input dan mengeluarkan output Memiliki state yang berhingga banyaknya dan dapat berpindah dari satu state ke state lainnya berdasar input dan fungsi transisi

Tuple pada FSA :

Q = himpunan state

= himpunan symbol input

= fungsi transisi

S = state awal

F = state akhir (dilambangkan dengan lingkaran ganda)Contoh 1 :

q0 a q1 b q2 a q3bcq4q5Q = {q0, q1,q2,q3,q4,q5}

= {a,b,c} S = q0

F = {q3, q4}abc

q0q1

q1q2

q2q3q4q5

q3

q4

q5

Dari gambar mesin automata diatas :

Input yang dapat diterima adalah : aba, abb (karena berakhir pada state akhir) Input yang ditolak adalah : abc (tidak berakhir pada state akhir)

Contoh 2:Q = {genap, ganjil}

= {0,1} S = genap F = ganjil

Teori Bahasa Automata ~ Lina Susanti, S. Kom01

Genapgenapganjil

Ganjilganjilgenap

Atau :

(genap,0) = genap (genap,1) = ganjil (ganjil,0) = ganjil (ganjil,1) = genap

dari mesin automata tersebut:

input yang diterima adalah : 1, 010, 10

input yang ditolak adalah : 11, 011, 101, 0101, 011

Jenis FSA :

1. Deterministic State Automata (DFA)

2. Non Determinictic State Automata (NFA)

Teori Bahasa Automata ~ Lina Susanti, S. KomDETERMINISTIC STATE AUTOMATA (DFA)Dari suatu state ada tepat satu state berikutnya untuk setiap symbol masukan yang diterima.

Contoh 1:Q = {q0, q1,q2 }

= {a,b} S = q0

F = q2ab

q0q0q1

q1q1q2

q2q1q2

(q0,a) = q0

(q0,b) = q1 (q1,a) = q1 (q1,b) =q2 (q2,a) = q1 (q2,b) = q2

contoh 2 :

Q = {q0, q1,q2,q3 }

= {0,1} S = q0

F = q001

q0q2q1

q1q3q0

q2q0q3

q3q1q2

Teori Bahasa Automata ~ Lina Susanti, S. Kom(q0,0) = q2 (q0,1) = q1 (q1,0) = q3 (q1,1) =q0 (q2,0) = q0 (q2,1) = q3 (q3,0) = q1 (q3,1) = q2

Latihan soal1. Gambarkan mesin automata berdasarkan digram fungsi transisi berikut : Q = {q0, q1,q2,q3, q4 }

= {a,b} S = q0

F = {q0, q1, q2} Fungsi transisi DFA :

2. Berdasarkan mesin automata berikut gambarkan diagram fungsi transisinya3. Berdasarkan mesin automata berikut gambarkan diagram fungsi transisinyaTeori Bahasa Automata ~ Lina Susanti, S. KomS aAa(1)aAaa(2)aba(3)

01q0q0q1q1q0q2q2q0q3q3q3q4