Os Limites da Computabilidade. Dois Conceitos Distintos. Tese de Church Turing. O Que É Computável? O Que É Possível De Ser Computado?

Documentos relacionados
Variedades Adicionais das Máquinas de Turing

printing problem: dado um programa e um valor arbitrários, o problema de determinar se sim ou não se vai obter como output do programa esse valor;

Introdução Maquinas de Turing universais O problema da parada. Indecidibilidade. Rodrigo Gabriel Ferreira Soares DEINFO - UFRPE.

I.2 Introdução a Teoria da Computação

COMPUTABILIDADE 2. Indecidibilidade

SCC Capítulo 4 Máquinas de Turing e a Teoria da Computabilidade

Apostila 06. Objetivos: Estudar a Computabilidade Estudar a Decidibilidade Estudar a Redutibilidade

SCC-5832 Teoria da Computação

Teoria da Computação

Teoria da Computação. Computabilidade e complexidade computacional

GBC015: INTRODUÇÃO À CIÊNCIA DA COMPUTAÇÃO Teoria de Algoritmos: Computabilidade e Máquina de Turing

INE5317 Linguagens Formais e Compiladores AULA 3: Introdução a Teoria da Computação

Teoria da Computação. Computabilidade e complexidade computacional

SCC Teoria da Computação e Linguagens Formais

Computabilidade e Complexidade (ENG10014)

SCC Introdução à Teoria da Computação

Linguagens Formais e Autômatos Decidibilidade

Redutibilidade. Mário S. Alvim Fundamentos de Teoria da Computação (FTC) DCC-UFMG (2018/02)

Limites da Computação Algorítmica: Problemas Indecidíveis

IV. LINGUAGENS DO TIPO 0 E MÁQUINAS DE TURING

Máquinas de Turing 3

Marcos Castilho. DInf/UFPR. 16 de maio de 2019

SCC Capítulo 5 Computabilidade e Complexidade

Aula 10: Decidibilidade

Juliana Kaizer Vizzotto. Universidade Federal de Santa Maria. Disciplina de Teoria da Computação

ECO026 TEORIA DA COMPUTAÇÃO. Prof: Rafael Santos Site:

Máquina de Turing. Controle finito

Turing e Complexidade

SCC Capítulo 4 Linguagens Recursivamente Enumeráveis e Máquinas de Turing

Noção de Computabilidade

Problemas Computáveis

Teoria da Computação. Unidade 3 Máquinas Universais. Referência Teoria da Computação (Divério, 2000)

1 INTRODUÇÃO E CONCEITOS BÁSICOS

Procedimentos e Algorítmos Programas e Linguagens de Programação Tese de Church-Turing Formas de Representação de Linguagens

Linguagem Universal. assim como a entrada ser processada por a. (b) A segunda fita de representa a fita de

Computação efectiva. Que linguagens podem ser reconhecidas por algum tipo de autómato?

Técnicas de Extensão de MT

1 Postulado de Church-Turing 1

Teoria da Computação

Computabilidade e Complexidade (ENG10014)

Aula 10: Decidibilidade

Capítulo 8: O problema da parada. Decidibilidade e computabilidade. José Lucas Rangel Introdução.

Máquinas de Turing 3

SCC Capítulo 4 Linguagens Recursivamente Enumeráveis e Máquinas de Turing

Universidade da Madeira Ano lectivo 2006/07-2º semestre Responsável: Prof. José Carmo

Linguagens Formais e Autômatos P. Blauth Menezes

UNIVERSIDADE ESTADUAL DE MARINGÁ DEPARTAMENTO DE INFORMÁTICA

Máquinas de Turing - Computabilidade

Universidade Federal de Alfenas

ACH2043 INTRODUÇÃO À TEORIA DA COMPUTAÇÃO. Aula 18. Cap O Problema da Parada

Universidade Federal de Alfenas

Teresa Galvão LEIC - Teoria da Computação I 3.1

Incompletude em Sistemas Formais - Parte 2: Indecidibilidade

Máquina de Turing. Controle finito

6. Decidibilidade, indecidibilidade e decidibilidade parcial

1 introdução. capítulo. O que é uma solução computável? Quais são os limites do que pode ser computado? Existem problemas sem solução computacional?

Teoria da Computação. Computabilidade

Outras abordagens à computabilidade. Nota

PCS3616. Programação de Sistemas (Sistemas de Programação) Máquinas de Turing

Capítulo 2: Procedimentos e algoritmos

Máquinas Universais. Departamento de Ciência de Computadores da FCUP MC Aula 23 1

