SlideShare une entreprise Scribd logo
1  sur  19
TEORI BAHASA FORMAL
DANOTOMATA
OLEH:
SYAHID ABDILLAH(10650036)
RISAL FAHMI(10650039)
Suatu aturan yang meliputi bahasa pemrograman
dan bahasa matematis seperti aljabar dan logika
proposisi. Aturan tersebut akan mengkonstruksi
programming translator untuk bahasa
pemrograman.
Contoh:
Compiler untuk bahasa pemrograman
Apa itu Bahasa Formal ?
Suatu bahasa adalah suatu himpunan string, sehingga
dua hal penting untuk menspesifikasikan bahasa yaitu:
1. Jika diberikan spesifikasi suatu bahasa, secara
otomatis akan membangkitkan satu atau lebih
string di dalam bahasa itu.
2. Jika diberikan spesifikasi satu bahasa, tentukan
apakah suatu string tertentu akan termasuk di
dalam bahasa itu atau tidak.
Suatu tatabahasa struktur frasa dapat digunakan untuk
menspesifikasikan suatu bahasa yang terdiri dari 4
unsur:
 Himpunan terminal T >> simbol untuk membuat
kalimat di dalam bahasa, misalnya :
objek/benda dan kata sifat
 Himpunan non-terminal N >> lambang antara
yang digunakan untuk mendeskripsikan struktur
kalimat, misalnya: kalimat frasa dan kata
 Himpunan produksi P >> kaidah tatabahasa yang
mengatur bagaimana kalimat didalam bahasa itu
dapat dibentuk, misalnya: α  β, dalam hal ini α
dan β adalah rangkaian terminal dan non-terminal
 Di antara semua non-terminal di dalam N, ada
sebuah non-terminal khusus yang disebut sebagai
simbol awal (starting symbol).
Tatabahasa jenis-3 (type-3 grammar) jika semua
produksi didalam tatabahasa berbentuk :
A  a
A  aB atau A  Ba
Di dalam setiap produksi, string kirinya selalu berupa
sebuah non-terminal tunggal, sedangkan string
kanannya berupa sebuah terminal atau sebuah
terminal yang diikuti dengan sebuah non-terminal.
Tatabahasa jenis-2 (type-2 grammar) jika semua
produksi di dalam tatabahasa berbentuk : A a
Di dalam setiap produksi, string kirinya selalu berupa
non-terminal tunggal
Tatabahasa jenis-1 (type-1 grammar) jika semua produksi di
dalam tatabahasa berbentuk : α  β
Panjang β selalu lebih besar atau sama dengan α. Misalnya
produksi :
A  ab
A  aA
aAb  aBCb
Tatabahasa jenis-0 (type-0 grammar) yaitu tatabahasa struktur
frasa tanpa pembatasan seperti yang telah didefinisikan oleh
jenis 1,2, dan 3.
Semua bahasa pemrograman dapat dispesifikasi oleh
tatabahasa struktur frasa, dan kebanyakannya merupakan
bahasa jenis-2 (misalnya: Basic, Fortran, Pascal).
Otomata adalah suatu sistem yang memiliki fungsi-fungsi
dari komputer, menerima input, menghasilkan
output, memiliki penyimpan sementara, mampu membuat
keputusan dalam mentransformasikan input ke output.
Contoh :
Mesin Jaja / vending machine
Kunci kombinasi
Parser/compiler
Apa itu Otomata?
Otomata terhingga dan bahasa reguler (reguler
languages) adalah level terendah dari hirarki mesin
dan bahasa. Salah satu aplikasinya adalah konstruksi
pengkompilasi (compiler), yaitu pengenalan string
dari simbol di kode sumber program yang harus
direpresentasikan sebagai objek tunggal seperti
nama variabel, konstanta numerik, dan reserved
word.
Otomata terhingga
1
3
2
letter letter
digit
digit
Ciri-ciri:
1. Himpunan terhingga status-status S = {s0, s1, s2, …..}
2. Unsur khusus di dalam himpunan S, yaitu S0 yang dinamakan
status awal (initial state)
3. Himpunan terhingga huruf-huruf masukan I = {i0, i1, i2, …..}
4. Himpunan terhingga huruf-huruf keluaran O = {o0, o1, o2,
……}
5. Fungsi transisi (transition function) yaitu fungsi f dari S x I ke S
6. Fungsi keluaran (output function) yaitu fungsi g dari S ke O
Mesin Status Terhingga
(finite-state machine)
Mesin
Pemroses
Informasi
Mesin Pemroses Informasi
KeluaranSinyal (huruf)
Masukan
Mesin status terhingga dapat digunakan untuk memodelkan
suatu sistem fisik, seperti contoh vending machine
Mesin Status Terhingga sebagai
Model Sistem Fisik
A
O
C
2
B
1
1
2
2
1
1
2
0
0
0

