Anda di halaman 1dari 35

Teori Bahasa dan Otomata

Pertemuan 1
Apa Teori Bahasa dan Otomata?
 Teori Bahasa dan Otomata (TBO) merupakan komponen
ilmu komputer yang membahas model dan gagasan
mendasar mengenai komputasi.
 TBO = teori komputasi  mengajarkan cara-cara dasar
sehingga sebuah komputer ‘dapat’ berpikir.
Area Teori Komputasi
Teori Complexity dan Computability
 Sampai pertengahan abad ke-20, ahli matematika seperti Kurt Godel, Alan
Turing, dan Alonzo Church menemukan fakta bahwa beberapa masalah
dasar tertentu tidak dapat dipecahkan oleh komputer.
 Contoh: bagaimana komputer dapat menentukan apakah suatu pernyataan
matematika adalah true atau false.
 Salah satu konsekuensinya, pengembangan ide tentang model teoritis
komputer yang membantu konstruksi komputer seperti yang kita gunakan
sekarang.
 Dalam complexity theory, tujuannya adalah mengklasifikasikan permasalahan
sebagai masalah yang mudah (easy) atau sulit (hard).
 Dalam computability theory, klasifikasi permasalahan berdasarkan pada
dapat dipecahkan (solvable) atau tidaknya suatu permasalahan
tersebut.
 Beberapa konsep dalam computability digunakan dalam complexity theory.
Teori Otomata
 Automata theory : Study of abstract computing devices, or
“machines” . Berkaitan dengan definisi dan properti dari
model-model matematika komputasi.
 Automaton = an abstract computing device
 Model pertama disebut finite automaton, yang dapat
digunakan dalam text processing, compilers, dan
hardware design.
 Adapun model lainnya disebut context-free grammar,
yang digunakan dalam bahasa pemrograman dan
artificial intelligence.
Konsep Utama TBO
Konsep Bahasa dan Otomata
 Simbol : suatu entitas abstrak yang tidak kita definisikan secara
formal. Contoh : huruf & digit
 Alphabet : himpunan simbol berhingga dinyatakan sebagai 
(sigma).
 Contoh : Biner  = {0,1}
huruf kecil  = {a,b,c,..z}
alphanumeric  = {a-z, A-Z,0-9}
 String (kata/untai) : suatu deretan berhingga dari simbol-simbol.
Contoh ‘a’, ‘k’ , ‘t’ adalah simbol dan ‘kata’, ‘katak’ adalah suatu
string.
 Panjang string : jumlah simbol yang membentuk string tersebut.
contoh
‘kata’ panjangnya 4, |w| = 4
“katak’ panjangnya 5, |w| = 5
 String kosong = Ɛ (epsilon), panjangnya |Ɛ| = 0.
Konsep Bahasa dan Otomata Cont..
 Bahasa : himpunan string-string dari simbol – simbol untuk
suatu alphabet.
 Bahasa Kosong = Ø
 Tata Bahasa (Grammar) : kumpulan dari himpunan-
himpunan variabel, simbol-simbol terminal, simbol awal,
yang dibatasi oleh aturan-aturan produksi.
Hirarki Chomsky

 Klasifikasi tata bahasa (grammar) :

Regular Unrestricted/Phase
(FSA : Bebas Konteks Context Sensitive Structure/Natural
DFA & (PDA) (LBA) Language
NDFA) Mesin Turing

 Pada hiraki ini terdapat Batasan Aturan Produksi.


Otomata
 Otomata merupakan suatu sistem yang terdiri atas
sejumlah berhingga state, dimana state menyatakan
infomasi mengenai input yang lalu (memori).
Contoh Mesin Otomata Sederhana

 Kondisi string input mesin :


- ada : diterima; - adu : diterima; - add : ditolak

Mesin memiliki 6 state : {q0 , q1 , q2 , q3 , q4 , q5 }


q0 = state awal
{q3 , q4} = state akhir
{a,d,u} = himpunan simbol
Teori Himpunan
Set/Himpunan
 Set/Himpunan: sekumpulan
objek/elemen/member
 Contoh: A = {0,1}; B = {a, b, c}
 Infinite set: himpunan dengan jumlah anggota
yang tak terbatas
 Contoh:
 N = natural numbers = {1,2,3,…}
 Z = integers = {…,-2,-1,0,1,2,…}
 Empty set (himpunan kosong) dinotasikan dengan
 atau {}
