Observe que esta é uma pergunta relacionada ao estudo em um curso de CS em uma universidade, NÃO é tarefa de casa e pode ser encontrada aqui no exame do outono de 20112.
Aqui estão as duas perguntas de um exame passado. Eles parecem estar relacionados, o primeiro:
Deixei
Prove que é uma linguagem decidível.
e...
Deixei
Prove que é uma linguagem indecidível.
Estou um pouco perdido em como lidar com esses problemas, mas tenho algumas idéias que acho que podem estar na direção certa. A primeira coisa é que estou ciente de que o idioma , em que
é uma linguagem decidível (a prova está na Teoria da computação de Michael Sipser , pág. 168). A mesma fonte também prova que uma gramática livre de contexto pode ser convertida em uma expressão regular e vice-versa. Portanto, também deve ser decidível, pois pode ser convertido em uma expressão regular. Isso, eo fato de que é un -decidable, parece estar relacionado a este problema. A T M
A única coisa em que consigo pensar é em passar G para máquinas de Turing para (depois de converter G em uma expressão regular) e . Em seguida, aceitando se G faz e rejeitando se G não faz. Como é indecidível, isso nunca acontecerá. De alguma forma, sinto que estou cometendo um erro aqui, mas não tenho certeza do que é. Alguém poderia me ajudar aqui? A T M A T M
Respostas:
Converta G para a forma normal de Chomsky . Dessa forma, a única derivação vazia seria o símbolo inicial que não aparece em nenhum outro lugar e, portanto, se houver alguma produção que possa eventualmente se gerar, a gramática será infinita. Se essa produção não existir, cada símbolo poderá gerar apenas um conjunto finito de seqüências de caracteres e a gramática será finita. Portanto, construa um gráfico direcionado em que cada produção seja um nó e cada símbolo dentro de uma produção seja uma aresta direcionada para esse símbolo. Se o gráfico tiver algum ciclo, o CFG é infinito, caso contrário, não é. Portanto, uma máquina de Turing para poderia ser construída fazendo exatamente isso, e então F IN I TFINITECFG é decidível.FINITECFG
Suponha-se que é determinável. Digamos que H é uma máquina de Turing que tem alguma cadeia como entrada e ela própria utilizada como uma entrada para F I N I T E T M . Se F I N I T E T M retornar verdadeiro (ie, H aceita apenas uma linguagem finita), então HFINITETM H FINITETM FINITETM H H aceita a entrada, o que leva a uma contradição, pois o conjunto de entradas é infinito (o comprimento da entrada é ilimitado; portanto, aceite qualquer sequência possível, pois a entrada significa aceitar um conjunto infinito de seqüências). Se H existe leva à contradição, e essa suposição é baseada na suposição de que F I N I TFINITETM retorna false (ou seja , a linguagem de é infinita), então H rejeita a entrada, o que significa que a linguagem de H é finita porque não aceita nenhuma entrada (ou seja, seu idioma está vazio), o que também leva a uma contradição. Desta forma, a suposição de queH H H H é determinável. Então, por contradição, temos que F I N I T E T M não é decidível.FINITETM FINITETM
Eu realmente duvido que a Sipser afirme que você provavelmente interpretou mal ou entendeu mal. Isso significaria que as gramáticas sem contexto geram exatamente os mesmos idiomas que as gramáticas lineares à direita. Isto é falso; as gramáticas lineares geradas são um subconjunto apropriado das gramáticas sem contexto de idiomas dp. Dito isto, a maneira como você tentou usar idiomas comuns para responder às perguntas apenas o leva a lugar nenhum.
Como você pode ver acima nas minhas provas, as duas perguntas são de fato duas questões muito distintas e não relacionadas. Acontece que eles foram redigidos de maneira semelhante.
fonte
Outra maneira de decidirFINITECFG é através do lema de bombeamento.
O lema de bombeamento diz que cada CFL tem um número N (que pode ser calculado a partir da gramática, ou pelo menos um limite superior pode ser facilmente calculado), de modo que qualquer x ∈ L que seja maior que NL N x∈L N possa ser "bombeado "
Isso significa que, se for finito, todas as palavras em L serão menores que NL L N .
fonte