Mesin status terhingga dapat digunakan untuk memodelkan
suatu alat untuk mengenali (menerima) kalimat-kalimat di
dalam suatu bahasa
Mesin Status Terhingga sebagai
Model Sistem Fisik
Pada tahun 1936 seorang matematikawan berkebangsaan
Inggris bernama AlanTuring, mengusulkan suatu model
sederhana yang mempunyai kemampuan sebuah komputer
general-purpose. MesinTuring mengenal kelas bahasa yang
disebut sebagai himpunan ter-enumerasi rekursif (recursively
enumerable set), selain itu mesinTuring juga dapat digunakan
untuk menghitung kelas fungsi bilangan bulat yang dikenal
sebagai fungsi rekusif parsial (partial recursive function).
Mesin Turing
a1 A2 … an B B B ….
Finite State Control
Head baca/tulis B = blank (spasi)
Model Mesin Turing ditunjukkan pada gambar, dan terdiri dari
komponen-komponen berikut :
1. Pengendali status terhingga (finite state control)
2. Pita msukan dengan sifat :
> panjangnya tak terhingga (dari ujung kiri tebatas ujung
kanan tidak terbatas)
> dapat dibaca dan ditulis
Pada keadaan awal n sel pertama dari pita masukan berisi
rangkaian simbol yang harus dikenali. Sel-sel lain disebelah
kanan rangkaian simbol berisi simbol kosong
Perilaku mesin Turing tergantung pada simbol masukan yang berada pada
posisi kepala (head) baca/tulis dan status pengendalinya. Aksi-aksi yang
dapat dilakukan yaitu :
1. Berubah status
2. Menuliskan simbol pada sel pita masukan. Aksi penulisan ini akan
mengubah simbol yang sebelumnya berada pada sel tersebut
3. Menggerakkan head ke kiri atau ke kanan
Perilaku mesin Turing
Dengan :
Q : himpunan terhingga dari status
Σ : subset dari Γ, termasuk di dalamnya B, yang merupakan himpunan dari
simbol-simbol masukan
Γ : himpunan terhingga dari simbol-simbol yang muncul di pitaq
δ : fungsi pergerakan yang merupakan pemetaan dari A x Γ ke Q x Γ x
{L,R}2
q0 : satus awal anggota Q
B : anggota Γ, melambangkan simbol spasi ( blank )
F : himpunan status akhir
Deskripsi sesaat : α1qα2 menyatakan mesin yang berada pada status
q, dan α1α2 adalah simbol yang tertera pada pita. Jadi mesin sudah
membaca string α1 dan sedang membaca simbol paling kiri dari α2.
Notasi formal mesin Turing
M = (Q, Σ, Γ, δ, q0, B, F)

Contenu connexe

Tendances

Teori bahasaautomata
Teori bahasaautomataTeori bahasaautomata
Teori bahasaautomataas na
 
Bab 5 penyederhanaan fungsi boolean
Bab 5 penyederhanaan fungsi booleanBab 5 penyederhanaan fungsi boolean
Bab 5 penyederhanaan fungsi booleanCliquerz Javaneze
 
