Bahasa yang melibatkan bilangan irasional bukan CFL

10

Saya bekerja melalui latihan keras di buku teks, dan saya tidak tahu bagaimana untuk melanjutkan. Inilah masalahnya. Misalkan kita memiliki bahasa mana adalah bilangan irasional. Bagaimana saya membuktikan bahwa bukan bahasa bebas konteks?L = { a i b j : i j γ , i 0 , j 1 } L={aibj:ijγ,i0,j1}γ γLL

Jika rasional, cukup mudah untuk membangun tata bahasa yang menerima bahasa. Tetapi karena tidak rasional, saya tidak tahu harus berbuat apa. Kelihatannya tidak ada lemma pemompa yang bisa bekerja di sini. Mungkin teorema Parikh akan bekerja di sini, karena secara intuitif akan tampak seperti bahasa ini tidak memiliki gambar Parikh semilinear yang menyertainya.γ γγγ

Latihan ini dari "Kursus Kedua dalam Bahasa Formal dan Teori Automata" oleh Jeffrey Shallit, Latihan 25 dari Bab 4.

Saya akan sangat menghargai bantuan apa pun, atau mendorong ke arah yang benar. Terima kasih!

DW
sumber
Sudahkah Anda mencoba menerapkan teorema Parikh?
Yuval Filmus
Mengapa tidak menunjukkan bahwa itu tidak semilinear secara langsung? Gunakan definisi.
Yuval Filmus
4
Tepat pada waktunya untuk pekerjaan rumah saya! Terima kasih. CS 462/662 Bahasa Resmi dan Musim Dingin Parsing 2019, Problem Set 9, latihan 3. Karena Jumat, 22 Maret 2019.
Hendrik
@HendrikJan Saya belajar sendiri dari buku teks "Kursus Kedua dalam Bahasa Formal dan Teori Automata" oleh Jeffrey Shallit. Ini adalah Latihan 25 dari Bab 4 fyi. Apakah mungkin untuk menyembunyikan posting ini sampai tugas selesai?
Saya menghargai apa yang Anda coba lakukan dan niat baik Anda, tapi tolong jangan hancurkan pertanyaan dengan mengeditnya untuk menyembunyikan pertanyaan (bahkan selama beberapa hari). Terima kasih. PS Terima kasih karena telah mengkredit sumber masalahnya!
DW

Jawaban:

7

Menurut teorema Parikh, jika bebas konteks maka himpunan akan semilinear, yaitu, itu akan menjadi penyatuan banyak set yang secara terbatas dari form , untuk beberapa .L LM = { ( a , b ) : a γ b } M={(a,b):aγb}S = u 0 + N u 1 + + N u S=u0+Nu1++Nuu i = ( a i , b i )ui=(ai,bi)

Jelas , dan apalagi untuk setiap , karena jika tidak untuk cukup besar . Oleh karena itu (karena rasional). Ini berarti bahwa setiap memenuhi .u 0M u0Mu iM uiMi > 0 i>0u 0 + N u iM u0+NuiMN Ng ( S ) : = maks ( a 0 / b 0 , , a / b ) < γ g(S):=max(a0/b0,,a/b)<γg ( S ) g(S)( a , b ) S (a,b)Sa / b g (S )a/bg(S)

Sekarang anggaplah bahwa adalah penyatuan , dan mendefinisikan . Hal tersebut di atas menunjukkan bahwa setiap di serikat memenuhi , dan kami memperoleh kontradiksi, karena .M MS ( 1 ) , , S ( m )S(1),,S(m) g = maks ( g ( S ( 1 ) ) , , g ( S ( m ) ) ) < γ g=max(g(S(1)),,g(S(m)))<γ( a , b ) (a,b)a / b g < γ a/bg<γsup { a / b : ( a , b ) M} = γsup{a/b:(a,b)M}=γ


