Ekspresi reguler “Padat” menghasilkan

25

Berikut dugaan untuk ekspresi reguler:

Untuk ekspresi reguler , biarkan panjang | R | menjadi jumlah simbol di dalamnya, mengabaikan tanda kurung dan operator. Misalnya | 0 1 | = | ( 0 1 ) | = 2R|R||01|=|(01)|=2

Dugaan: Jika dan L ( R ) berisi setiap string dengan panjang | R | atau kurang, maka L ( R ) = Σ .|R|>1L(R)|R|L(R)=Σ

Artinya, jika adalah 'padat' hingga R panjang 's, maka R benar-benar menghasilkan segalanya.L(R)RR

Beberapa hal yang mungkin relevan:

  1. Hanya sebagian kecil dari yang diperlukan untuk menghasilkan semua string. Misalnya dalam biner, R = ( 0 1 ) *S akan bekerja untuk setiap S .RR=(01)SS
  2. Perlu ada bintang Kleene di di beberapa titik. Jika tidak ada, itu akan kehilangan beberapa string ukuran kurang dari | R | .R|R|

Akan menyenangkan untuk melihat bukti atau contoh tandingan. Apakah ada beberapa kasus di mana itu jelas salah aku rindu? Adakah yang pernah melihat ini (atau yang serupa) sebelumnya?

Lucas Cook
sumber
Apakah dan dihitung sebagai atau sebagai ? εsymbolsoperations
Ran G.
@ Dapatkah saya menghitungnya sebagai simbol.
Lucas Cook

Jawaban:

34

Dugaan Anda dibantah oleh Keith Ellul, Bryan Krawetz, Jeffrey Shallit dan Ming-wei Wang dalam makalah mereka "Ekspresi Reguler: Hasil Baru dan Masalah Terbuka". Meskipun makalah tidak tersedia secara online, pembicaraan tetap dilakukan.

Di koran, mereka mendefinisikan ukuran , yang merupakan jumlah simbol dalam R , tidak termasuk ϵ atau . Namun, dapat dihilangkan dari setiap ekspresi yang tidak menghasilkan bahasa kosong, dan ekspresi tersebut dapat "dibersihkan" sehingga jumlah ϵ yang dikandungnya paling banyak | a l p h ( R ) | (Lemma di halaman 10 dari pembicaraan).|alph(R)|Rϵϵ|alph(R)|

Pada halaman 51, untuk setiap mereka membangun ekspresi reguler ukuran O ( n ) di atas { 0 , 1 } yang menghasilkan semua string ukuran paling banyak Ω ( 2 n n ) , tetapi tidak menghasilkan semua string. Perhatikan bahwa "ukuran" di sini sesuai dengan pengertian Anda dan milik mereka, karena kami menggunakan notasi O-besar. Mereka juga mengajukan pertanyaan terbuka untuk menemukan ketergantungan terbaik antara dua parameter.n3O(n){0,1}Ω(2nn)

Yuval Filmus
sumber
Hasil yang sangat keren, dan agak mengejutkan juga :)
Alex ten Brink
Bagaimana rupa ekspresi reguler itu?
svick
(a+b)(c+d)=ac+bc+ad+bd
@Yuval Sangat keren. Terima kasih untuk referensi!
Lucas Cook
2
@YuvalFilmus Sepertinya kertas itu tersedia online sekarang.
Anton Trunov