Pemisahan eksponensial antara NFA dan DFA di hadapan serikat pekerja


15

Baru-baru ini sebuah pertanyaan menarik diajukan dan kemudian dihapus.

Untuk bahasa biasa L, kompleksitas DFA -nya adalah ukuran DFA minimal yang menerimanya, dan kompleksitas NFA -nya adalah ukuran NFA minimal yang menerimanya. Sudah diketahui bahwa ada pemisahan eksponensial antara dua kompleksitas, setidaknya ketika ukuran alfabet tidak terikat. Memang, pertimbangkan bahasa Ln atas alfabet {1,…,n} terdiri dari semua kata yang tidak mengandung semua simbol. Menggunakan teorema Myhill-Nerode mudah untuk menghitung kompleksitas DFA 2n . Di sisi lain, kompleksitas NFA hanya n(jika beberapa negara awal diperbolehkan, jika tidak itu adalah ).n+1

Pertanyaannya dihapus menyangkut DFA meliputi kompleksitas dari bahasa, yang merupakan minimal sehingga L dapat ditulis sebagai (tidak harus saling lepas) serikat bahasa kompleksitas DFA paling C . DFA yang mencakup kompleksitas L n hanya 2 .CLCLn2

Apakah ada pemisahan eksponensial antara kompleksitas NFA dan kompleksitas DFA?

Jawaban:


8

Pertimbangkan bahasa , di mana # adalah simbol baru. Kompleksitas NFA dari M n adalah n . Kami akan menunjukkan bahwa kompleksitas penutupan DFA-nya adalah 2 n .Mn=ϵ+(Ln#)∗Ln#Mnn2n

Mari menjadi DFA menerima beberapa bahasa L ( A ) ⊆ M n , dengan fungsi transisi q A . Panggil negara yang layak jika ada beberapa kata w sehingga q A ( s , w ) adalah negara penerima. Untuk dua keadaan non-kegagalan s , t , misalkan A s , t = { w ∈ ( 1 + ⋯ + n ) ∗ : q AAL(A)⊆MnqAswqA(s,w)s,tTidak sulit untuk memeriksa bahwa setiap kata w ∈ L ( A ) dapat ditulis sebagai w = w 1 # ⋯ # w l di mana w i ∈ A s i , t i untuk beberapa s viable s i , t i .

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

Misalkan , di mana setiap A i adalah DFA. Biarkan P menjadi kisi yang dihasilkan oleh semua bahasa A i s , t . Kita dapat melihat L ( A i ) sebagai bahasa L P ( A i ) di atas P ∗ , ruang di antara dua simbol yang terkait dengan # . Di bawah sudut pandang ini, M nMn=⋃i=1NL(Ai)AiPAs,tiL(Ai)LP(Ai)P∗#Mnsesuai dengan .P∗

Sebut universal jika untuk beberapa x ∈ P ∗ itu adalah kasus bahwa untuk semua y ∈ P ada z ∈ P ∗ sehingga x y z ∈ L P ( A i ) . Kami mengklaim bahwa beberapa L P ( A i ) adalah universal. Kalau tidak, setiap L P ( A i ) mengandung paling banyak ( | PLP(Ai) x∈P∗y∈Pz∈P∗xyz∈LP(Ai)LP(Ai)LP(Ai) kata panjang l . Secara total, L P ( A i ) harus mengandung semua | P | l kata-kata panjang l , maka | P | l ≤ N ( | P | - 1 ) l , yang dilanggar cukup besar l .(|P|−1)llLP(Ai)|P|ll|P|l≤N(|P|−1)ll

LP(Ai)A=Aix′∈P∗x∈Mny∈Lnzy∈Mnx#y#zy∈L(Ai)

S⊆{1,…,n}ySSx#ySAS≠Ta∈S∖Tx#yTy{1,…,n}−a#zyTy{1,…,n}−a∈L(A) while x#ySy{1,…,n}−a#zyTy{1,…,n}−a∉Mn. Therefore A must have a least 2n states.

Dengan menggunakan situs kami, Anda mengakui telah membaca dan memahami Kebijakan Cookie dan Kebijakan Privasi kami.
Licensed under cc by-sa 3.0 with attribution required.