Pertemuan 02 teori dasar himpunan
Pertemuan 02   teori dasar himpunanPertemuan 02   teori dasar himpunan
Pertemuan 02 teori dasar himpunanFajar Istiqomah
 
Pertemuan 2-pemecahan-masalah-ai
Pertemuan 2-pemecahan-masalah-aiPertemuan 2-pemecahan-masalah-ai
Pertemuan 2-pemecahan-masalah-aiwillyhayon
 
Matematika Diskrit kombinatorial
Matematika Diskrit  kombinatorialMatematika Diskrit  kombinatorial
Matematika Diskrit kombinatorialSiti Khotijah
 
Finite State Automata - Materi 3 - TBO
Finite State Automata - Materi 3 - TBOFinite State Automata - Materi 3 - TBO
Finite State Automata - Materi 3 - TBOahmad haidaroh
 
Pumping Lemma-rl - Materi 5 - TBO
Pumping Lemma-rl - Materi 5 - TBOPumping Lemma-rl - Materi 5 - TBO
Pumping Lemma-rl - Materi 5 - TBOahmad haidaroh
 
Matematika Diskrit - 03 himpunan - 05
Matematika Diskrit - 03 himpunan - 05Matematika Diskrit - 03 himpunan - 05
Matematika Diskrit - 03 himpunan - 05KuliahKita
 
Materi Kuliah : Dasar pemrograman 1
Materi Kuliah : Dasar pemrograman 1Materi Kuliah : Dasar pemrograman 1
Materi Kuliah : Dasar pemrograman 1Braga Rezpect
 
Distribusi Seragam, Bernoulli, dan Binomial
Distribusi Seragam, Bernoulli, dan BinomialDistribusi Seragam, Bernoulli, dan Binomial
Distribusi Seragam, Bernoulli, dan BinomialSilvia_Al
 
Mata Kuliah Basis Data
Mata Kuliah Basis DataMata Kuliah Basis Data
Mata Kuliah Basis DataMr. Nugraha
 
Ragam Dialog :: Interaksi Manusia dan Komputer
Ragam Dialog :: Interaksi Manusia dan KomputerRagam Dialog :: Interaksi Manusia dan Komputer
Ragam Dialog :: Interaksi Manusia dan KomputerAuliaa Oktarianii
 
Matematika Diskrit - 05 rekursi dan relasi rekurens - 01
Matematika Diskrit - 05 rekursi dan relasi rekurens - 01Matematika Diskrit - 05 rekursi dan relasi rekurens - 01
Matematika Diskrit - 05 rekursi dan relasi rekurens - 01KuliahKita
 
Tabel padanan bilangan Desimal, Biner, Oktal dan Heksadesimal
Tabel padanan bilangan Desimal, Biner, Oktal dan HeksadesimalTabel padanan bilangan Desimal, Biner, Oktal dan Heksadesimal
Tabel padanan bilangan Desimal, Biner, Oktal dan HeksadesimalMustahal SSi
 
Laporan Praktikum Algoritma
Laporan Praktikum AlgoritmaLaporan Praktikum Algoritma
Laporan Praktikum AlgoritmaEnvaPya
 

Tendances (20)

02.logika
02.logika02.logika
02.logika
 
Teori bahasaautomata
Teori bahasaautomataTeori bahasaautomata
Teori bahasaautomata
 
Bab 5 penyederhanaan fungsi boolean
Bab 5 penyederhanaan fungsi booleanBab 5 penyederhanaan fungsi boolean
Bab 5 penyederhanaan fungsi boolean
 
Pertemuan 02 teori dasar himpunan
Pertemuan 02   teori dasar himpunanPertemuan 02   teori dasar himpunan
Pertemuan 02 teori dasar himpunan
 
Prosessor SAP 1
Prosessor SAP 1Prosessor SAP 1
Prosessor SAP 1
 
