Bagaimana membuktikan bahwa bahasa bebas konteks menjadi ambigu yang tidak dapat ditentukan?

19

Saya pernah membaca di suatu tempat bahwa mesin Turing tidak dapat menghitung ini dan karena itu tidak dapat diputuskan tetapi mengapa? Mengapa secara komputasi mustahil bagi mesin untuk menghasilkan pohon parse dan membuat keputusan? Mungkin saya salah dan itu bisa dilakukan?

Ulkmun
sumber
1
Ya Anda benar, mesin Turing tidak dapat memutuskan apakah bahasa bebas konteks adalah ambigu atau tidak, dan ini dapat dikurangi dari masalah pos korespondensi , yang tidak dapat diputuskan. Perhatikan bahwa pohon parse dapat berukuran sangat besar, dan kami tidak dapat memutuskan kapan kami menghentikan perhitungan.
Hsien-Chih Chang 張顯 之
Hsien-Chih, apakah Anda mengacu pada "pohon parse" untuk kata-kata yang tidak ada dalam bahasa (yaitu parse yang tidak berhasil), atau Anda mencoba mengatakan bahwa pohon parse dapat menjadi besar secara sewenang - wenang ?
Raphael

Jawaban:

22

Kami mengurangi dari Masalah Korespondensi Post . Misalkan kita dapat, pada kenyataannya, memutuskan bahasa .{G|G a CFG and L(G) ambiguous}

Diberikan : Buat CFG berikut G = ( V , Σ , R , S ) : V = { S , S 1 , S 2 } , R = { S S 1 | S 2 , S 1α 1 Sα1,,αm,β1,,βmG=(V,Σ,R,S)V={S,S1,S2} (di mana σ iR={SS1|S2,S1α1S1σ1||αmS1σm|α1σ1||αmσm,S2β1S2σ1||βmS2σm|β1σ1||βmσm}σiadalah karakter baru yang ditambahkan ke alfabet, misalnya, ).σi=i_

wSS1S1S2w

SS1ασ~SS2βσ~α=βαβσ~

Karenanya, kami telah mereduksi menjadi PCP, dan karena itu tidak dapat dipastikan, kami selesai.

(Beri tahu saya jika saya melakukan sesuatu yang bodoh!)

alpoge
sumber
1
{GG a CFG and L(G) ambiguous}