Как доказать, что контекстно-свободный язык является неоднозначным неразрешимым?


19

Я где-то читал, что машина Тьюринга не может вычислить это, и поэтому она неразрешима, но почему? Почему для компьютера невозможно вычислить дерево разбора и принять решение? Возможно я ошибаюсь и это можно сделать?


1
Да, вы правы, машина Тьюринга не может решить, является ли язык без контекста неоднозначным или нет, и это можно уменьшить из проблемы почтовой корреспонденции , которая неразрешима. Обратите внимание, что дерево разбора может быть бесконечно большим, и мы не можем решить, когда мы остановим вычисление.
— Сянь-Чи Чанг 之 之

Сянь-Цзи, вы имеете в виду «деревья синтаксического анализа» для слов, не принадлежащих языку (т. Е. Неудачные синтаксические разборы), или вы пытаетесь сказать, что деревья синтаксического анализа могут стать сколь угодно большими?
— Рафаэль

Ответы:


22

Мы уменьшаем из почтовой проблемы корреспонденции . Предположим , что мы можем, по сути, решают язык .{⟨G⟩|G a CFG and L(G) ambiguous}

Для данных : построить следующий CFG 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} (где σ iR={S→S1|S2,S1→α1S1σ1|⋯|αmS1σm|α1σ1|⋯|αmσm,S2→β1S2σ1|⋯|βmS2σm|β1σ1|⋯|βmσm}σiновые символы, добавленные к алфавиту, например, ).σi=i_

wS→S1S1S2w

S⇒S1⇒∗ασ~S⇒S2⇒∗βσ~α=βαβσ~

Следовательно, мы сократили до PCP, и, поскольку это неразрешимо, мы закончили.

(Дайте мне знать, если я сделал что-нибудь с головой!)


1
{⟨G⟩∣G a CFG and L(G) ambiguous}
Используя наш сайт, вы подтверждаете, что прочитали и поняли нашу Политику в отношении файлов cookie и Политику конфиденциальности.
Licensed under cc by-sa 3.0 with attribution required.