Diberi bahasa , bagaimana saya bisa mengatakan secara langsung, tanpa melihat aturan produksi, bahwa bahasa ini tidak teratur?
Saya bisa menggunakan memompa lemma tetapi beberapa orang mengatakan hanya melihat tata bahasa bahwa ini bukan yang biasa. Bagaimana itu mungkin?
Jawaban:
Properti utama DFA's / NFA's adalah kurangnya memori tidak terbatas. Jika Anda melihat bahasa dan satu-satunya algoritma (yang nantinya harus diterjemahkan ke dalam Finite Automaton) Anda dapat memikirkan untuk membutuhkan properti ini, yaitu, Anda merasa bahwa algoritma apa pun yang mengenalinya perlu mengingat banyak hal yang berubah-ubah. (seperti dalam contoh Anda) maka bahasa itu mungkin tidak teratur.n
Tentu saja, Anda harus selalu ingat bahwa intuisi matematis bisa salah, dan satu-satunya cara untuk memastikan intuisi Anda adalah dengan membuktikannya.
EDIT: Saya akan menjawab pertanyaan terakhir di komentar di sini, karena kurangnya ruang.
Semoga ini membuatnya sedikit lebih jelas.
sumber
Cara yang baik untuk menguji intuisi Anda adalah dengan melihat bahasa-bahasa ini:
Yang bebas konteks?
sumber
Anda benar-benar dapat memutuskan apakah suatu bahasa biasa menggunakan perhitungan yang cukup mudah, daripada melakukan pembuktian penuh. Anda hanya perlu menerapkan satu kriteria yang sangat kuat: Bahasa adalah biasa jika dan hanya jika memiliki banyak negosiasi.
sumber