Back to IF2224 Teori Bahasa Formal dan Otomata
Topic: Studi Kasus dan Trace Mesin Turing (Bagian 2)
Questions/Cues
Strategi
Definisi State
Logika Transisi
Tabel Transisi
Trace Eksekusi
Penanganan Reject
Reference Points
- Slide 14_2025: Hal 12 - 15
1. Strategi Pengenalan Bahasa
Mesin Turing mengenali bahasa ini dengan melakukan pemetaan korespondensi satu-ke-satu antara simbol ‘0’ dan ‘1’.
Langkah-langkah operasional:
Mencari simbol ‘0’ paling kiri yang belum diproses, lalu mengubahnya menjadi simbol penanda ‘X’.
Bergerak ke kanan melewati sisa ‘0’ dan simbol ‘Y’ untuk menemukan ‘1’ paling kiri yang belum diproses.
Mengubah ‘1’ tersebut menjadi simbol penanda ‘Y’.
Bergerak kembali ke kiri hingga menemukan simbol ‘X’ terakhir untuk mencari ‘0’ berikutnya.
Mengulangi siklus hingga semua ‘0’ dan ‘1’ telah ditandai.
2. Definisi State dalam Mesin
(Start/Search 0): Mencari simbol ‘0’. Jika menemukan ‘Y’, beralih ke mode pengecekan akhir ().
(Search 1): Bergerak ke kanan melewati ‘0’ atau ‘Y’ untuk mencari pasangan ‘1’.
(Return): Bergerak ke kiri melewati ‘0’ atau ‘Y’ untuk kembali ke posisi ‘X’ terakhir.
(Check Final): Memastikan tidak ada lagi simbol ‘1’ yang tersisa setelah semua ‘0’ habis.
(Accept): State akhir yang menandakan string diterima.
3. Logika Transisi Utama
: Menandai ‘0’ dengan ‘X’, mulai mencari ‘1’.
: Menandai ‘1’ dengan ‘Y’, mulai kembali ke kiri.
: Menemukan batas kiri proses, kembali ke state awal untuk iterasi berikutnya.
: Semua ‘0’ sudah ditandai, verifikasi sisa sel.
: Menemukan simbol Blank tanpa ada ‘1’ tersisa, string diterima.
4. Trace Komputasi String “0011”
Proses transisi konfigurasi (ID):
(Start)
(0 pertama jadi X)
(Lewati 0)
(1 pertama jadi Y, balik kiri)
(Kembali ke posisi start)
(0 kedua jadi X, lewati Y)
(1 kedua jadi Y, balik kiri)
(Cek akhir, semua Y dilewati)
(ACCEPT)
Pengoperasian MT untuk bahasa dilakukan dengan metode penandaan simbol secara berpasangan. Simbol ‘0’ diubah menjadi ‘X’ dan ‘1’ diubah menjadi ‘Y’. Mesin bergerak bolak-balik (zig-zag) untuk memastikan setiap ‘0’ memiliki tepat satu pasangan ‘1’. State mesin secara spesifik mengatur kapan harus mencari, kapan harus kembali, dan kapan harus melakukan verifikasi akhir sebelum mencapai final state ().
Additional Information
Penanganan Kesalahan (Reject)
Mesin Turing akan berhenti dan menolak (reject) jika:
Di state , mesin menemukan simbol Blank () sebelum menemukan simbol ‘1’ (jumlah ‘0’ lebih banyak).
Di state , mesin menemukan simbol ‘1’ (jumlah ‘1’ lebih banyak).
Menemukan urutan simbol yang salah (misal ‘1’ muncul sebelum ‘0’ pada awal proses).
Diagram Transisi
Perlu diperhatikan bahwa pada diagram transisi, self-loop pada untuk simbol dan sangat penting agar head bisa melompati simbol-simbol yang sudah diproses atau simbol sejenis untuk mencapai target di ujung kanan.
Sumber & Referensi Lanjutan:
- Slide 14_2025 IF 2124 ITB (Hal 12-15).
Spaced Repetition Questions (Review)
1. Mengapa diperlukan state $q_3$ dalam desain MT $\{0^n 1^n\}$?
Untuk memastikan bahwa setelah semua ‘0’ habis diubah menjadi ‘X’, tidak ada lagi simbol ‘1’ yang tersisa di sebelah kanan simbol ‘Y’.
2. Apa fungsi simbol 'X' dan 'Y' dalam komputasi ini?
Sebagai penanda (markers) bahwa simbol input tersebut sudah diproses/dihitung, sehingga mesin tidak memproses simbol yang sama berulang kali.
3. Apa arah pergerakan head saat state $q_2$?
Kiri (Left), karena fungsinya adalah mengembalikan head ke posisi ‘X’ terakhir untuk memulai pencarian ‘0’ berikutnya.