Carregar apresentação
A apresentação está carregando. Por favor, espere
1
Redução
2
Problema é redutível ao problema
Se, quando podemos resolver o problema , então podemos também resolver o problema
3
Problema é redutível ao problema
Se é decidível então é decidível Se é não decidível então é não decidível
4
Exemplo: o problema da parada é redutível ao problema de entrada em um estado
5
Problema de entrada em um estado
Entradas: Máquina de Turing Estado String Questão: entra no estado quando executa sobre ?
6
Teorema: O problema de entrada em um estado é não decidível Prova: Reduza o problema da parada ao problema de entrada em um estado
7
Suponha que temos um algoritmo (MT)
que resolve o problema de entrada em um estado Vamos construir um algoritmo que resolve o problema da parada
8
Suponha que temos um algoritmo que resolve
o problema de entrada em um estado: SIM entra Algoritmo para o problema de entrada em um dado estado NÃO não entra
9
Queremos projetar um algoritmo:
SIM pára sobre Algoritmo para o problema da parada NÃO não pára sobre
10
Modifique a máquina de entrada :
Adicione um novo estado A partir de qualquer estado de parada adicione transições para estado de parada único estados de parada
11
pára se e somente se pára entra no estado
12
Algoritmo para o problema da parada:
Entradas: máquina e string 1. Construa a máquina com estado 2. Execute o algoritmo para o problema de entrada em um estado, com as entradas: , , ,
13
Algoritmo para o problema da parada
SIM SIM algorimo p/ entrada em estado Gera NÃO NÃO
14
Reduzimos o problema da parada ao problema de entrada em um estado
Como o problema da parada é não decidível, então o problema de entrada em estado é também não decidível Fim da Prova
15
Outro exemplo: o problema da parada é redutível ao problema da parada com a fita em branco
16
O problema da parada com a fita em branco
Entrada: Máquina de Turing Questão: pára quando executada tendo como entrada a fita em branco?
17
Teorema: O problema da parada com a fita em branco é não decidível Prova: Reduza o problema da parada ao problema da parada com a fita em branco
18
Suponha que temos um algoritmo para
o problema da parada com a fita em branco Vamos construir um algoritmo para o problema da parada
19
Suponha que temos um algoritmo para
o problema da parada com a fita em branco: pára sobre a fita em branco SIM Algoritmo para parada com a fita em branco não pára sobre a fita em branco NÃO
20
Queremos projetar um algoritmo para
resolver o problema da parada: SIM pára sobre Algoritmo para o problema da parada NÃO não pára sobre
21
Construa uma nova máquina
Sobre a fita escreva Então continue a execução como passo 1 passo 2 se fita em branco execute então escreva com entrada
22
pára sobre a entrada se e somente se pára quando executada com a fita em branco
23
Algoritmo para o problema da parada:
Entradas: máquina e string 1. Construa 2. Execute o algoritmo para o problema da parada com a fita em branco com entrada
24
Algoritmo para o problema da parada
SIM SIM algoritmo p/ parada com fita em branco Gera NÃO NÃO
25
Reduzimos o problema da parada
ao problema da parada com fita em branco Como o problema da parada é não decidível, o problema da parada com a fita em branco é também não decidível Fim da Prova
26
Resumo de Problemas Não Decidíveis
Problema da Parada: Máquina pára sobre a entrada ? Problema de pertinência: Máquina aceita o string ? Em outras palavras: O string é elemento de uma linguagem recursivamente enumerável ?
27
Problema da parada com a fita em branco:
Máquina pára quando executada sobre a fita em branco? Em outras palavras: O string vazio é elemento de uma linguagem recursivamente enumerável ? Problema de entrada em um dado estado: Máquina entra em um estado quando executada sobre a entrada ?
28
Funções Não Computáveis
29
Funções Não Computáveis
Contra- domínio Domínio Uma função é não computável se ela não pode ser computada para todo o seu domínio
30
Uma função não computável:
número máximo de passos até que uma máquina de Turing com estados páre quando executada sobre a fita em branco
31
Teorema: A função é não computável Prova: Suponha, por contradição, que seja computável Então o problema da parada para a fita em branco é decidível
32
Algoritmo para a parada com fita em branco:
Entrada: máquina 1. Conte os estados de : 2. Compute 3. Simule por passos começando com a fita em branco Se pára enão retorne SIM caso contrário retorne NÃO
33
Portanto, o problema da parada com fita
em branco é decidível Entretanto, já provamos que o problema da parada com fita em branco é não decidível Contradição!!!
34
Portanto, a função é não computável
Fim da Prova
35
Teorema de Rice
36
Definição: Propriedades não triviais de linguagens recursivamente enumeráveis: qualquer propriedade de alguma (não todas) as linguagens recursivamente enumeráveis
37
Algumas propriedades não triviais de
linguagens recursivamente enumeráveis: é vazia é finita contém dois strings diferentes com o mesmo comprimento
38
Teorema de Rice: Qualquer propriedade não trivial de uma linguagem recursivamente enumerável é não decidível
39
Vamos provar para algumas propriedades
não triviais, sem usar o teorema de Rice
40
Teorema: Para qualquer linguagem recursivamente enumerável não é decidível determinar se é vazia Prova: Vamos reduzir o problema de pertinência a este problema
41
Seja uma máquina que aceita
Suponha que temos um algoritmo para o problema da linguagem vazia: SIM vazia Algoritmo para o problema da linguagem vazia NO não vazia
42
Vamos construir um algoritmo para
o problema de pertinência: SIM aceita Algoritmo para o problema de pertinência NÃO rejeita
43
Primeiro construa a máquina :
Quando entra em um estado final, compare a entrada original com Aceite se a entrada original é igual ao string
44
se e somente se é não vazia
45
Algoritmo para o problema de pertinência:
Entradas: máquina e string 1. Construa 2. Determine se é vazia SIM: então NÃO: então
46
Algoritmo de pertinência
NÃO SIM verifique se construa SIM é vazia NÃO Fim da Prova
Apresentações semelhantes
© 2024 SlidePlayer.com.br Inc.
All rights reserved.