Aula 8 Por: Tarcisio Coutinho da Silva {tcs5}@cin.ufpe.br David Barros Hulak {dbh}@cin.ufpe.br.

26
Informática Teórica Aula 8 Por: Tarcisio Coutinho da Silva {tcs5 }@cin.ufpe.br David Barros Hulak {dbh}@cin.ufpe.br

Transcript of Aula 8 Por: Tarcisio Coutinho da Silva {tcs5}@cin.ufpe.br David Barros Hulak {dbh}@cin.ufpe.br.

Page 1: Aula 8 Por: Tarcisio Coutinho da Silva {tcs5}@cin.ufpe.br David Barros Hulak {dbh}@cin.ufpe.br.

Informática TeóricaAula 8

Por:Tarcisio Coutinho da Silva

{tcs5}@cin.ufpe.brDavid Barros Hulak{dbh}@cin.ufpe.br

Page 2: Aula 8 Por: Tarcisio Coutinho da Silva {tcs5}@cin.ufpe.br David Barros Hulak {dbh}@cin.ufpe.br.

Linguagem Turing-Irreconhecível Teorema

Uma linguagem é Turing-decidível se e somente se ela é Turing-reconhecível e co-Turing-reconhecível.

AMT é irreconhecível Como AMT é reconhecível se seu

complemento fosse reconhecível, AMT seria decidível, como não é então AMT é irreconhecível.

Page 3: Aula 8 Por: Tarcisio Coutinho da Silva {tcs5}@cin.ufpe.br David Barros Hulak {dbh}@cin.ufpe.br.

Redutibilidade: noções

Uma redução de A para B é usar uma solução de B para resolver A.

Problema da orientação na cidade: reduz-se a achar um mapa.

Problema da área do retângulo: reduz-se a medir o comprimento e a largura.

Page 4: Aula 8 Por: Tarcisio Coutinho da Silva {tcs5}@cin.ufpe.br David Barros Hulak {dbh}@cin.ufpe.br.

Redutibilidade: decidibilidade

Repare que B é no mínimo tão difícil de resolver quanto A

A é redutível a B

A não é decidível

---------------------B não é decidível

A é redutível a B

B é decidível-------------------

- A é decidível

Page 5: Aula 8 Por: Tarcisio Coutinho da Silva {tcs5}@cin.ufpe.br David Barros Hulak {dbh}@cin.ufpe.br.

Redutibilidade: estratégia Se queremos provar que um

problema A é indecidível- Encontre um problema B já comprovadamente indecidível- Mostre que decidindo A, decidiríamos B.- Ou seja, fazemos uma redução de B para A- Isso é uma contradição, pois B é indecidível.

Page 6: Aula 8 Por: Tarcisio Coutinho da Silva {tcs5}@cin.ufpe.br David Barros Hulak {dbh}@cin.ufpe.br.

Problemas Indecidíveis

PARAMT = {⟨M, w⟩| M é uma MT e para sobre a w}

VMT = {⟨M⟩| M é uma MT e L(M) = ∅}

REGULARMT = {⟨M⟩| M é uma MT e L(M) é regular}

EQMT = {⟨M1, M2⟩| M1 e M2 são MTs e L(M1) = L(M2)}

Page 7: Aula 8 Por: Tarcisio Coutinho da Silva {tcs5}@cin.ufpe.br David Barros Hulak {dbh}@cin.ufpe.br.

PARAMT

PARAMT = {⟨M, w⟩| M é uma MT e para sobre a w}

Page 8: Aula 8 Por: Tarcisio Coutinho da Silva {tcs5}@cin.ufpe.br David Barros Hulak {dbh}@cin.ufpe.br.

VMT

VMT = {⟨M⟩| M é uma MT e L(M) = ∅}

(!!!) A melhor dica para compreender essa prova é entender L(M1).

Page 9: Aula 8 Por: Tarcisio Coutinho da Silva {tcs5}@cin.ufpe.br David Barros Hulak {dbh}@cin.ufpe.br.

Redução via História de Computação Outra técnica de redutibilidade História de computação

Conjunto de configurações para a qual a cadeia é aceita ou rejeitada

Sequências finitas Usada na prova do 10º problema de

Hilbert

Page 10: Aula 8 Por: Tarcisio Coutinho da Silva {tcs5}@cin.ufpe.br David Barros Hulak {dbh}@cin.ufpe.br.

Autômato Linearmente Limitado (ALL) Máquina de Turing com memória finita

AALL = {⟨M, w⟩| M é um ALL que aceita a cadeia w}

Há ALL decisores para AALL, AAFD, AGLC, VAFD e VGL

Não há decisores para VALL, TODGLC

Page 11: Aula 8 Por: Tarcisio Coutinho da Silva {tcs5}@cin.ufpe.br David Barros Hulak {dbh}@cin.ufpe.br.

ALL: Lema Seja M um ALL com q estados e f símbolos no

alfabeto da fita e comprimento de fita n. Há exatamente n * q * fn configurações distintas. <> A cabeça pode estar em qualquer uma das n

posições <> M pode estar em q estados <> Cada símbolo da fita pode estar em n

posições:▪ f f f (...) f

----------- n vezes (princípio da contagem)

Page 12: Aula 8 Por: Tarcisio Coutinho da Silva {tcs5}@cin.ufpe.br David Barros Hulak {dbh}@cin.ufpe.br.

AALL

AALL = {⟨M, w⟩| M é um ALL que aceita a cadeia w} é decidível

Page 13: Aula 8 Por: Tarcisio Coutinho da Silva {tcs5}@cin.ufpe.br David Barros Hulak {dbh}@cin.ufpe.br.

