Saat melakukan tugas saat ini untuk bahasa formal dan kursus automata saya, saya agak terjebak pada latihan yang melibatkan bahasa unary (saya harap itu istilah yang tepat), yaitu, bahasa yang dibangun di atas satu huruf. Saya tidak ingin bertanya tentang latihan spesifik, tetapi tentang dugaan yang jauh lebih umum yang saya kemukakan:
Biarkan dan . Dugaan saya adalah:
Apakah pertanyaan ini pernah melihat perlakuan ilmiah sebelumnya? Apakah itu "jelas" benar / salah?
Bagi saya, jelas arah " " benar karena kita hanya dapat membangun DFA dengan menyatakan bahwa siklus melalui menyatakan setelah membaca melalui menyatakan dan menerima iff itu pada angka .
Jawaban:
Linear dekat, tetapi istilah teknis yang Anda cari adalah semilinear:, yaitu, gabungan terbatas dari set linier.
Setengah dari bukti ini adalah akibat wajar dari Teorema Parikh , yang mengatakan bahwa bahasa bebas konteks memiliki peta Parikh semi-linear (yaitu, himpunan vektor yang berisi kemunculan setiap huruf dalam alfabet).
Untuk bahasa unary, peta bahasa parikh adalah bahasa itu sendiri (yaitu setiap kata secara unik diidentifikasi oleh berapa banyak huruf yang dimilikinya), sehingga setiap bahasa reguler unary adalah semi-linear.
Setengah bukti lainnya menunjukkan bahwa Anda dapat membuat bahasa reguler yang berisi setiap set semi-linear unary. Ini membutuhkan sedikit usaha, tetapi tidak terlalu sulit jika Anda menggunakan ekspresi reguler:
sumber
Anda hampir benar. Anda perlu mempertimbangkan fakta bahwa Anda mungkin memiliki beberapa fungsi linear, seperti atau Anda mungkin memiliki bahasa yang terbatas, seperti L = { a k ∣ k = 4 n + 2 atau k = 13 } (Dalam kedua kasus, kami hanya mengambil penyatuan bahasa biasa, jadi semuanya berjalan seperti seharusnya.)
sumber