S. C. Coutinho. Máquina de Turing Universal p. 1/22

Melhores momentos AULA PASSADA. Complexidade Computacional p. 136

Capítulo 9: Linguagens sensíveis ao contexto e autômatos linearmente limitados.

Máquina de Turing Linguagens Sensíveis ao Contexto e Enumeráveis Recursivamente

Teoria da Computação 31 de Maio de 2017 Teste 2A Duração: 1h30

Decidibilidade. Mário S. Alvim Fundamentos de Teoria da Computação (FTC) DCC-UFMG (2018/02)

Capítulo A máquina de Turing (TM) padrão Combinações de máquinas de Turing A Tese de Turing. ADC/TC/Cap.9/ /LEI/DEIFCTUC 375

Melhores momentos AULA PASSADA. Complexidade Computacional p. 205

ACH2043 INTRODUÇÃO À TEORIA DA COMPUTAÇÃO

A Teoria Matemática que serviu como Base para Turing.

PCS3616. Programação de Sistemas (Sistemas de Programação) Visão Geral

Teoremas de Incompletude de Gödel e os Fundamentos da Matemática

Aula 9: Máquinas de Turing

Modelos de Computação Folha de trabalho n. 10

MT como calculadoras de funções parciais

Teoria da Computação. Aula 01

Teoria da Computação Prof. Lucília Figueiredo Prova 03 - ENTREGA DIA 24/06/2015. (a) Descreva o programa da MT usando um pseudocódigo.

Resolução Exe 2.12 Monolítico Recursivo

Draft-v0.1. Máquinas de Turing Máquinas de Turing

SCC Capítulo 3 - Linguagens Sensíveis ao Contexto, Linguagens Recursivamente Enumeráveis e Máquinas de Turing

UNIVERSIDADE FEDERAL RURAL DO SEMI-ÁRIDO CURSO: CIÊNCIA DA COMPUTAÇÃO. Prof.ª Danielle Casillo

UNIDADE UNIVERSITÁRIA:

SCC Capítulo 3 Linguagens Sensíveis ao Contexto e Autômatos Limitados Linearmente

PCC104 - Projeto e Análise de Algoritmos

Linguagens Formais e Autômatos (LFA)

Máquinas Universais. Máquina de Turing. Celso Olivete Júnior.

Análise de algoritmos. Parte I

Modelos Universais de Computação

Teoria da Computação 27 de Maio de 2015 Teste 2A Duração: 1h30

Teoria da Computação. Capítulo 1. Máquina de Turing. Prof. Wanderley de Souza Alencar, MSc.

Linguagens Formais e Autômatos. Apresentação do Plano de Ensino

Computabilidade. da Computação que estudam, formalmente, as capacidades e as limitações da computação.

Máquinas de Turing: uma introdução

Universidade Federal de Alfenas

Teoria da Computação Exame 1 30 de Junho de 2003

O que é a Teoria em Ciência da Computação. Introdução à Ciência da Computação Mário S. Alvim

Faculdade de Computação

LINGUAGENS SENSÍVEIS AO CONTEXTO E AUTÔMA- TOS LIMITADOS LINEARMENTE

Transcrição:

LFA - PARTE 6 Os Limites da Computabilidade O Que É Computável? O Que É Possível De Ser Computado? João Luís Garcia Rosa LFA-FEC-PUC-Campinas 2002 R. Gregory Taylor: http://starbase.cs.trincoll.edu/~rtaylor/thcomp/ 1 Dois Conceitos Distintos Conceito de função teorético-numérica efetivamente calculável (intuitivo, filosófico, abaixo da cultura da matemática) Conceito de função Turing-computável (técnico) 2 Tese de Church Turing Se f é efetivamente calculável, então f é Turing-computável. (não obviamente verdadeiro) Se f é Turing-computável, então f é efetivamente calculável. (obviamente verdadeiro) Uma alegação filosófica sobre a matemática 3 1

Suporte Empírico O modelo de Turing é o primeiro modelo de função calculável efetivamente A classe de funções Markov-computáveis é idêntica à classe de funções Turingcomputáveis A classe de funções máquina de registradores-computáveis é idêntica à classe de funções Turing-computáveis 4 Argumento a partir da Convergência de Idéias Não Similares Se TCT é falsa, não se deve esperar uma das análises propostas da função efetivamente calculável para incluir alguma função não Turing-computável? O fato que nunca aconteceu sugere que não existe tal função, o que significa TCT verdadeira. 5 Tese de Church Turing (cont.) Contrapositivo: Se f não é Turingcomputável, então não é efetivamente calculável Exemplo (Uma Máquina de Turing que Compila/Interpreta Programas em Linguagem C) 6 2