Ketika rasional, buktinya gagal, dan memang adalah semilinear: Memang, dengan konstruksi, setiap pasangan di sisi kanan memenuhi (karena ). Sebaliknya, misalkan . Sementara dan , kurangi dari . Akhirnya (karena menyiratkanγ γM M{ ( a , b ) : ast b}= s - 1 a=0(a,ts a)+N(s,t)+N(0,1).

{(a,b):astb}=a=0s1(a,tsa)+N(s,t)+N(0,1).
(a,b)(a,b)ast bastbs=st ts=sttast bastbasasbtbt(s,t)(s,t)(a,b)(a,b)a<sa<sb<tb<t ast b < sastb<s). Karena , tentu saja . Karenanya kita dapat mengurangi dari hingga mencapai .Sebuahst bastbbts abtsa(0,1)(0,1)(a,b)(a,b)(a,ts a)(a,tsa)

Yuval Filmus
sumber
Jawaban bagus. Hanya klarifikasi, logika di balik "setiap memenuhi " adalah sebaliknya jika ada , maka kita dapat membangun sebuah sehingga adalah sebesar yang diinginkan dan oleh karena itu lebih besar dari ? ( a , b ) S a / b g ( S ) ( a , b ) > g ( S ) ( x , y ) S x / y γ(a,b)Sa/bg(S)(a,b)>g(S)(x,y)Sx/yγ
Tidak, ini mengikuti langsung dari definisi . Argumen Anda menjelaskan mengapa . g ( S ) g ( S ) < γg(S)g(S)<γ
Yuval Filmus
6

Setiap variabel kecuali dalam jawaban ini berarti bilangan bulat positif. Sudah diketahui umum bahwa diberi irama , ada urutan bilangan rasional sedemikian rupa sehingga lebih dekat dengan daripada bilangan rasional lainnya yang lebih kecil dari yang penyebutnya kurang dari .γ γγ > 0 γ>0a 1b 1 <a2b 2 <a3b 3 <<γa1b1<a2b2<a3b3<<γaibiaibiγγγγbibi


Ternyata lemma pemompaan berhasil!

Demi kontradiksi, biarkan menjadi panjang memompa sebagai bahasa bebas konteks. Misalkan , kata yang tetapi "nyaris". Perhatikan bahwa . Pertimbangkan , di mana dan untuk semua .ppLLs=aapbbps=aapbbpLL|s|>bpp|s|>bpps=uvwxys=uvwxy|vx|>1|vx|>1sn=uvnwxnyLsn=uvnwxnyLn0n0

Biarkan dan menjadi jumlah dan dalam masing-masing.tatatbtbaabbvxvx

  • Jika atau , untuk cukup besar, rasio jumlah s dengan yang s di akan lebih besar dari , yaitu, .tb=0tb=0tatb>γtatb>γnabsnγsnL
  • Kalau tidak, . Sejak , . Karenanya, Sejak , yang mengatakan bahwa .tatb<γtb<bptatb<apbpaptabptb>apbpbptb<bpaptabptb>γ,s0L

Kontradiksi di atas menunjukkan bahwa tidak boleh bebas konteks.L


Berikut adalah dua latihan mudah terkait.

Latihan 1. Tunjukkan bahwa tidak bebas konteks di mana adalah bilangan irasional.Lγ={aiγ:iN}γ

Latihan 2. Tunjukkan bahwa bebas konteks di mana adalah bilangan rasional.Lγ={aibj:ijγ,i0,j0}γ

John L.
sumber
Properti dalam jawaban dapat dibuktikan hanya dengan memilih semua bilangan rasional yang lebih dekat ke daripada semua bilangan sebelumnya dalam daftar semua bilangan rasional yang lebih kecil dari dalam urutan peningkatan penyebut dan, untuk penyebut yang sama, dalam urutan meningkat. γγ
John L.
Konstruksi biasa adalah mengambil konvergensi dari fraksi lanjutan.
Yuval Filmus
@YuvalFilmus Ya, saya setuju. Di sisi lain, bukti hampir satu baris itu jauh lebih sederhana dan mudah diakses. ("urutan yang meningkat" dalam pesan terakhir saya haruslah "urutan yang menurun".)
John L.