Teori otomata: Perbedaan antara revisi
Tidak ada ringkasan suntingan |
|||
Baris 61: | Baris 61: | ||
L(G2)={a, aa, aaa, aaaa,…} |
L(G2)={a, aa, aaa, aaaa,…} |
||
== Otomata Berhingga == |
|||
bisa bantu ga?? |
|||
== Definisi Formal == |
== Definisi Formal == |
Revisi per 8 April 2013 10.59
![]() | artikel ini perlu dirapikan agar memenuhi standar Wikipedia. |
Teori Otomata adalah teori mengenai mesin-mesin abstrak, dan berkaitan erat dengan teori bahasa formal. ada beberapa hal yang berkaitan dengan Otomata, yaitu Grammar. Grammar adalah bentuk abstrak yang dapat diterima (accept) untuk membangkitkan suatu kalimat otomata berdasarkan suatu aturan tertentu.
Konsep Dasar
• Anggota alfabet dinamakan simbol terminal.
• Kalimat adalah deretan hingga simbol-simbol terminal.
• Bahasa adalah himpunan kalimat-kalimat. Anggota bahasa bisa tak hingga kalimat.
• Simbol-simbol berikut adalah simbol terminal :
- huruf kecil, misalnya : a, b, c
- simbol operator, misalnya : +, , dan *
- simbol tanda baca, misalnya : (, ), dan ;
- simbol tanda baca, misalnya : (, ), dan ;
- string yang tercetak tebal, misalnya : if, then, dan else.
• Simbol-simbol berikut adalah simbol non terminal /Variabel :
- huruf besar, misalnya : A, B, C
- huruf S sebagai simbol awal
- string yang tercetak miring, misalnya : expr
• Huruf yunani melambangkan string yang tersusun atas simbol-simbol terminal atau simbol-simbol non terminal atau campuran keduanya, misalnya : α,β, dan ε
• Sebuah produksi dilambangkan sebagai α --> β, artinya : dalam sebuah derivasi dapat dilakukan penggantian simbol α dengan simbol β.
• Derivasi adalah proses pembentukan sebuah kalimat atau sentensial. Sebuah derivasi dilambangkan sebagai : α ==> β.
• Sentensial adalah string yang tersusun atas simbol-simbol terminal atau simbol-simbol non terminal atau campuran keduanya.
• Kalimat adalah string yang tersusun atas simbol-simbol terminal. Kalimat adalah merupakan sentensial, sebaliknya belum tentu.. Grammar :
Grammar G didefinisikan sebagai pasangan 4 tuple : Vt , Vn , S, dan P, dan dituliskan sebagai G(Vt , Vn , S, P), dimana :
Vt : himpunan simbol-simbol terminal (alfabet) = kamus
Vn : himpunan simbol-simbol non terminal
S C V : simbol awal (atau simbol start)
P : himpunan produksi
Contoh :
1. G1 : VT = {I, want, need, You}, V = {S,A,B,C}, P = {S --> ABC, A--> I, B--> want | need, C--> You}
S --> ABC
--> IwantYou
L(G1)={IwantYou,IneedYou}
2. . G2 : VT = {a}, V = {S}, P = {S aS | a}
S --> aS
--> aaS --> aaa L(G2) ={an --> n ≥ 1}
L(G2)={a, aa, aaa, aaaa,…}
Definisi Formal
Otomata adalah sebuah 5-tupel :
- adalah himpunan berhingga dari state,
- adalah himpunan simbol-simbol,
- adalah fungsi transisi
- adalah simbol awal
- adalah state akhir
Jenis-jenis Otomata Berhingga
Otomata Berhingga Deterministik
Otomata berhingga deterministik (DFA - Deterministic Finite Automata) adalah sebuah otomata yang fungsi transisinya adalah:
Otomata Berhingga Non-Deterministik
Otomata berhingga non-deterministik (NFA - Nondeterministic Finite Automata) berbeda dengan DFA dalam hal fungsi transisinya:
Fungsi transisi dalam NFA memetakan pasangan dan kepada himpunan kuasa dari Q. Fungsi transisi yang didefinisikan seperti ini memungkinkan suatu simbol masukan untuk mengakibatkan transisi dari sebuah state ke beberapa kemungkinan state yang lain.
Otomata Pushdown
Otomata Pushdown adalah salah satu varian otomata dengan 7-tupel , di mana:
- adalah himpunan berhingga dari state,
- adalah himpunan simbol-simbol,
- adalah simbol awal
- adalah state akhir
Ditambah dengan dua unsur, untuk menangani stack:
- adalah himpunan berhingga simbol-simbol stack,
- adalah simbol awal stack,
Dengan fungsi transisinya adalah
- adalah fungsi transisi
Otomata Terbatas Linear
Mesin Turing
Hubungan dengan Tata Bahasa
Setiap otomata berhingga dapat digunakan untuk mengenali bahasa tertentu.
Referensi
- John E. Hopcroft, Jeffrey D. Ullman - Introduction to Automata Theory, Languages, and Computation