Яка кількість мов, прийнятих DFA розміром


19

Питання є простим і прямим: для фіксованого , скільки (різних) мов приймається DFA розміром (тобто держав)? Я офіційно зазначу це:nnn

Визначте DFA як , де все як завжди, і δ : Q × Σ Q є (можливо, частковою) функцією. Нам потрібно це встановити, оскільки іноді лише загальні функції вважаються дійсними.(Q,Σ,δ,q0,F)δ:Q×ΣQ

Для кожного визначте (еквівалентність) відношення n на множині всіх DFA як: A n B, якщо | А | = | Б | = n і L ( A ) = L ( B ) .n1nAnB|A|=|B|=nL(A)=L(B)

Тоді питання: для даного , що таке індекс n ? Тобто, який розмір множини { L ( A ) A  - DFA розміру  n } ?nn{L(A)A is a DFA of size n}

Навіть коли є тотальною функцією, це не здається простим підрахунком (принаймні для мене). Графік може бути не підключений, і стани в підключеному компоненті, що містить початковий стан, можуть бути прийнятими, тому, наприклад, існує багато графіків розміром n, що приймають Σ . Те саме з іншими тривіальними комбінаціями для порожньої мови та інших мов, мінімальний показник DFA має менше, ніж n держав.δnΣn

(Наївна) рекурсія теж не працює. Якщо ми візьмемо DFA розміром і додамо новий стан, тоді, якщо ми хочемо зберегти детермінізм і зробити новий графік з'єднаним (щоб спробувати уникнути тривіальних випадків), нам доведеться видалити перехід для підключення нового стану, але в такому випадку ми можемо втратити мову оригіналу.k

Будь-які думки?

Примітка. Я знову оновив запитання, формальною заявою та без попередніх відволікаючих елементів.


Просто для уточнення: Ви маєте на увазі "скільки різних мов можна визначити, використовуючи станів?", Де мова визначається за допомогою n держав, якщо є DFA з n станами, які приймають її. Також для регулярних виразів регулярний вираз "a * aaaaaa", безумовно, має> 1 конкатенації, але DFA потребує лише одного стану (два, якщо вам потрібна окрема раковина), ні? nnn
Євгеній Торстенсен

Вибачення: Для прикладу регулярного вираження це має бути "a a a a a *", оскільки це дозволяє будь-яке число.
Євгеній Торстенсен

Визначення видається дуже пов'язаним з поняттям "глибина крапки", за винятком того, що концепція зазвичай застосовується до мов, що не містять зірок (можливо, з причин, які @Evgenij Thorstensen окреслив). c(r)
mhum

1
Тривіальне спостереження: станів можна використовувати для визначення принаймні 2 n різних мов. n+12n
Євгеній Торстенсен

2
Ми можемо отримати трохи більше, тому здається нормальним. Але кількість n-державних автоматів становить приблизно n c n 2 n = 2 c n log n + n = 2 Θ ( n log n ) (якщо вважати | Σ | = c ). Чи можемо ми отримати 2 ω ( n ) ? 2Ω(n)ncn2n=2cnlogn+n=2Θ(nlogn)|Σ|=c2ω(n)
Каве

Відповіді:


20

Я думаю, що це питання було вивчено раніше. Майк Домарацькі написав опитування про дослідження в цій галузі: "Перелік формальних мов", Бик. EATCS, vol. 89 (червень 2006 р.), 113-133: http://www.eatcs.org/images/bulletin/beatcs89.pdf


4
gk(n)

1
gk(n)fk(n)nk

6
g1(n)1n10g2(n)1n6g3(n)1n4
Використовуючи наш веб-сайт, ви визнаєте, що прочитали та зрозуміли наші Політику щодо файлів cookie та Політику конфіденційності.
Licensed under cc by-sa 3.0 with attribution required.