Експоненціальний поділ між NFA та DFA за наявності союзів


15

Нещодавно було задано цікаве запитання та згодом його видалили.

Для звичайної мови L її складність DFA - це розмір мінімальної DFA, що приймає її, а її складність NFA - це розмір мінімальної NFA, що приймає її. Загальновідомо, що між двома складностями існує експоненціальне розділення, принаймні, коли розмір алфавіту не обмежений. Дійсно, розглянемо мову Ln над алфавітом {1,…,n} що складається з усіх слів, що не містять усіх символів. За допомогою теореми Міхілла-Нерода легко обчислити складність DFA 2n . З іншого боку, складність NFA становить лише n(якщо дозволено кілька початкових станів; інакше це ).n+1

Вилучений питання стосувалося DFA покриття складності на мові, який є мінімальним така , що L можна записати в вигляді (не обов'язково перетинаються) об'єднання мов складності DFA в більшості C . Складність покриття DFA L n становить лише 2 .CLCLn2

Чи існує експоненціальний поділ між складністю NFA та DFA, що охоплює складність?

Відповіді:


8

Розглянемо мову , де # - новий символ. Складність NFA M n дорівнює n . Ми покажемо, що його складність покриття DFA становить 2 n .Mn=ϵ+(Ln#)∗Ln#Mnn2n

Нехай бути DFA приймає деякий мову L ( A ) ⊆ M н , с перехідною функцією д А . Викличте стан s життєздатним, якщо є якесь слово w таке, що q A ( s , w ) - це стан, що приймає. Для будь-яких двох станів безвідмов s , t , нехай A s , t = { w ∈ ( 1 + ⋯AL(A)⊆MnqAswqA(s,w)s,tНе важко перевірити, що кожне слово w ∈ L ( A ) можна записати як w = w 1 # ⋯ # w l, де w i ∈ A s i , t i для деякої життєздатності s i , t i .

As,t={w∈(1+⋯+n)∗:qA(s,w)=t}.
w∈L(A)w=w1#⋯#wlwi∈Asi,tisi,ti

Припустимо, що , де кожен A i - DFA. Нехай P - решітка, породжена всіма мовами A i s , t . Ми можемо розглядати L ( A i ) як мову L P ( A i ) над P ∗ , простір між будь-якими двома символами, що відповідають # . Під цією точкою зору, M nMn=⋃i=1NL(Ai)AiPAs,tiL(Ai)LP(Ai)P∗#Mnвідповідає .P∗

Виклик універсальним, якщо для деякого x ∈ P ∗ випадок, що для всіх y ∈ P існує z ∈ P ∗ такий, що x y z ∈ L P ( A i ) . Ми стверджуємо, що деякий L P ( A i ) є універсальним. В іншому випадку кожен L P ( A i ) містить максимум ( | P)LP(Ai) x∈P∗y∈Pz∈P∗xyz∈LP(Ai)LP(Ai)LP(Ai) слова довжиною l . Загалом L P ( A i ) повинен містити всі | П | l слова довжиною l , отже | П | l ≤ N ( | P | - 1 ) l , що порушується для досить великих l .(|P|−1)llLP(Ai)|P|ll|P|l≤N(|P|−1)ll

Припустимо, що є універсальним, а для стислості напишіть A = A i . Нехай x ′ ∈ P ∗ - відповідний префікс, а x ∈ M n - якесь відповідне йому слово. Таким чином, для кожного y ∈ L n існує деякий z y ∈ M n такий, що x # y # z y y ∈LP(Ai)A=Aix′∈P∗x∈Mny∈Lnzy∈Mn .x#y#zy∈L(Ai)

Для підмножини , нехай y S складається з букв у S, написаних у порядку. Покажемо , що слова х # у S нееквівалентний для Myhill-Nerode відносини А . Справді, припустимо, S ≠ T і знайдемо деякий a ∈ S ∖ T (без втрати загальності). Тоді x # y T y { 1 , … , n } - aS⊆{1,…,n}ySSx#ySAS≠Ta∈S∖T а x # y S y { 1 , … , n } - a # z y T y { 1 , … , n } - a ∉ M н . Тому A повинен мати щонайменше 2 n станів.x#yTy{1,…,n}−a#zyTy{1,…,n}−a∈L(A)x#ySy{1,…,n}−a#zyTy{1,…,n}−a∉MnA2n

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