Pertemuan 2-pemecahan-masalah-ai
Pertemuan 2-pemecahan-masalah-aiPertemuan 2-pemecahan-masalah-ai
Pertemuan 2-pemecahan-masalah-ai
 
2 alfabet dan string
2 alfabet dan string2 alfabet dan string
2 alfabet dan string
 
Matematika Diskrit kombinatorial
Matematika Diskrit  kombinatorialMatematika Diskrit  kombinatorial
Matematika Diskrit kombinatorial
 
Finite State Automata - Materi 3 - TBO
Finite State Automata - Materi 3 - TBOFinite State Automata - Materi 3 - TBO
Finite State Automata - Materi 3 - TBO
 
Pumping Lemma-rl - Materi 5 - TBO
Pumping Lemma-rl - Materi 5 - TBOPumping Lemma-rl - Materi 5 - TBO
Pumping Lemma-rl - Materi 5 - TBO
 
Matematika Diskrit - 03 himpunan - 05
Matematika Diskrit - 03 himpunan - 05Matematika Diskrit - 03 himpunan - 05
Matematika Diskrit - 03 himpunan - 05
 
2 ruang keadaan
2 ruang keadaan2 ruang keadaan
2 ruang keadaan
 
Materi Kuliah : Dasar pemrograman 1
Materi Kuliah : Dasar pemrograman 1Materi Kuliah : Dasar pemrograman 1
Materi Kuliah : Dasar pemrograman 1
 
relasi himpunan
relasi himpunanrelasi himpunan
relasi himpunan
 
Distribusi Seragam, Bernoulli, dan Binomial
Distribusi Seragam, Bernoulli, dan BinomialDistribusi Seragam, Bernoulli, dan Binomial
Distribusi Seragam, Bernoulli, dan Binomial
 
Mata Kuliah Basis Data
Mata Kuliah Basis DataMata Kuliah Basis Data
Mata Kuliah Basis Data
 
Ragam Dialog :: Interaksi Manusia dan Komputer
Ragam Dialog :: Interaksi Manusia dan KomputerRagam Dialog :: Interaksi Manusia dan Komputer
Ragam Dialog :: Interaksi Manusia dan Komputer
 
Matematika Diskrit - 05 rekursi dan relasi rekurens - 01
Matematika Diskrit - 05 rekursi dan relasi rekurens - 01Matematika Diskrit - 05 rekursi dan relasi rekurens - 01
Matematika Diskrit - 05 rekursi dan relasi rekurens - 01
 
Tabel padanan bilangan Desimal, Biner, Oktal dan Heksadesimal
Tabel padanan bilangan Desimal, Biner, Oktal dan HeksadesimalTabel padanan bilangan Desimal, Biner, Oktal dan Heksadesimal
Tabel padanan bilangan Desimal, Biner, Oktal dan Heksadesimal
 
Laporan Praktikum Algoritma
Laporan Praktikum AlgoritmaLaporan Praktikum Algoritma
Laporan Praktikum Algoritma
 

En vedette

Pendahuluan - Materi 1 - TBO
Pendahuluan - Materi 1 - TBOPendahuluan - Materi 1 - TBO
Pendahuluan - Materi 1 - TBOahmad haidaroh
 
Konsepsentral - Materi 2 - TBO
Konsepsentral - Materi 2 - TBOKonsepsentral - Materi 2 - TBO
Konsepsentral - Materi 2 - TBOahmad haidaroh
 
Teori otomata dan bahasa
Teori otomata dan bahasa Teori otomata dan bahasa
Teori otomata dan bahasa Nur Rohman
 
Teori bahas automata
Teori bahas automataTeori bahas automata
Teori bahas automataRenol Doang
 
soal-latihan-logika-algoritma-semester1
soal-latihan-logika-algoritma-semester1soal-latihan-logika-algoritma-semester1
soal-latihan-logika-algoritma-semester1Budi Kurniawan
 
