2 Pengantar Teori Bahasa Otomata
Teknik Informatika TEORI BAHASA Teori bahasa membicarakan bahasa formal
EORI EORI AHASA AHASA
T T B B (formal language), terutama untuk kepentingan perancangan kompilator (compiler) dan pemroses naskah (text processor)
TOMATA TOMATA O O (PENDAHULUAN) (PENDAHULUAN) Bahasa formal adalah kumpulan kalimat
PERTEMUAN 2 Semua kalimat dalam sebuah bahasa
FST dibangkitkan oleh sebuah tata bahasa (grammar)
UIN yang sama
SUKA Sebuah bahasa formal bisa dibangkitkan oleh dua atau lebih tata bahasa berbeda
Bahasa adalah beberapa variabel yang dapat dibentuk dari himpunan alfabet, atau rangkaian Shofwatul ‘Uyun, M.Kom Imam Riadi, M.Kom TEORI BAHASA & OTOMATA TEORI BAHASA & OTOMATA simbol-simbol yang mempunyai makna Shofwatul ‘Uyun, M.Kom Imam Riadi, M.Kom Teknik Informatika OTOMATA OTOMATA Teknik Informatika
Arti menurut American Heritage Dictionary: Adalah suatu sistem yang terdiri atas sejumlah berhingga state yang mempelajari
1. a robot
tentang mesin abstrak yang menerima input
2. one that behaves in an automatic or mechanical fashion
dan mengeluarkan output dalam bentuk Arti dalam dunia matematika diskret (satu per satu) Berkaitan dengan teori mesin abstrak, yaitu mesin sekuensial yang menerima input, dan
State adalah suatu kondisi yang menyatakan mengeluarkan output, dalam bentuk diskrit informasi mengenai input yang lalu.
Contoh : State dianggap sebagai memori mesin.
Mesin Jaja / vending machine mesin yang dpt mengeluarkan sesuatu
Mesin penukar uang Input pada otomata dianggap sebagai batas
Model transmisi data yang harus dikenali oleh mesin Kunci kombinasi Parser/compiler Shofwatul ‘Uyun, M.Kom Imam Riadi, M.Kom TEORI BAHASA & OTOMATA TEORI BAHASA & OTOMATA Shofwatul ‘Uyun, M.Kom Imam Riadi, M.Kom
TEORI BAHASA & OTOMATA Imam Riadi, M.Kom Shofwatul ‘Uyun, M.Kom Teknik Informatika Teori Otomata dan bahasa formal, berkaitan dalam hal :
Contoh : abc, ab, a, dan adalah semua Prefix(x)
dengan menghilangkan nol atau lebih simbol-simbol paling depan dan/atau simbol-simbol paling belakang dari string w tersebut. Contoh : abc, ab, bc, a, b, c, dan
Substring string w adalah string yang dihasilkan dari string w
Contoh : bc adalah Tail(x)
Tail string w adalah string yang dihasilkan dari string w dengan menghilangkan simbol paling depan dari string w tersebut.
adalah semua ProperPostfix(x) Head string w adalah simbol paling depan dari string w. Contoh : a adalah Head(x)
dihasilkan dari string w dengan menghilangkan satu atau lebih simbol-simbol paling depan dari string w tersebut. Contoh : bc, c, dan
Operasi Dasar String (Ljtn...) ProperPostfix (atau PoperSufix) string w adalah string yang
Contoh : abc, bc, c, dan adalah semua Postfix(x) TEORI BAHASA & OTOMATA Imam Riadi, M.Kom Shofwatul ‘Uyun, M.Kom Teknik Informatika
dari string w dengan menghilangkan nol atau lebih simbol- simbol paling depan dari string w tersebut.
Postfix (atau Sufix) string w adalah string yang dihasilkan
Contoh : ab, a, dan adalah semua ProperPrefix(x)
string w dengan menghilangkan satu atau lebih simbol- simbol paling belakang dari string w tersebut.
Proper Prefix string w adalah string yang dihasilkan dari
dengan menghilangkan nol atau lebih simbol-simbol paling belakang dari string w tersebut.
Pembangkitan kalimat/generation : menghasilkan semua kalimat dalam bahasa L berdasarkan aturan yang dimilikinya
Prefik string w adalah string yang dihasilkan dari string w
Diberikan dua string : x = abc, dan y = 123
TEORI BAHASA & OTOMATA Imam Riadi, M.Kom Shofwatul ‘Uyun, M.Kom Teknik Informatika Operasi Dasar String
Alfabet adalah hinpunan hingga (finite set) simbol-simbol
^) sehingga = 0
simbol. String hampa dinyatakan dengan simbol (atau
String hampa adalah sebuah string dengan nol buah
dinyatakan sebagai w dan didefinisikan sebagai banyaknya simbol yang menyusun string tersebut. Sebagai contoh, jika w = abcb maka w= 4.
Jika w adalah sebuah string maka panjang string
huruf atau sebuah angka adalah contoh simbol String adalah deretan terbatas (finite) simbol-simbol. Sebagai contoh, jika a, b, dan c adalah tiga buah simbol maka abcb adalah sebuah string yang dibangun dari ketiga simbol tersebut
Beberapa Pengertian Dasar Simbol adalah sebuah entitas abstrak. Sebuah
Pengenalan kalimat / recognition : menentukan suatu string (kalimat) termasuk sebagai salah satu anggota himpunan L TEORI BAHASA & OTOMATA Imam Riadi, M.Kom Shofwatul ‘Uyun, M.Kom Teknik Informatika
adalah semua Substring(x)
Teknik Informatika Operasi Dasar String (Ljtn...) Operasi Dasar String (Ljtn...) Teknik Informatika ProperSubstring string w adalah string yang dihasilkan dari
Concatenation adalah penyambungan dua buah string w dengan menghilangkan satu atau lebih simbol- string. Operator concatenation adalah concate atau simbol paling depan dan/atau simbol-simbol paling tanpa lambang apapun belakang dari string w tersebut.
Contoh : ab, bc, a, b, c, dan adalah semua Substring(x) Contoh : concate(xy) = xy = abc123
Subsequence string w adalah string yang dihasilkan dari
string w dengan menghilangkan nol atau lebih simbol- Alternation adalah pilihan satu di antara dua buah simbol dari string w tersebut.
string. Operator alternation adalah alternate atau adalah semua
Contoh : abc, ab, bc, ac, a, b, c, dan y = abc atau 123
Contoh : alternate(xy) = x Subsequence(x)
ProperSubsequence string w adalah string yang dihasilkan
Kleene Closure : x* = xxxxxx… = xxx… dari string w dengan menghilangkan satu atau lebih simbol- simbol dari string w tersebut. Contoh : ab, bc, ac, a, b, c, dan adalah semua
Positive Closure : x = x xxxxx… = xxx… Subsequence(x) Shofwatul ‘Uyun, M.Kom Imam Riadi, M.Kom TEORI BAHASA & OTOMATA TEORI BAHASA & OTOMATA Shofwatul ‘Uyun, M.Kom Imam Riadi, M.Kom Teknik Informatika Beberapa Sifat Operasi Beberapa Sifat Operasi (Lnjtn..) Teknik Informatika
Setiap Substring(x) adalah Subsequence(x), Tidak selalu berlaku : x = Prefix(x)Postfix(x) tetapi tidak sebaliknya
Dua sifat aljabar concatenation : Selalu berlaku : x = Head(x)Tail(x) Operasi concatenation bersifat asosiatif : x(yz) = (xy)z
: x = x = x Elemen identitas operasi concatenation adalah
Tidak selalu berlaku :
Tiga sifat aljabar alternation : Prefix(x) = Postfix(x) atau Prefix(x) Postfix(x)
Operasi alternation bersifat komutatif : x y = yx Operasi alternation bersifat asosiatif : x (yz) = (xy)z Selalu berlaku :
x = x Elemen identitas operasi alternation adalah dirinya sendiri : x
ProperPrefix(x) ProperPostfix(x)
Sifat distributif concatenation terhadap alternation : x (y z) = xyxz
Beberapa kesamaan : Selalu berlaku : Head(x) Tail(x)
Kesamaan ke-1 : (x*)* = (x*) x = x = x*
Kesamaan ke-2 : y)* = xyxxyyxyyx … = semua string
Kesamaan ke-3 : (x Setiap Prefix(x), ProperPrefix(x), Postfix(x), yang merupakan concatenation dari nol atau lebih x, y, atau keduanya
ProperPostfix(x), Head(x), dan Tail(x) adalah Substring(x), tetapi tidak sebaliknya Shofwatul ‘Uyun, M.Kom Imam Riadi, M.Kom TEORI BAHASA & OTOMATA TEORI BAHASA & OTOMATA Shofwatul ‘Uyun, M.Kom Imam Riadi, M.Kom
Teknik Informatika GRAMMAR DAN BAHASA GRAMMAR DAN BAHASA (Lnjtn..) Teknik Informatika Anggota alfabet dinamakan simbol terminal
Simbol-simbol berikut adalah simbol non terminal /Variabel :
Kalimat adalah deretan hingga simbol-simbol terminal a. huruf besar, misalnya : A, B, C Bahasa adalah himpunan kalimat-kalimat.
b. huruf S sebagai simbol awal Anggota bahasa bisa tak hingga kalimat
c. string yang tercetak miring, misalnya : expr Simbol-simbol berikut adalah simbol terminal : Huruf yunani melambangkan string yang
tersusun atas simbol-simbol terminal
a. huruf kecil, misalnya : a, b, c , dan
b. simbol operator, misalnya : +, atau simbol-simbol non terminal atau
c. simbol tanda baca, misalnya : (, ), dan ;
campuran keduanya, misalnya : , ,
d. string yang tercetak tebal, misalnya : if, then, dan else
dan Shofwatul ‘Uyun, M.Kom Imam Riadi, M.Kom TEORI BAHASA & OTOMATA TEORI BAHASA & OTOMATA . Shofwatul ‘Uyun, M.Kom Imam Riadi, M.Kom T Teknik Informatika GRAMMAR DAN BAHASA (Lnjtn..) Grammar Teknik Informatika
Sebuah produksi dilambangkan sebagai , Grammar G didefinisikan sebagai
artinya : dalam sebuah derivasi dapat dilakukan pasangan 4 tuple : V T , V N , S, dan Q, penggantian simbol dengan simbol . dan dituliskan sebagai G(V T , V N , S, Q),
Derivasi adalah proses pembentukan sebuah dimana : kalimat atau sentensial. Sebuah derivasi
V T : himpunan simbol-simbol dilambangkan sebagai : terminal (atau himpunan token -token, atau alfabet)
Sentensial adalah string yang tersusun atas simbol-simbol terminal atau simbol-simbol non
V N : himpunan simbol-simbol non terminal atau campuran keduanya terminal S
V: simbol awal (atau simbol start) Kalimat adalah string yang tersusun atas
Q : himpunan produksi simbol-simbol terminal. Kalimat adalah merupakan sentensial, sebaliknya belum tentu Shofwatul ‘Uyun, M.Kom Imam Riadi, M.Kom TEORI BAHASA & OTOMATA TEORI BAHASA & OTOMATA Shofwatul ‘Uyun, M.Kom Imam Riadi, M.Kom NB : Ruas kiri harus memuat simbol non-terminal
ADc
Regular N
CB DB
(T N)
Unrestricted
| || aD Da AD aCD
N)
(T
Q abPRS Context sensitive
Context free N
R Scac
Q abc
P abR
1 non terminal (paling kiri/kanan)
Hirarki Chomsky Kelas Ruas kiri Ruas Kanan Contoh
TEORI BAHASA & OTOMATA Imam Riadi, M.Kom Shofwatul ‘Uyun, M.Kom Teknik Informatika CONTOH
Regular language Context free language Context sensitive language Unrestricted language TEORI BAHASA & OTOMATA Imam Riadi, M.Kom Shofwatul ‘Uyun, M.Kom Teknik Informatika
Regular language Context free language Context sensitive language Unrestricted language
Hirarki Bahasa Kelas Mesin Pengenal
4.Grammar tipe ke-3 : Regular Grammar (RG) Ciri : V, {V, VV} atau V, {V, VV} TEORI BAHASA & OTOMATA Imam Riadi, M.Kom Shofwatul ‘Uyun, M.Kom Teknik Informatika
3.Grammar tipe ke-2 : Context Free Grammar (CFG) Ciri : V, (VV)*
2.Grammar tipe ke-1 : Context Sensitive Grammar (CSG) Ciri : , (VV)*, 0 <
1. Grammar tipe ke-0 : Unrestricted Grammar (UG) Ciri : , (VV)*, > 0
), Noam Chomsky mengklasifikasikan 4 tipe grammar :
L(G2) ={an n ≥ 1} TEORI BAHASA & OTOMATA Imam Riadi, M.Kom Shofwatul ‘Uyun, M.Kom Teknik Informatika Klasifikasi Chomsky Berdasarkan komposisi bentuk ruas kiri dan ruas kanan produksinya (
S aS aaS aaa
2. G2 : VT = {a}, V = {S}, P = {S aSa}
1. G1 : VT = {I, Love, You}, V = {S,A,B,C}, P = {S ABC, A I, B Love, C You} S ABC ILoveYou
- - P aQb
- |