Operasi Set/Himpunan [1]
 Union dari himpunan A dan B dinotasikan dengan
A  B adalah kumpulan/gabungan dari semua
elemen yang ada di A atau di B
Contoh : A = {1,2,3}
B = {2,4}
P = AB
Maka P = {1,2,3,4}
 Operasi  dapat dianalogikan sebagai penjumlahan,
dengan notasi berikut :
AB, dengan A v B, atau A + B
Operasi Set/Himpunan [2]
 Intersection dari himpunan A dan B dinotasikan
dengan A  B adalah kumpulan elemen yang menjadi
anggota A dan juga B sekaligus
 Contoh : A = {1,2,3}
B = {2,4}
C = {10,11}
P = AB
Maka P = {2}
 Untuk A C = 

Operasi  dapat dianalogikan sebagai perkalian dengan


notasi berikut:
A B, dengan A ^B, atau A.B
Operasi Set/Himpunan [3]
 Complement A dinotasikan Ā adalah semua objek
yang berada di dalam pembicaraan yang bukan
menjadi anggota himpunan A
Contoh : A = {1,2,3}
B = {2,4}
C = {10,11}
Maka A – B = {1,3}
B–C=
Operasi Set/Himpunan [4]

 A adalah subset dari B dinotasikan dengan A  B, terjadi jika


semua elemen A menjadi anggota himpunan B

 Power set dari A adalah himpunan semua subsets dari A


 Notasi power set dari A  p(A)
 Misal, A = {0,1}
 Power set dari A = p(A) = {, {0}, {1}, {0,1}}

 Kardinalitas dari sebuah himpunan adalah jumlah


elemen/anggota dari sebuah himpunan tersebut.
 Notasi kardinalitas dari himpunan A  |A|

 Kardinalitas dari power set himpunan A


 Dihitung dengan cara: |p(A)| = 2|A|
 Contoh: jika A = {0,1}  |p(A)| = 22 = 4
Fungsi dan Relasi [1]
 Sebuah fungsi akan menerima input dan selalu menghasilkan
sebuah nilai output.
 Komponen fungsi:
– Domain: daerah asal  himpunan input yang diperbolehkan
untuk suatu fungsi
– Kodomain: daerah kawan  himpunan yang merupakan
kemungkinan output sebuah fungsi
– Range: daerah hasil  himpunan output hasil dari suatu fungsi
 Fungsi disebut juga dengan pemetaan/mapping, di mana sebuah
fungsi akan memetakan domain ke kodomain, dengan
hasilnya adalah range.
 f : A  B artinya f adalah fungsi dengan domain A, kodomain
B, sehingga f(A) merupakan range dari fungsi f.
Contohnya, abs : Z  Z
Fungsi dan Relasi [2]
 Diberikan fungsi f : A  B
 Fungsi f disebut fungsi pada atau surjektif atau onto jika dan
hanya jika untuk sembarang b ∈ B terdapat paling tidak satu a
dalam domain A sehingga berlaku f(a) = b. Dengan kata lain,
pada suatu fungsi surjektif, kodomain sama dengan range-nya
(f(A) = B).
 Setiap anggota himpunan A mempunyai 1 kawan di B.
Fungsi dan Relasi [3]
 Diberikan fungsi f : A  B
 Fungsi f disebut fungsi satu-satu atau injektif atau into jika
dan hanya jika untuk sembarang a1 dan a2 ∈ A dengan a1 ≠
a2 berlaku f(a1) ≠ f(a2). Dengan kata lain, bila a1 = a2 maka
f(a1) = f(a2).
 Setiap anggota himpunan A memiliki 1 kawan di B yang tunggal
(hanya punya 1 pasangan dari A).
Fungsi dan Relasi [4]
 Diberikan fungsi f : A  B
 Fungsi f disebut fungsi bijektif atau korespondensi 1-1 jika
dan hanya jika untuk sembarang b ∈ B terdapat tepat satu a ∈
A sehingga f(a) = b, dan tidak ada anggota A yang tidak
terpetakan dalam B. Dengan kata lain, fungsi bijektif adalah
fungsi injektif dan sekaligus merupakan surjektif.
 Setiap anggota himpunan B mempunyai tepat satu kawan di A.
