Minimalisasi DFA multi-bahasa

10

Saya tertarik dengan sedikit generalisasi DFA. Seperti biasa kita memiliki set-negara Q , alfabet terbatas Σ , sebuah aksi Σ didefinisikan pada Q oleh δ:Q×ΣQ , dan kondisi awal q0 ; tapi bukannya biasa set terminal, kita mengambil keluarga (Ti)i1..n himpunan bagian dari . DFA Multi-bahasaQM adalah tuple

(Q,Σ,δ,q0,(Ti))

dan LΣ dikenali oleh M iff L={sΣ|q0sTi} untuk beberapa i1..n . Tentukan (Li(M))i1..n untuk menjadi keluarga bahasa yang dikenali oleh M, jika Anda mau.

Oke, sekarang untuk pertanyaan saya: diberikan sekumpulan bahasa reguler , saya ingin mencari DFA M Multi-bahasa minimal seperti yang dijelaskan di atas sehingga L i = L i ( M ) untuk semua i 1 .. n , yaitu, sedemikian rupa sehingga | Q | diminimalkan pada semua mesin seperti itu. Pertanyaan saya adalah, adakah cara efisien yang diketahui melakukan hal ini, mungkin analog dengan teori minimalisasi DFA standar? Sebaliknya, adakah bukti bahwa masalah ini mungkin sulit?(Li)i1..nMLi=Li(M)i1..n|Q|

gdmclellan
sumber
7
Sepertinya saya bahwa algoritma berbasis penyempurnaan partisi standar, dimodifikasi hanya untuk memulai dengan mempartisi set awal negara dengan apakah mereka menerima / tidak menerima untuk masing-masing himpunan bagian yang diberikan daripada untuk satu set T , harus hanya segera bekerja. Kenapa tidak? Itu hanya membagi pasangan negara ketika mereka harus dibagi, sehingga masih menghasilkan penyempurnaan yang paling kasar dari negara. TiT
David Eppstein
1
Bukti komentar oleh @DavidEppstein mudah jika Anda mendefinisikan relasi ekivalensi iff x T i y untuk setiap i , di mana x T i y adalah relasi ekivalensi Myhill-Nerode. Anda kemudian dapat melanjutkan sepanjang garis yang sama dengan algoritma minimisasi standar. xyxTiyixTiy
Shaull
tidak cukup mengerti. Apakah jawaban untuk masalah ini adalah menemukan DFA minimal dari gabungan DFA dengan "pengaturan" yang sama kecuali status akhir yang berbeda, masing-masing DFA untuk ? juga definisi pengakuan L = { . . . } tampaknya tidak masuk akal persis, tampaknya mencampur string dan set negara. 1..nL={...}
vzn
Poin yang dibuat oleh David Epstein dan Shaull terlihat menarik, saya akan menemukan waktu untuk membahas teorema Myhill-Nerode ketika saya punya waktu untuk meyakinkan diri sendiri bahwa hasil bagi masih menghasilkan otomat minimal. Kalau dipikir-pikir, sepertinya sudah terlalu jelas.
gdmclellan
@ vzn: pasti tidak ingin menyatukan bahasa automaton yang asli; dan mungkin tumpang tindih. Sebuah multi-bahasa DFA dengan bahasa A dan B harus dapat laporan, misalnya, bahwa s A , tapi s B . Adapun notasi yang digunakan dalam mendefinisikan pengakuan bahasa, notasi didefinisikan dengan memperluas δ ke Σ -aksi pada Q dengan aturan berikut untuk semua q Q , σ Σ , s Σ :TiABsAsBδΣQqQ,σΣ,sΣ . qσ=δ(q,σ),q(sσ)=(qs)σ
gdmclellan

Jawaban:

14

Jawaban singkat . Diberikan keluarga berhingga dari bahasa-bahasa reguler , ada multi-automaton lengkap deterministik minimal unik yang mengenali keluarga ini.L=(Li)1in

Detail . Kasus sesuai dengan konstruksi standar dan kasus umum tidak jauh berbeda dalam semangat. Diberi bahasa L dan kata u , misalkan u - 1 L = { v A u v L } . Tentukan relasi ekivalensi pada A dengan mengatur u vn=1Luu1L={vAuvL}A Karena L i teratur, kongruensi ini memiliki indeks hingga. Selanjutnya, mudah untuk melihat bahwa setiap L i jenuh oleh ~ dan bahwa untuk setiap a A , u ~ v menyiratkan u a ~ v a . Mari kita dilambangkan dengan 1 kata kosong dan oleh [ u ] yang ~ -class dari kata u

uvfor each LL, u1L=v1L
LiLiaAuvuava1[u]u. Misalkan menjadi deterministik multi-otomat yang didefinisikan sebagai berikut:AL=(Q,[1],,(Fi)1in)
  1. ,Q={[u]uA}
  2. ,[u]a=[ua]
  3. . Fi={[u]uLi}

Dengan konstruksi, jika dan hanya jika u L i dan karenanya A L menerima keluarga L . Tetap membuktikan bahwa A L minimal. Ini sebenarnya minimal dalam arti aljabar yang kuat (yang menyiratkan bahwa ia memiliki jumlah minimum negara). Misalkan A = ( Q , q - , , ( F i ) 1 i n ) dan A[1]uFiuLiALLALA=(Q,q,,(Fi)1in) menjadi dua multi-automata. Morfisme f : AA adalah peta perkiraan dari Q ke Q sedemikian rupaA=(Q,q,,(Fi)1in)f:AAQQ

  1. ,f(q)=q
  2. untuk , f - 1 ( F i ) = F i , 1inf1(Fi)=Fi
  3. untuk semua dan q Q , f ( q u ) = f ( q ) u .uAqQf(qu)=f(q)u

Kemudian untuk setiap diakses deterministik multi-otomat menerima L , ada morphism dari A ke A L . Untuk membuktikan ini, yang pertama memverifikasi bahwa jika q -u 1 = q -u 2 = q , maka u 1u 2 . Sekarang f didefinisikan oleh f ( q ) = [ u ] di mana u adalah setiap kata sedemikian rupa sehingga q -uALAALqu1=qu2=qu1u2ff(q)=[u]u . Maka kita dapat menunjukkan bahwa f memenuhi tiga properti yang diperlukan.qu=qf

Akhirnya agak samar, beri tahu saya jika Anda membutuhkan detail lebih lanjut.

J.-E. Pin
sumber