Informática Teórica Aula 8 Por: Tarcisio Coutinho da Silva

Slides:



Advertisements
Apresentações semelhantes
Decidibilidade e Indecidibilidade
Advertisements

Linguagens Livre-de-contexto
FAPE - Curso de Ciência da Computação
Variantes de Máquina de Turing
Teoria da Computação MÁQUINA DE TURING (Continuação) Fabrício Dias
Universidade Federal de Campina Grande – UFCG Centro de Engenharia Elétrica e Informática – CEEI Departamento de Sistemas e Computação – DSC Máquina de.
Prof. Yandre Maldonado e Gomes da Costa
TEORIA DA COMPUTAÇÃO Parte III  Máquina de Turing
Teoria da Computação Unipac – Computação
A Classe de Problemas NP
3 AUTÓMATOS FINITOS.
Máquinas de Turing Não Deterministas
Problema de Correspondência de Post (PCP)
Máquinas de Turing Teoria da Computação.
Mestrado em Ciência da Computação Profa. Sandra de Amo
Complexidade de Linguagens Influência do Modelo de Computação
Teorema da Recursão Teoria da Computação
Linguagens Não Decidíveis
esquerda p/ direita,read only
Linguagens e Máquinas WILSON ROSA DE OLIVEIRA DEPARTAMENTO DE INFORMÁTICA UFPE
Análise Dada uma cadeia de terminais w, queremos saber se wL(G) ou não. Se for o caso, poderemos querer achar uma derivação de w. Um algoritmo que pode.
Identificando Linguagens Não Regulares
NÃO DETERMINISMO Marcus Eduardo Cabral Seabra
Máquina de Turing e Computabilidade
Análise Léxica Supondo o trecho de programa abaixo:
ALGORITMO E ESTRUTURA DE DADOS
Informática Teórica Engenharia da Computação
Informática Teórica Engenharia da Computação
Informática Teórica Engenharia da Computação
Informática Teórica Engenharia da Computação
Informática Teórica Engenharia da Computação
Informática Teórica Engenharia da Computação
Informática Teórica Engenharia da Computação
Informática Teórica Engenharia da Computação
Informática Teórica Engenharia da Computação
Informática Teórica Engenharia da Computação
Informática Teórica Engenharia da Computação
Informática Teórica Engenharia da Computação
Erick Vagner Cabral Igor Lucena Vitor Baptista
Informática Teórica Engenharia da Computação
Informática Teórica Engenharia da Computação
4 - DECIDIBILIDADE Universidade Federal da Paraíba
SIPSER – Capítulo 3: A tese de Church-Turing
Informática Teórica Engenharia da Computação
Indução Matemática Recursão
Autómatos de Pilha. UM NOVO MODELO PARA OS AUTÓMATOS FINITOS As linguagens regulares são aceites por autómatos finitos. E as linguagens não regulares?
Inteligência Artificial
Complexidade computacional
Máquina de Turing Universal
Máquinas de Turing.
Análise e Síntese de Algoritmos
LFA: Unidade 03 – Parte B Engenharia/Ciência da Computação
Redução.
A Classe NP Teoria da Computação Profa. Sandra de Amo.
Prof. André Luis Roland Tancredo Engenheiro da Computação e Pesquisador em Desenvolvimento Tecnológico para Semicondutores pelo CNPq Especialista em Microeletrônica.
Linguagens Formais - aula 02
Computabilidade e Linguagens Formais
Computabilidade e Linguagens Formais
1 Computabilidade e Linguagens Formais  Máquinas de Turing Gabriel David / Cristina Ribeiro.
MÁQUINAS DE TURING Acadêmicos: Karen Juliani Tosta Tomaz RA – 47566
Informática Teórica Aula 7 Tarcisio Coutinho da Silva
Tese de Church-Turing.
Informática Teórica Arthur Ramos David Hulak
1 Decidibilidade continuação…. 2 Teorema: Para qualquer linguagem recursivamente enumerável é indecidível determinar se é finita Prova: Vamos reduzir.
Disciplina: LINGUAGENS FORMAIS, AUTÔMATOS E COMPUTABILIDADE
Informática Teórica Engenharia da Computação
Informática Teórica Engenharia da Computação. Autômatos Com Pilha São como autômatos finitos não-determinísticos mas com uma pilha. São como autômatos.
Informática Teórica Engenharia da Computação. REDUTIBILIDADE POR MAPEAMENTO Formalizaremos a noção de redutibilidade de uma dentre várias maneiras. Formalizaremos.
Informática Teórica Engenharia da Computação. REDUTIBILIDADE Uma redução é uma maneira de converter um problema em outro Uma redução é uma maneira de.
1 Máquinas de Turing 3 Exercícios Máquinas de Turing com Múltiplas Fitas Máquinas de Turing Não-deterministicas A Tese/Hipótese de Church-Turing Linguagens.
Transcrição da apresentação:

Informática Teórica 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.

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.

Redutibilidade: decidibilidade A é redutível a B B é decidível -------------------- A é decidível A é redutível a B A não é decidível --------------------- B não é decidível Repare que B é no mínimo tão difícil de resolver quanto A

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.

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)}

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

VMT VMT = {⟨M⟩| M é uma MT e L(M) = ∅} (!!!) A melhor dica para compreender essa prova é entender L(M1).

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

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

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)

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

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

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

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ó

PCPM Passo 4 Passo 5 Passo 6 Passo 7 Para todo a ∈ Γ, crie o dominó 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.

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.

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’

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.

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

Se 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 B AAMT ≤m B’

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

EQMT

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

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

Obrigado! Informática Teórica Aula 8 Arthur Ramos - afr@cin.ufpe.br David Hulak - dbh@cin.ufpe.br Filipe Martins - fmm@cin.ufpe.br Hugo Azevedo - hraa@cin.ufpe.br Paulo Orlando - povqs@cin.ufpe.br Ricardo Salomão - rssj2@cin.ufpe.br Tarcisio Coutinho - tcs5@cin.ufpe.br Tiago Ferreira - tfl2@cin.ufpe.br Thyago Machado - tmc@cin.ufpe.br Vinícius Henrique - vhco@cin.ufpe.br