Graph [1]
 Sebuah graph adalah sekumpulan point/node
dengan garis-garis yang menghubungkan antar
node tersebut.

 Definisi
 G = (V,E),V: kumpulan node, E: kumpulan garis
 G = ({1,2,3,4}, {(1,2),(1,4),(1,3),(2,4),(3,4)})
Graph [2]

G dan G’

 Derajat dari node: derajat dari suatu node dihitung dari


jumlah busur yang terhubung dengan node itu. Contohnya,
derajat node 1 adalah 3.
 Subgraph: G’ = ({1,2,4}, {(1,2), (1,4), (2,4)})
 Jalur/Path: rangkaian node yang terhubung oleh busur.
Contohnya, (2,4,3)
 Sirkuit/Circle: jalur dengan start dan end node sama.
Contohnya, (1,2,4,1)
Graph [3]

 Tree: graph terhubung dengan tidak ada


circle/sirkuit
 Tree terdiri dari Root (akar), dan leaf (daun)
 Root : Simpul Tertinggi
 Leaf : Simpul yang tidak memiliki anak lagi
Graph [4]

 Graph Berarah: graph yang dihubungkan


dengan busur berarah (bukan sekedar garis)
Lebih Jauh tentang Konsep Utama TBO
 Pangkat suatu Alphabet
 k = himpunan untai-untai dengan panjang k
 Contoh diket  = {0,1}
 Maka 0 = {ε}
 1 = {0,1}
 2 = {00,01,10,11}
 Rentengan (Concatenation) Untai
 Misal x dan y adalah untai, maka xy melambangkan rentengan
untai x dan y sedangkan yx melambangkan rentengan untai y
dan x.
 Contoh : x = 01101 dan y = 110
 Maka xy = 01101110
 yx = 11001101
Aturan Produksi Hirarky Chomsky [1]
 Grade 0 Unrestricted
 Aturan : tidak ada
 Contoh : Abc  De
 Grade 1 Context Sensitive
 Aturan : |α| ≤ | β|
 Contoh : Ab  DeF
 CD  eF
 Sε
 AeF Mn ??
Aturan Produksi Hirarky Chomsky [2]
 Grade 2 Context Free
 Aturan : ruas kiri haruslah tepat satu simbol variabel
 Contoh : B  CDeFG
 D  BcDe
 Hi  JKl ???
 Grade 3 Regular Language
 Aturan : ruas kanan maksimal memiliki sebuah simbol variabel
yang terletak di paling kanan
 Contoh : A  e
 A  efg
 A  efgH
 AB
 A  bCD ???
latihan
Latihan 1
 Jika kita memiliki himpunan A = {1, 2, z}, maka powerset
dari A adalah ...

 Berapa kardinalitas dari powerset A?


Latihan 2
 Jika kita memiliki himpunan
 X = {x : x Є N (natural) dan x adalah bilangan
ganjil},
 Y = {y : y Є N (natural) dan y adalah bilangan
prima}, serta
 Z = {z : z Є N (natural), dan z adalah bilangan
kelipatan 3},
maka notasikan/deskripsikan hasil himpunan dari operasi
berikut.
a. X  Y adalah :
b.Y  Z adalah :
c. X  Y adalah :
Latihan 3
 Termasuk fungsi apakah di bawah ini?
Latihan 4
 Aturan Produksi
 Apakah produksi-produksi berikut memenuhi aturan
bahasa reguler :
 Ab
 B  bdB
 A  aSa
 B  bscdefG
 A  aSA
 Apakah produksi-produksi memnuhi aturan context free :
 A  aSa
 B  cdefG
 Ad  dB
 d A
 A  aSS
 Apakah produksi-produksi memnuhi aturan context sensitive :
 A  aSa
 B  cdefG
 Ad  dB
 Ab  A
 Sε
TUGAS
 Buat ringkasan tentang Konsep Bahasa dan Otomata,
Teori Pembuktian, Hirarky Chomsky dan Aturan
Produksi.
 Dikumpulkan melalui email
syahronihidayat788@gmail.com maksimal tanggal 6
oktober 2016, pukul 23:59, dengan format :
 kertas A4, margin 4-4-3-3, spasi 1,5, font TNR-12, sertakan
referensi, pdf
 nama file : NIM_NAMA_TBO_KELASX_TUGAS1

Anda mungkin juga menyukai