Teori bahasa otomata pertemuan 5
Teori bahasa otomata pertemuan 5Teori bahasa otomata pertemuan 5
Teori bahasa otomata pertemuan 5nhiyabelle
 

En vedette (9)

Pendahuluan - Materi 1 - TBO
Pendahuluan - Materi 1 - TBOPendahuluan - Materi 1 - TBO
Pendahuluan - Materi 1 - TBO
 
Konsepsentral - Materi 2 - TBO
Konsepsentral - Materi 2 - TBOKonsepsentral - Materi 2 - TBO
Konsepsentral - Materi 2 - TBO
 
Teori otomata dan bahasa
Teori otomata dan bahasa Teori otomata dan bahasa
Teori otomata dan bahasa
 
Teori Bahasa dan Otomata 1
Teori Bahasa dan Otomata 1Teori Bahasa dan Otomata 1
Teori Bahasa dan Otomata 1
 
Teori bahas automata
Teori bahas automataTeori bahas automata
Teori bahas automata
 
SLIDE KE-4 DFA
SLIDE KE-4 DFASLIDE KE-4 DFA
SLIDE KE-4 DFA
 
soal-latihan-logika-algoritma-semester1
soal-latihan-logika-algoritma-semester1soal-latihan-logika-algoritma-semester1
soal-latihan-logika-algoritma-semester1
 
Program Kerja
Program KerjaProgram Kerja
Program Kerja
 
Teori bahasa otomata pertemuan 5
Teori bahasa otomata pertemuan 5Teori bahasa otomata pertemuan 5
Teori bahasa otomata pertemuan 5
 

Similaire à Teori bahasa formal dan Otomata

Bahasa Pmrograman
Bahasa PmrogramanBahasa Pmrograman
Bahasa Pmrogramandanitkja
 
Teori bahasa otomata pertemuan 2
Teori bahasa otomata pertemuan 2Teori bahasa otomata pertemuan 2
Teori bahasa otomata pertemuan 2nhiyabelle
 
Tugas Powerpoint Pemrograman Dasar
Tugas Powerpoint Pemrograman DasarTugas Powerpoint Pemrograman Dasar
Tugas Powerpoint Pemrograman DasarHelen Handa Mukti
 
tugas produktf
tugas produktftugas produktf
tugas produktfaryakbar00
 
Pertemuan 2 dan 3.pdf (Academic Teknologi)
Pertemuan 2 dan 3.pdf (Academic Teknologi)Pertemuan 2 dan 3.pdf (Academic Teknologi)
Pertemuan 2 dan 3.pdf (Academic Teknologi)DAVIDSTEVENSONSIMBOL
 
Algoritma pertemuan 1
Algoritma pertemuan 1Algoritma pertemuan 1
Algoritma pertemuan 1ysvcyber
 
2 konsep dasar pascal
2   konsep dasar pascal2   konsep dasar pascal
2 konsep dasar pascalachieasik89
 
Algoritma dan Pemrograman
Algoritma dan PemrogramanAlgoritma dan Pemrograman
Algoritma dan PemrogramanDiana Anggraini
 
Presentasi pemograman dasar 2
Presentasi pemograman dasar 2Presentasi pemograman dasar 2
Presentasi pemograman dasar 2F. Bagus TKJa
 
Faris persentasi
Faris persentasiFaris persentasi
Faris persentasisetiwan
 
dasar-pemrograman-ii.ppt
dasar-pemrograman-ii.pptdasar-pemrograman-ii.ppt
dasar-pemrograman-ii.pptssuser2d66be1
 
dasar-pemrograman-ii.ppt
dasar-pemrograman-ii.pptdasar-pemrograman-ii.ppt
dasar-pemrograman-ii.pptDindinmuss
 

Similaire à Teori bahasa formal dan Otomata (20)

Algoritma 02
Algoritma 02Algoritma 02
Algoritma 02
 
