Apakah bahasa bebas konteks?


8

Apakah bahasa bebas konteks?L={0n1mn and m are co-prime}

Saya kira itu bukan konteks bebas karena tampaknya terlalu rumit untuk PDA untuk memutuskan apakah 2 angka adalah co-prime atau tidak.

Saya mencoba menggunakan lemma pemompaan tetapi tidak berhasil.

Bantuan apa pun dengan senang hati akan dihargai.

Edit:

Ini adalah salah satu upaya saya yang gagal dengan lemma pemompaan:

Biarkan menjadi konstanta. Ambil utama sehinggadan kemudian mengambil kata . Misalkan menjadi dekomposisi memenuhi kondisi dalam lemma pemompaan.Npp>N!z=0p1p+N!Lz=uvwxyz

Jika hanya berisi nol maka adalah bilangan bulat antara dan . Tentukan sebagai . Untuk katavx|vx|=k1Nmm=N!/ki=m+1uviwxiy=0p+N!1p+N!L

Namun, saya gagal menemukan integer untuk kasus dekomposisi lainnya.i


1
Selamat Datang di Ilmu Komputer ! Biarkan saya mengarahkan Anda ke pertanyaan referensi kami yang mungkin mencakup masalah Anda. Silakan bekerja melalui pertanyaan terkait yang tercantum di sana, cobalah untuk menyelesaikan masalah Anda lagi dan edit untuk memasukkan upaya Anda bersama dengan masalah spesifik yang Anda temui. Saya pikir teorema Parikh mungkin berhasil untuk Anda.
Raphael

2
Parikh harus bekerja, tetapi juga pemompaan standar / Ogden, kan?
Ran G.

Ini sebenarnya pertanyaan kuis. Karena kita belum mempelajari teorema Parikh, mungkin ada cara untuk menunjukkan bahwa itu bukan konteks bebas dengan lemma pemompaan atau dengan sifat penutupan.
Robert777

@Raphael, dalam hal ini teorema Parikh tidak benar-benar menambahkan apa pun di luar lemma pemompaan lurus (yaitu, dari bisa mendapatkan semua untuk beberapa , bukan nol dan ). Tapi saya tidak melihat cara untuk memaksa . 0n1m0n+ka1m+kbabk1gcd(n+ka,m+kb)1
vonbrand

@vonbrand Kami dapat mengerjakan sebagai gantinya; lihat di sini . L¯L(01)
Raphael

Jawaban:


4

Konyol bahwa saya tidak melihat ini sebelumnya ...

Bukti bahwa bahasa (sebut saja ) tidak bebas konteks adalah dengan kontradiksi. Asumsikan bebas konteks, oleh lemma pemompaan untuk CFG ada konstanta sehingga setiap string sedemikian rupa sehingga dapat ditulis dengan sedemikian rupa sehingga untuk semua string . Ambil bilangan prima yang berbeda (sehingga ) dan , dan ambil . String yang dipompa akan menjadiLLNσL|σ|Nσ=uvxyzvyϵk0uvkxykzLm,ngcd(m,n)=1m,n>2Nσ=0m1n0m+ka1n+kb untuk beberapa konstanta , , bukan keduanya nol, dan sedemikian sehingga dan (kita memiliki dengan cara , dipilih). Kasus salah satunya nol dicakup oleh OP, jadi pertimbangkan . Sekarang:aba<mb<na,bN<m/2,n/2mna,b0

m+ka0(modn)n+kb0(modm)

Ini memiliki solusi unik modulo oleh teorema sisa Cina (kita memiliki , dan karena adalah bilangan prima, ; sama dengan dan ), dan dengan demikian kita dapat menulis: yaitu, . Kontradiksi.kmna<nngcd(a,n)=1bm

m+ka0(modmn)n+kb0(modmn)
mngcd(m+ka,n+kb)

Terima kasih untuk balasan Anda. Saya suka cara Anda mendekati ini. Namun, saya tidak mengerti bagaimana Anda menggunakan teorema sisa Cina jika ini hanya dapat diterapkan pada sistem kongruensi linear dari formulir:
xb1(modm1)xb2(modm2)
Robert777

@ Robert777, cukup tulis dan seterusnya. kam(modn)
vonbrand

1
tetapi Anda mendapatkan kesesuaian bentuk: dan itu tidak sama. Misalnya jika maka kongruensi tidak memiliki solusi.
axb(modm)
gcd(a,m)|b
Robert777

1
@ Robert777, Anda memang benar. Diubah untuk memilih , prime. Terima kasih! mn
vonbrand

Oke, setelah kita menggunakan teorema sisa Cina, mengapa kita dapat menulis kongruensi ini:
m+ka0(modmn)n+kb0(modmn)
Robert777
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.