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 }
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!
Jawaban:
Menurut teorema Parikh, jika bebas konteks maka himpunan akan semilinear, yaitu, itu akan menjadi penyatuan banyak set yang secara terbatas dari form , untuk beberapa .LL M = { ( a , b ) : a ≤ γ b } M={(a,b):a≤γb} S = u 0 + N u 1 + ⋯ + N u ℓ S=u0+Nu1+⋯+Nuℓ u 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 0 ∈ Mu0∈M u i ∈ M ui∈M i > 0 i>0 u 0 + N u i ∉ M u0+Nui∉M N N g ( S ) : = maks ( a 0 / b 0 , … , a ℓ / b ℓ ) < γ g(S):=max(a0/b0,…,aℓ/bℓ)<γ g ( S ) g(S) ( a , b ) ∈ S (a,b)∈S a / b ≤ g (S )a/b≤g(S)
Sekarang anggaplah bahwa adalah penyatuan , dan mendefinisikan . Hal tersebut di atas menunjukkan bahwa setiap di serikat memenuhi , dan kami memperoleh kontradiksi, karena .MM S ( 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/b≤g<γ 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 ) : a ≤ st b}= s - 1 ⋃ a=0(a,⌈ts a⌉)+N(s,t)+N(0,1). {(a,b):a≤stb}=⋃a=0s−1(a,⌈tsa⌉)+N(s,t)+N(0,1). (a,b)(a,b) a≤st ba≤stb s=st ts=stt a≤st ba≤stb a≥sa≥s b≥tb≥t (s,t)(s,t) (a,b)(a,b) a<sa<s b<tb<t a ≤ st b < sa≤stb<s ). Karena , tentu saja . Karenanya kita dapat mengurangi dari hingga mencapai .Sebuah ≤ st ba≤stb b≥ ⌈ ts a⌉b≥⌈tsa⌉ (0,1)(0,1) (a,b)(a,b) (a, ⌈ ts a⌉)(a,⌈tsa⌉)
sumber
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 γ>0 a 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 .pp LL s=aapbbps=aapbbp LL |s|>bp≥p|s|>bp≥p s=uvwxys=uvwxy |vx|>1|vx|>1 sn=uvnwxny∈Lsn=uvnwxny∈L n≥0n≥0
Biarkan dan menjadi jumlah dan dalam masing-masing.tata tbtb aa bb vxvx
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γ={a⌊iγ⌋:i∈N}γ
Latihan 2. Tunjukkan bahwa bebas konteks di mana adalah bilangan rasional.Lγ={aibj:i≤jγ,i≥0,j≥0}γ
sumber