Bahasa Pmrograman
Bahasa PmrogramanBahasa Pmrograman
Bahasa Pmrograman
 
Teori bahasa otomata pertemuan 2
Teori bahasa otomata pertemuan 2Teori bahasa otomata pertemuan 2
Teori bahasa otomata pertemuan 2
 
Tugas Powerpoint Pemrograman Dasar
Tugas Powerpoint Pemrograman DasarTugas Powerpoint Pemrograman Dasar
Tugas Powerpoint Pemrograman Dasar
 
Modul pd
Modul pdModul pd
Modul pd
 
Tugas pak joko
Tugas pak jokoTugas pak joko
Tugas pak joko
 
tugas produktf
tugas produktftugas produktf
tugas produktf
 
Wisnu
WisnuWisnu
Wisnu
 
Pertemuan 2 dan 3.pdf (Academic Teknologi)
Pertemuan 2 dan 3.pdf (Academic Teknologi)Pertemuan 2 dan 3.pdf (Academic Teknologi)
Pertemuan 2 dan 3.pdf (Academic Teknologi)
 
Algoritma pertemuan 1
Algoritma pertemuan 1Algoritma pertemuan 1
Algoritma pertemuan 1
 
Algo 1 2
Algo 1 2Algo 1 2
Algo 1 2
 
2 konsep dasar pascal
2   konsep dasar pascal2   konsep dasar pascal
2 konsep dasar pascal
 
Struktur compiler session 4
Struktur compiler session 4Struktur compiler session 4
Struktur compiler session 4
 
Algoritma dan Pemrograman
Algoritma dan PemrogramanAlgoritma dan Pemrograman
Algoritma dan Pemrograman
 
Presentasi pemograman dasar 2
Presentasi pemograman dasar 2Presentasi pemograman dasar 2
Presentasi pemograman dasar 2
 
Faris persentasi
Faris persentasiFaris persentasi
Faris persentasi
 
Pascal buku
Pascal bukuPascal buku
Pascal buku
 
2 konsep dasar pascal
2   konsep dasar pascal2   konsep dasar pascal
2 konsep dasar pascal
 
dasar-pemrograman-ii.ppt
dasar-pemrograman-ii.pptdasar-pemrograman-ii.ppt
dasar-pemrograman-ii.ppt
 
dasar-pemrograman-ii.ppt
dasar-pemrograman-ii.pptdasar-pemrograman-ii.ppt
dasar-pemrograman-ii.ppt
 

Plus de Risal Fahmi

Epistimologi irfani
Epistimologi irfaniEpistimologi irfani
Epistimologi irfaniRisal Fahmi
 
Epistemologi Irfani
Epistemologi IrfaniEpistemologi Irfani
Epistemologi IrfaniRisal Fahmi
 
Membuat kalkulator penilaian Sederhana Java
Membuat kalkulator penilaian Sederhana JavaMembuat kalkulator penilaian Sederhana Java
Membuat kalkulator penilaian Sederhana JavaRisal Fahmi
 
Abu Ja'far Al Khazin
Abu Ja'far Al KhazinAbu Ja'far Al Khazin
Abu Ja'far Al KhazinRisal Fahmi
 
Makalah mengenai Surat al fatihah
Makalah mengenai Surat al fatihahMakalah mengenai Surat al fatihah
Makalah mengenai Surat al fatihahRisal Fahmi
 
Kabupaten Mojokerto
Kabupaten MojokertoKabupaten Mojokerto
Kabupaten MojokertoRisal Fahmi
 

Plus de Risal Fahmi (6)

Epistimologi irfani
Epistimologi irfaniEpistimologi irfani
Epistimologi irfani
 
Epistemologi Irfani
Epistemologi IrfaniEpistemologi Irfani
Epistemologi Irfani
 
Membuat kalkulator penilaian Sederhana Java
Membuat kalkulator penilaian Sederhana JavaMembuat kalkulator penilaian Sederhana Java
Membuat kalkulator penilaian Sederhana Java
 
