A apresentação está carregando. Por favor, espere

A apresentação está carregando. Por favor, espere

Teorema de Rice Mestrado em Ciência da Computação Profa. Sandra de Amo.

Apresentações semelhantes


Apresentação em tema: "Teorema de Rice Mestrado em Ciência da Computação Profa. Sandra de Amo."— Transcrição da apresentação:

1 Teorema de Rice Mestrado em Ciência da Computação Profa. Sandra de Amo

2 Seja P um problema satisfazendo as seguintes condições: Problema P Os inputs de P são códigos de máquina de Turing 1. Os inputs de P são códigos de máquina de Turing 2. Existe um input tal que P responde positivamente a 2. Existe um input tal que P responde positivamente a Problema P YES ! Problema P NO ! Existe um input tal que P responde negativamente a Existe um input tal que P responde negativamente a 3. Se L(M1) = L(M2) então P P (isto é, a resposta do problema só depende do que a máquina (isto é, a resposta do problema só depende do que a máquina faz e não do seu código) faz e não do seu código) Então P é indecidível

3 O Teorema de Rice = template geral para provar que certos problemas são indecidíveis O Teorema de Rice = template geral para provar que certos problemas são indecidíveis Qualquer problema que se encaixa nas hipóteses do teorema de Rice é indecidível. Qualquer problema que se encaixa nas hipóteses do teorema de Rice é indecidível. Assim: Assim: - para provar que um certo problema P é indecidível: - para provar que um certo problema P é indecidível: 1. inventar uma prova particular de indecidibilidade 1. inventar uma prova particular de indecidibilidade algum problema indecidivel se reduz a P ? algum problema indecidivel se reduz a P ?OU 2. verificar que o problema satisfaz as hipóteses do Teorema de Rice. 2. verificar que o problema satisfaz as hipóteses do Teorema de Rice.

4 Prova: Considere a máquina M2 tal que L(M2) = ø (M2 não aceita nenhum string). Considere a máquina M2 tal que L(M2) = ø (M2 não aceita nenhum string). Caso 1: Suponhamos que P Caso 1: Suponhamos que P (isto é, P responde negativamente a ) (isto é, P responde negativamente a ) Pela condição (2) sabemos que existe uma máquina tal que Pela condição (2) sabemos que existe uma máquina tal que P. P. Mostremos que A P Mostremos que A P TM M = No input x faça 1.Execute M em w. 2. Se M pára em qr, M pára em qr. 3. Se M pára em qa, executa M1 em x 4. Se M1 pára em qa, M pára em qa 5. Se M1 pára em qr, M pára em qr Se M não aceita w então M não aceita nenhum input x. ø = Isto é: L(M) = ø = L(M2). Logo é instância negativa de P Se M aceita w então M atua exatamente como M1. L(M1) Isto é: L(M) = L(M1). Logo é instância positiva de P

5 Caso 2: Suponhamos que P (isto é, P responde positivamente a ) Consideramos o problema P P P Usando o mesmo argumento do Caso 1, mostramos que TM A P Logo P é indecidível Logoé indecidívelP

6 Exemplo de Aplicação do Teorema de Rice Reg = { : L(M) é regular} Mostrar que Reg é indecidível. Mostrar que Reg é indecidível. Prova: Reg satisfaz as 3 condições do Teorema de Rice: 1. Seus inputs são códigos de MT 2. Existe uma MT M1 tal que L(M1) não é regular (basta considerar a MT tal que L(M1) = palindromos Existe uma MT M2 tal que L(M2) é regular (basta considera a MT tal que L(M2) = 0*1* ) Existe uma MT M2 tal que L(M2) é regular (basta considera a MT tal que L(M2) = 0*1* ) 3. Se M e M são duas MT tais que L(M) = L(M) então ou ambas estão em Reg (no caso de L(M) = L(M) ser regular ) ou ambas estão em Reg (no caso de L(M) = L(M) ser regular ) ou ambas não estão em Reg (no caso de L(M) = L(M) não ser regular. ou ambas não estão em Reg (no caso de L(M) = L(M) não ser regular.

7 Alguns problemas indecidíveis não verificam as condições do T. Rice: P = { | M pára em algum string w} Mostre que a condição 3 do Teorema de Rice não é verificada para o problema P. Logo, não podemos utilizar o T. Rice para mostrar que P é indecidível. Precisamos utilizar a técnica da redução.

8 Realmente: Consideremos as seguintes M.T. M1 M1 –entra em loop para todo string w 0, –pára em qr qdo executada em w = 0 É claro que L(M1) = É claro que L(M1) = M2 M2 –entra em loop para todo string w É claro que L(M2) = É claro que L(M2) = Logo: L(M1) = L(M2) Mas : P P P


Carregar ppt "Teorema de Rice Mestrado em Ciência da Computação Profa. Sandra de Amo."

Apresentações semelhantes


Anúncios Google