Teori Himpunan
• Himpunan adalah sekumpulan entitas
Matematika Dasar untuk
Teori Bahasa Otomata
• Notasi keanggotaan
– x S
–xS
Teori Bahasa & Otomata
• Menspesifikasikan himpunan
Semester Ganjil
2009/2010
• S = {0, 2, 4, 6,…}
• S = {x: x 0, x genap}
TEORI BAHASA & OTOMATA
TEORI BAHASA & OTOMATA
Shofwatul ‘Uyun, M.Kom
Shofwatul ‘Uyun, M.Kom
Operasi pada Himpunan
•
•
•
•
– tidak memiliki struktur
– sifatnya hanya keanggotaan
Union ()
Intersection ()
Difference (-)
Complementation (S )
Himpunan Tanpa Elemen
• disebut Himpunan Kosong
• Notasi:
• Apakah hal berikut membingungkan?
S = S - = S
S =
=U
S=S
– S = { x : x U, x S }
TEORI BAHASA & OTOMATA
TEORI BAHASA & OTOMATA
Shofwatul ‘Uyun, M.Kom
Shofwatul ‘Uyun, M.Kom
Notasi
•
•
•
•
Himpunan Kosong ()
Subset () & proper subset ()
Disjoint S1 S2 =
Himpunan finit(hingga) dan infinit(tak
hingga)
• |S| ukuran himpunan finit
– Jumlah elemen himpunan S
Powerset & Cartesian Product
• Powerset 2s
– himpunan seluruh himpunan bagian dari S
– S ={a,b,c},
2S={,(a),(b),(c),(a,b),(a,c),(b,c),(a,b,c)}
• Cartesian Product
– S = S1 S2 = {(x, y): x S1, y S2 }
– S1={2, 4}, S2={1, 2}
– S1 S2 = {(2, 1), (2, 2), (4, 1), (4, 2)},
TEORI BAHASA & OTOMATA
TEORI BAHASA & OTOMATA
Shofwatul ‘Uyun, M.Kom
Shofwatul ‘Uyun, M.Kom
1
Definisi Fungsi
• Fungsi ( f )= suatu aturan yang
memetakan elemen-elemen suatu
himpunan (domain) ke elemen
himpunan lain (range)
f :S1 S2
• Fungsi total & fungsi parsial
– total jika domain adalah seluruh anggota
S1
perbedaan
Fungsi & Relasi
• Fungsi
– Pasangan elemen: {(x1, y1), (x2, y2), (x3, y3),…}
– xi paling banyak muncul sekali sebagai
elemen pertama pada pasangan elemen
• Relasi
– Bentuk umum dari fungsi
– Suatu elemen dapat dipetakan ke lebih dari
satu elemen range
TEORI BAHASA & OTOMATA
TEORI BAHASA & OTOMATA
Shofwatul ‘Uyun, M.Kom
Shofwatul ‘Uyun, M.Kom
Ekuivalensi
• Salah satu macam relasi
• Ekuivalensi x y
definisi
Graph
• Graph = suatu bentuk yang terdiri atas dua
himpunan hingga (finite set), yaitu
himpunan vertek dan himpunan edge(tepi)
– Reflexivity
– Vertek, V = { v1, v2, v3, …}
– Edge, E = { e1, e2, e3, …}
– Setiap edge adalah pasangan dari vertek
ei =(vj, vk )
• x x untuk semua x
– Symmetry
• Jika x y maka y x
– Transitivity
• Jika x y dan y z maka x z
TEORI BAHASA & OTOMATA
TEORI BAHASA & OTOMATA
Shofwatul ‘Uyun, M.Kom
Shofwatul ‘Uyun, M.Kom
visualisasi
Graph
visualisasi
Graph
• Visualisasi Graph
– Vertek dan edge biasanya diberi label
– Vertek lingkaran
– Edge garis dengan tanda panah di salah
satu ujungnya
v1
v2
v3
– V = { v1, v2, v3 }
– E = {(v1, v3 ), (v3, v1 ), (v3, v2 ), (v3, v3 )}
• walk, path, simple path, cycle, simple
cycle
TEORI BAHASA & OTOMATA
TEORI BAHASA & OTOMATA
Shofwatul ‘Uyun, M.Kom
Shofwatul ‘Uyun, M.Kom
2
definisi
Tree
visualisasi
Tree
• Tree = suatu tipe khusus dari graph
– Directed graph yang tidak memiliki cycles dan
memiliki suatu vertek khusus disebut root
– Hanya terdapat satu path dari root ke setiap
vertek lain
– Root = vertek tanpa edge yang menuju
kepadanya
– Daun = vertek tanpa edge yg keluar darinya
root
Level 0
daun
kedalaman = 3
Level 3
TEORI BAHASA & OTOMATA
Shofwatul ‘Uyun, M.Kom
Teknik
Pembuktian
induktif & kontradiktif
• Induktif
– diasumsikan benar untuk: P1, P2, … , Pn
(disebut asumsi induktif)
– diperlihatkan benar untuk nilai awal-nya
(basis)
– dibuktikan asumsi tsb juga benar untuk Pn+1
TEORI BAHASA & OTOMATA
Shofwatul ‘Uyun, M.Kom
Contoh Teknik Pembuktian induktif
• Buktikan bahwa sebuah binary tree (pohon biner)
dengan ketinggian n memiliki paling banyak 2n daun!
• Pembuktian:
dinotasikan banyaknya daun adalah l(n), shg l(n) 2n
Basis: l(0) = 1 = 20
(yaitu root)
Asumsi Induktif: l(i) 2i , untuk i = 0, 1, 2, …, n
Langkah induktif:
l(n+1) = 2 l(n)
(disebut langkah induktif)
l(n+1) 2 x 2n = 2n+1
• Kontradiktif
– melakukan asumsi sebaliknyaTEORI BAHASA & OTOMATA
Shofwatul ‘Uyun, M.Kom
Contoh Teknik
Pembuktian
TEORI BAHASA & OTOMATA
Shofwatul ‘Uyun, M.Kom
kontradiktif
• Buktikan bahwa 2 bukan bilangan rasional!
• Pembuktian:
Diasumsikan sebaliknya, yaitu 2 adalah bilangan
rasional, sehingga dapat ditulis sbb:
n
2 = m 2 m2 = n2
Tiga Konsep Dasar
Bahasa, Grammar, & Otomata
terlihat bahwa n2 genap, sehingga n = 2k
2 m2 = 4k2
m2 = 2k2
Karena m adalah genap maka hal ini kontradiksi dengan
asumsi kita, sehingga m dan n tidak ada
dan 2 bukan
TEORI BAHASA & OTOMATA
Shofwatul ‘Uyun, M.Kom
bilangan rasional
TEORI BAHASA & OTOMATA
Shofwatul ‘Uyun, M.Kom
3
Bahasa
• Bahasa Alami: bahasa inggris, indonesia, belanda, …
• Definisi informal: sebuah sistem yang sesuai untuk
mengekspresikan suatu ide, fakta, atau konsep,
termasuk didalamnya sekumpulan simbol dan
aturan-aturan untuk memanipulasinya
Bahasa Formal
• Alfabet (Σ)
– himpunan simbol, non-empty set
• String : rangkaian hingga simbol pada alfabet
• Contoh:
Σ = {a, b},
abab dan aaabbb adalah string pada Σ
• Bahasa formal ?
TEORI BAHASA & OTOMATA
TEORI BAHASA & OTOMATA
Shofwatul ‘Uyun, M.Kom
Shofwatul ‘Uyun, M.Kom
Bahasa Formal
• Operasi pada string
Definisi
Bahasa Formal
• Sebuah bahasa didefiniskan secara umum
sebagai subset dari Σ*
– Concatenation
– Reverse
– Panjang string
• = empty string
• Σ* = konkatenasi simbol pada Σ sebanyak 0
atau lebih kali (disebut star closure of Σ)
• Σ+ = Σ*-(} (disebut positif closure of Σ)
– Suatu string w pada suatu bahasa L disebut
kata atau kalimat pada L
– Pada teori bahasa formal kata dan kalimat
tidak dibedakan
• L* = L0 L1 L2 …
• L+ = L1 L2 …
TEORI BAHASA & OTOMATA
TEORI BAHASA & OTOMATA
Shofwatul ‘Uyun, M.Kom
Shofwatul ‘Uyun, M.Kom
Grammar
• Grammar (pada bahasa alami)
Untuk menentukan apakah suatu kalimat
memiliki format yang baku atau tidak
– Pada bahasa inggris “Sebuah kalimat dapat
terdiri dari sebuah noun phrase diikuti oleh
sebuah predicate“
– <sentence> <noun_phrase><predicate>
<noun_phrase> <article><noun>
<predicate> <verb>
Contoh
Grammar
• Misal :
– <article> = “a” dan “the”
– <noun> = “boy” dan “dog”
– <verb> = “runs” dan “walks”
• Contoh kalimat: “a boy runs”, “the dog
walks”
TEORI BAHASA & OTOMATA
TEORI BAHASA & OTOMATA
Shofwatul ‘Uyun, M.Kom
Shofwatul ‘Uyun, M.Kom
4
Grammar Formal
• Sebuah grammar didefinisikan sebagai
sebuah quadruple
G = (V, T, S, P)
• Production rule adalah inti dari grammar
menspesifikasikan bagaimana suatu grammar mengubah suatu
string manjadi string yang lain, dan mendefinisikan bahasa sesuai
dengan grammar yang dipakai
• Format: x y
dimana:
V = himpunan hingga objek yang disebut variabel
T = himpunan hingga objek yang disebut terminal
symbol
S V = spesial symbol yang dinamakan start variabel
P = sebuah himpunan berhingga dari production
…
dimana x (V T )+ dan y (V T )*
• Misal :
–
–
–
–
Sebuah string w memiliki format : w uxv
Production x y applicable (dapat diaplikasikan) untuk string w
String baru : z uyv
Dituliskan: w z
TEORI BAHASA & OTOMATA
TEORI BAHASA & OTOMATA
Shofwatul ‘Uyun, M.Kom
Shofwatul ‘Uyun, M.Kom
Production Rule
• Jika: w1 w2
Production Rule
wn
Bahasa didefinisikan oleh Grammar
• Jika G = (V, T, S, P) adalah sebuah
grammar. Maka himpunan:
dikatakan w1 menurunkan wn
• w1
wn
*
* (tanda bintang) mengindikasikan jumlah
langkah yang tak tentu (termasuk nol) untuk
menurunkan wn dari w1
+
• w1
wn
+
(tanda plus) mengindikasikan minimal terdapat
satu produksi untuk menurunkan wn dari w1
L(G) = {wT*: S
* w}
adalah bahasa yang dihasilkan oleh G.
• Jika w L(G), maka deretan
S w1 w2 … wn w
adalah penurunan untuk kalimat/kata w
• String: S, w1, w2, …,wn disebut sentential forms
TEORI BAHASA & OTOMATA
TEORI BAHASA & OTOMATA
Shofwatul ‘Uyun, M.Kom
Shofwatul ‘Uyun, M.Kom
Contoh
• Diberikan grammar G = ({S},{a,b}, S, P), dengan
P sbb.:
S aSb
S
Maka :
S aSb aaSbb aabb
dapat dituliskan : S
* aabb
• Maka bahasa yang dihasilkan oleh G adalah :
L(G) = {an bn : n 0}
Latihan
1. Cari grammar yang menghasilkan
bahasa L(G) = {an bn+1 : n 0} !
2. Definsikan bahasa yang dihasilkan oleh
grammar dengan production berikut:
S aA
A bS
S
TEORI BAHASA & OTOMATA
TEORI BAHASA & OTOMATA
Shofwatul ‘Uyun, M.Kom
Shofwatul ‘Uyun, M.Kom
5
Otomata
• Model abstrak dari sebuah komputer digital
• Fitur utama:
Model Visual
Otomata
Input File
– Membaca input berupa string simbol
• Dari kiri ke kanan
• Satu simbol pada satu waktu
• Mendeteksi akhir string input
– Menghasilkan output
– Memiliki control unit
Control Unit
Storage
• Mengontrol perpindahan state
– Dapat memiliki alat penyimpan sementara
TEORI BAHASA & OTOMATA
Shofwatul ‘Uyun, M.Kom
Tipe
Output
TEORI BAHASA & OTOMATA
Shofwatul ‘Uyun, M.Kom
Otomata
• Deterministic Finit Otomata (DFA)
– jika diketahui konfigurasi dari input, internal state, dan
isi penyimpan sementara maka bisa diprediksi
kelakuan otomata kemudian
• Non-deterministic Finit Otomata (NFA)
– terdapat beberapa kemungkinan perpindahan dari
suatu state
• Accepter : output “ya/diterima” atau “tidak/ditolak”
• Transducer : output berupa string
TEORI BAHASA & OTOMATA
TEORI BAHASA & OTOMATA
Shofwatul ‘Uyun, M.Kom
Shofwatul ‘Uyun, M.Kom
6