Abu Ja'far Al Khazin
Abu Ja'far Al KhazinAbu Ja'far Al Khazin
Abu Ja'far Al Khazin
 
Makalah mengenai Surat al fatihah
Makalah mengenai Surat al fatihahMakalah mengenai Surat al fatihah
Makalah mengenai Surat al fatihah
 
Kabupaten Mojokerto
Kabupaten MojokertoKabupaten Mojokerto
Kabupaten Mojokerto
 

Teori bahasa formal dan Otomata

  • 1. TEORI BAHASA FORMAL DANOTOMATA OLEH: SYAHID ABDILLAH(10650036) RISAL FAHMI(10650039)
  • 2.
  • 3. Suatu aturan yang meliputi bahasa pemrograman dan bahasa matematis seperti aljabar dan logika proposisi. Aturan tersebut akan mengkonstruksi programming translator untuk bahasa pemrograman. Contoh: Compiler untuk bahasa pemrograman Apa itu Bahasa Formal ?
  • 4. Suatu bahasa adalah suatu himpunan string, sehingga dua hal penting untuk menspesifikasikan bahasa yaitu: 1. Jika diberikan spesifikasi suatu bahasa, secara otomatis akan membangkitkan satu atau lebih string di dalam bahasa itu. 2. Jika diberikan spesifikasi satu bahasa, tentukan apakah suatu string tertentu akan termasuk di dalam bahasa itu atau tidak.
  • 5. Suatu tatabahasa struktur frasa dapat digunakan untuk menspesifikasikan suatu bahasa yang terdiri dari 4 unsur:  Himpunan terminal T >> simbol untuk membuat kalimat di dalam bahasa, misalnya : objek/benda dan kata sifat  Himpunan non-terminal N >> lambang antara yang digunakan untuk mendeskripsikan struktur kalimat, misalnya: kalimat frasa dan kata  Himpunan produksi P >> kaidah tatabahasa yang mengatur bagaimana kalimat didalam bahasa itu dapat dibentuk, misalnya: α  β, dalam hal ini α dan β adalah rangkaian terminal dan non-terminal  Di antara semua non-terminal di dalam N, ada sebuah non-terminal khusus yang disebut sebagai simbol awal (starting symbol).
  • 6. Tatabahasa jenis-3 (type-3 grammar) jika semua produksi didalam tatabahasa berbentuk : A  a A  aB atau A  Ba Di dalam setiap produksi, string kirinya selalu berupa sebuah non-terminal tunggal, sedangkan string kanannya berupa sebuah terminal atau sebuah terminal yang diikuti dengan sebuah non-terminal. Tatabahasa jenis-2 (type-2 grammar) jika semua produksi di dalam tatabahasa berbentuk : A a Di dalam setiap produksi, string kirinya selalu berupa non-terminal tunggal
  • 7. Tatabahasa jenis-1 (type-1 grammar) jika semua produksi di dalam tatabahasa berbentuk : α  β Panjang β selalu lebih besar atau sama dengan α. Misalnya produksi : A  ab A  aA aAb  aBCb Tatabahasa jenis-0 (type-0 grammar) yaitu tatabahasa struktur frasa tanpa pembatasan seperti yang telah didefinisikan oleh jenis 1,2, dan 3. Semua bahasa pemrograman dapat dispesifikasi oleh tatabahasa struktur frasa, dan kebanyakannya merupakan bahasa jenis-2 (misalnya: Basic, Fortran, Pascal).
  • 8.
  • 9. Otomata adalah suatu sistem yang memiliki fungsi-fungsi dari komputer, menerima input, menghasilkan output, memiliki penyimpan sementara, mampu membuat keputusan dalam mentransformasikan input ke output. Contoh : Mesin Jaja / vending machine Kunci kombinasi Parser/compiler Apa itu Otomata?
  • 10. Otomata terhingga dan bahasa reguler (reguler languages) adalah level terendah dari hirarki mesin dan bahasa. Salah satu aplikasinya adalah konstruksi pengkompilasi (compiler), yaitu pengenalan string dari simbol di kode sumber program yang harus direpresentasikan sebagai objek tunggal seperti nama variabel, konstanta numerik, dan reserved word. Otomata terhingga
  • 12. Ciri-ciri: 1. Himpunan terhingga status-status S = {s0, s1, s2, …..} 2. Unsur khusus di dalam himpunan S, yaitu S0 yang dinamakan status awal (initial state) 3. Himpunan terhingga huruf-huruf masukan I = {i0, i1, i2, …..} 4. Himpunan terhingga huruf-huruf keluaran O = {o0, o1, o2, ……} 5. Fungsi transisi (transition function) yaitu fungsi f dari S x I ke S 6. Fungsi keluaran (output function) yaitu fungsi g dari S ke O Mesin Status Terhingga (finite-state machine)
  • 14. Mesin status terhingga dapat digunakan untuk memodelkan suatu sistem fisik, seperti contoh vending machine Mesin Status Terhingga sebagai Model Sistem Fisik A O C 2 B 1 1 2 2 1 1 2 0 0 0 
  • 15. Mesin status terhingga dapat digunakan untuk memodelkan suatu alat untuk mengenali (menerima) kalimat-kalimat di dalam suatu bahasa Mesin Status Terhingga sebagai Model Sistem Fisik
  • 16. Pada tahun 1936 seorang matematikawan berkebangsaan Inggris bernama AlanTuring, mengusulkan suatu model sederhana yang mempunyai kemampuan sebuah komputer general-purpose. MesinTuring mengenal kelas bahasa yang disebut sebagai himpunan ter-enumerasi rekursif (recursively enumerable set), selain itu mesinTuring juga dapat digunakan untuk menghitung kelas fungsi bilangan bulat yang dikenal sebagai fungsi rekusif parsial (partial recursive function). Mesin Turing a1 A2 … an B B B …. Finite State Control Head baca/tulis B = blank (spasi)
  • 17. Model Mesin Turing ditunjukkan pada gambar, dan terdiri dari komponen-komponen berikut : 1. Pengendali status terhingga (finite state control) 2. Pita msukan dengan sifat : > panjangnya tak terhingga (dari ujung kiri tebatas ujung kanan tidak terbatas) > dapat dibaca dan ditulis Pada keadaan awal n sel pertama dari pita masukan berisi rangkaian simbol yang harus dikenali. Sel-sel lain disebelah kanan rangkaian simbol berisi simbol kosong
  • 18. Perilaku mesin Turing tergantung pada simbol masukan yang berada pada posisi kepala (head) baca/tulis dan status pengendalinya. Aksi-aksi yang dapat dilakukan yaitu : 1. Berubah status 2. Menuliskan simbol pada sel pita masukan. Aksi penulisan ini akan mengubah simbol yang sebelumnya berada pada sel tersebut 3. Menggerakkan head ke kiri atau ke kanan Perilaku mesin Turing
  • 19. Dengan : Q : himpunan terhingga dari status Σ : subset dari Γ, termasuk di dalamnya B, yang merupakan himpunan dari simbol-simbol masukan Γ : himpunan terhingga dari simbol-simbol yang muncul di pitaq δ : fungsi pergerakan yang merupakan pemetaan dari A x Γ ke Q x Γ x {L,R}2 q0 : satus awal anggota Q B : anggota Γ, melambangkan simbol spasi ( blank ) F : himpunan status akhir Deskripsi sesaat : α1qα2 menyatakan mesin yang berada pada status q, dan α1α2 adalah simbol yang tertera pada pita. Jadi mesin sudah membaca string α1 dan sedang membaca simbol paling kiri dari α2. Notasi formal mesin Turing M = (Q, Σ, Γ, δ, q0, B, F)