Problema da Correspondência de Post O objetivo é construir dominós a partir da

cadeia de entrada e emparelharmos simulando a história de computação

PCP é indecidível

Page 14: Aula 8 Por: Tarcisio Coutinho da Silva {tcs5}@cin.ufpe.br David Barros Hulak {dbh}@cin.ufpe.br.

Problema da Correspondência de Post Modificado (PCPM) Precisamos evitar que não ocorra movimento além

da extremidade esquerda

Se w = ε, utilizamos ⊔ no lugar de w

Precisamos determinar o estado inicial (primeiro dominó)

PCPM = { ⟨P⟩ | P é uma instância do PCP com um emparelhamento que começa com o primeiro dominó }

PCPM é indecidível

Page 15: Aula 8 Por: Tarcisio Coutinho da Silva {tcs5}@cin.ufpe.br David Barros Hulak {dbh}@cin.ufpe.br.

PCPM Construção dos dominós de MT (Q, ∑,

Γ, δ, qo, qaceita, qrejeita) Passo 1▪ Ponha como primeiro dominó

Passo 2▪ Para toda função δ(q, a) =(r, b, D), que move

para direita, crie o dominó Passo 3▪ Para toda função δ(q, a) =(r, b, E), que move

para esquerda, crie o dominó

Page 16: Aula 8 Por: Tarcisio Coutinho da Silva {tcs5}@cin.ufpe.br David Barros Hulak {dbh}@cin.ufpe.br.

PCPM Passo 4▪ Para todo a ∈ Γ, crie o dominó

Passo 5 ▪ Crie os dominós e , para emparelhar

o fim da configuração Passo 6▪ Crie os dominós e , para

eliminar os símbolos a fim de emparelhar as configurações

Passo 7▪ Crie o dominó para fechar o

emparelhamento.

Page 17: Aula 8 Por: Tarcisio Coutinho da Silva {tcs5}@cin.ufpe.br David Barros Hulak {dbh}@cin.ufpe.br.

Exercício Seja a MT M = ({q0, q1, qr, qa}, {a, b}, {a, b,

⊔}, δ, q0, qr, qa) com δ definida da seguinte forma:δ(q0, a) = (q0, ⊔, D)δ(q0, b) = (q1, ⊔, D)δ(q1, a) = (qr, ⊔, D)δ(q1, b) = (q1, ⊔, D)δ(q1, ⊔) = (qa, ⊔, D),Mostre o emparelhamento para a palavra aabb.

Page 18: Aula 8 Por: Tarcisio Coutinho da Silva {tcs5}@cin.ufpe.br David Barros Hulak {dbh}@cin.ufpe.br.

Função Computável

Seja uma função f: ∑* → ∑* Se alguma M para sobre toda entrada w

com somente f(w) na fita, dizemos que f é computável

Exemplos: Todas as operações aritméticas são computáveis, pois

podemos construir uma máquina que recebe a entrada <m, n> e retorna m + n.

Podemos construir uma função que receba uma MT M como entrada e retorne essa máquina modificada M’

Page 19: Aula 8 Por: Tarcisio Coutinho da Silva {tcs5}@cin.ufpe.br David Barros Hulak {dbh}@cin.ufpe.br.

Redutibilidade por Mapeamento

A linguagem A é redutível por mapeamento à linguagem B (A ≤m B) se existe uma função computável f: ∑* → ∑* tal que

w ∈ A ⟺ f(w) ∈ B A função f é chamada redução de A para B. Se A ≤m B e B é decidível então A é decidível. Se A ≤m B e A é indecidível então B é indecidível. Se A ≤m B e B é reconhecível então A é reconhecível. Se A ≤m B e A é irreconhecíve então B é irreconhecível.

Page 20: Aula 8 Por: Tarcisio Coutinho da Silva {tcs5}@cin.ufpe.br David Barros Hulak {dbh}@cin.ufpe.br.

A ≤m BSe A ≤m B e B é decidível então A é decidível.

Page 21: Aula 8 Por: Tarcisio Coutinho da Silva {tcs5}@cin.ufpe.br David Barros Hulak {dbh}@cin.ufpe.br.

A ≤m BSe A ≤m B e A não é reconhecível, B também não é.

A ≤m B é o mesmo que A’ ≤m B’

Sabemos que A’AMT não reconhecível. Para provar que uma linguagem B não é reconhecível, utilizamos:

A’AMT ≤m BAAMT ≤m B’

Page 22: Aula 8 Por: Tarcisio Coutinho da Silva {tcs5}@cin.ufpe.br David Barros Hulak {dbh}@cin.ufpe.br.

EQMT

EQMT não é Turing-reconhecível nem co-Turing reconhecível

Page 23: Aula 8 Por: Tarcisio Coutinho da Silva {tcs5}@cin.ufpe.br David Barros Hulak {dbh}@cin.ufpe.br.

EQMT

Page 24: Aula 8 Por: Tarcisio Coutinho da Silva {tcs5}@cin.ufpe.br David Barros Hulak {dbh}@cin.ufpe.br.

Prova 2010.2: algumas questões Dê o esboço da prova de que PCP é

indecidível

Dê o esboço da prova que VMT é indecidível

Explique por que se A ≤m B e B é reconhecível, A é reconhecível

Page 25: Aula 8 Por: Tarcisio Coutinho da Silva {tcs5}@cin.ufpe.br David Barros Hulak {dbh}@cin.ufpe.br.

Referências

Michael Sipser: Introduction to the Theory of Computation (2nd edition)