Preparatório Assuma a enumeração de máquinas de Turing M 0, M 1, M 2, Configuração de representação de valor (rv) Terminologia: Se M n pára na configuração r-v dado o próprio número de Gödel como entrada, então M n auto-pára 7 Problema da Auto-Parada para Máquinas de Turing Primeiro problema insolúvel a ser considerado 8 Primeira Formulação Existe um algoritmo geral para determinar, para um n 0 arbitrário, se M n auto-pára? Se houver, então o Problema da Auto- Parada é solúvel 9 3

Preparação Função numérico-teorética parcial Função numérico-teorética não definida em nenhum lugar Toda máquina de Turing computa função unária A enumeração de máquinas de Turing induz à enumeração de funções Turingcomputáveis unárias f 0, f 1, f 2,... 10 Segunda Formulação Existe um algoritmo geral para determinar, para n 0 arbitrário, se f n (n) é definida? Se existir, então o Problema da Auto-Parada é solúvel. 11 Preparatório f*(n) = 0 se f n (n) é não definida f*(n) = f n (n) + 1 se f n (n) é definida f * é bem definida Se o Problema da Auto-Parada é solúvel, então f * é efetivamente computável 12 4

Terceira Formulação A função numérico-teorética unária f* é efetivamente calculável? 13 Teorema Não existe máquina de Turing que compute f*. Suponha algum M* que compute f*. Então há uma contradição. 14 Resumo O teorema diz que nenhuma máquina de Turing pode computar f* Assumindo a Tese de Church Turing, isto significa que f* não é efetivamente calculável Mas f* não efetivamente calculável significa que o Problema da Auto-Parada é insolúvel 15 5

O Problema da Parada (Completa) para Máquinas de Turing Existe um algoritmo geral para decidir, de n 0 e m 0 arbitrários, se M n pára na configuração r-v quando começa percorrendo o símbolo mais a esquerda de m + 1 1s em uma fita não em branco? (primeira formulação) 16 Segunda Formulação Existe um algoritmo geral para determinar, para n 0 e m 0 arbitrários, se f n (m) é definida? 17 Preparatório h*(n, m) = 0 se f n (m) é não definida h*(n, m) = f n (m) + 1 se f n (m) é definida h* binária, total 18 6

Terceira Formulação h* é efetivamente computável? 19 Teorema A função h* não é Turing-computável. Suponha computada por M*. Então f* é Turing-computável, contradizendo o teorema Redução do Problema de Auto-Parada para o Problema de Parada Completa PAP para MT PPC para MT 20 Resumo O teorema diz que nenhuma máquina de Turing pode computar h* Assumindo a Tese de Church Turing, isto significa que h* não é efetivamente calculável Mas h* não efetivamente calculável significa que o Problema da Parada é insolúvel 21 7

Funções Características Dado o conjunto S de números naturais, a função χ S : N N χ S (n) = 1 se n S χ S (n) = 0 caso contrário (se n S) função característica do conjunto S 22 Conjuntos Recursivos O conjunto S de números naturais é recursivo se a função característica χ S (n) for Turing-computável S = {n n é par} e S c = {n n é ímpar} {n n é primo} Entendimento intuitivo (dado Church Turing): conjuntos efetivamente decidíveis (sim/não) 23 Preliminar Viu-se que algumas máquinas de Turing auto-param enquanto outras não. K =def. {n máquina de Turing M n autopára} Fácil ver que, dado a insolubilidade do Problema da Auto-Parada, que K não é recursivo. Segue que K c também não é recursivo. 24 8

Teorema de Rice Seja Γ qualquer conjunto não trivial de funções Turing-computáveis unárias (não vazio nem a classe de todas as funções Turing-computáveis unárias) Seja Ψ Γ o conjunto de todos os números de gödel dos elementos de Γ (máquinas de Turing que computam) Então Ψ Γ é um conjunto não recursivo de números naturais 25 Aplicações Práticas Seja Γ a classe de funções f definíveis em quase todo lugar (para todos os possivelmente finitamente muitos argumentos) A classe não trivial Ψ Γ de números naturais Portanto não recursivo (por Rice) Portanto não efetivamente decidível (por Church Turing) Então não perca tempo procurando por tal algoritmo 26 Aplicações Práticas (cont.) Programas C++ para computar alguma função f {n M n computa f} é classe não trivial Ψ Γ de números naturais Portanto não recursivo (por Rice) Portanto não efetivamente decidível (por Church Turing) Então não perca tempo procurando por tal programa 27 9