Carregar apresentação
A apresentação está carregando. Por favor, espere
1
Máquina de Turing Universal
2
Uma limitação de Máquinas de Turing:
Máquinas de Turing são “hardwired” elas executam um único programa Computadores reais são programáveis
3
Solução: Máquina de Turing Universal Atributos: Máquina programável Simula qualquer outra Máquina de Turing
4
Máquina de Turing Universal
simula qualquer Máquina de Turing Entrada da Máquina de Turing Universal: Descrição das transições de Conteúdo inicial da fita de
5
Três fitas Descrição de Máquina de Turing Universal
Conteúdo da fita de Fita 3 Estado de
6
Descrevemos uma Máquina de Turing como um string de símbolos:
Fita 1 Descrição de Descrevemos uma Máquina de Turing como um string de símbolos: Codificamos como um string de símbolos
7
Alfabeto de Codificação
Símbolos: Codificação:
8
Codificação de estados
Codificação do movimento da cabeça da fita Movimento: Codificação:
9
Codificação de Transição
separador
10
Codificação da Máquina
Transições: Codificação: separador
11
Conteúdo da fita 1 da MT Universal:
codificação da máquina a ser simulada na forma de um string binário de 0’s e 1’s
12
Uma Máquina de Turing é descrita
como um string binário de 0’s e 1’s Portanto: O conjunto de todas as Máquinas de Turing forma uma linguagem: cada string da linguagem é o código binário de uma Máquina de Turing
13
Linguagem das Máquinas de Turing
(Máquina deTuring 1) L = { , , , …… } (Máquina deTuring 2) ……
14
Conjuntos Contáveis
15
Conjuntos infinitos são:
Contáveis ou Não Contáveis
16
Conjunto Contável: Existe uma correspondência biunívoca entre elementos do conjunto e números naturais
17
Exemplo: o conjunto dos inteiros positivos pares é contável Inteiros pares: Correspondência: Números naturais: corresponde a
18
Exemplo: O comjunto dos números racionais é contável Números racionais:
19
Prova ingênua Números racionais: Correspondência: Números naturais: Não funciona: nunca iremos contar números com numerador 2:
20
Abordagem melhor
26
Números racionais: Correspondência: Números naturais:
27
Provamos: O conjuntos dos números racionais é contável, descrevendo um procedimento de enumeração
28
Definição Seja um conjunto de strings Um procedimento de enumeração para é uma Máquina de Turing que gera todos os strings de , um por um e cada string é gerado em tempo finito
29
strings Enumerador para saída (na fita) tempo finito:
30
Máquina Enumeradora Configuração Instante 0 Instante
31
Instante Instante
32
Observação: Um conjunto é contável de existe um procedimento de enumeração para ele
33
Exemplo: O conjunto dos strings é contável Prova: Vamos descrever um procedimento de enumeração
34
Procedimento ingênuo:
Produzir os strings em ordem lexicográfica: Não funciona: strings que começam com nunca serão produzidos
35
Procedimento melhor: Ordem Própria 1. Produza todos os strings de comprimento 1 2. Produza todos os strings de comprimento 2 3. Produza todos os strings de comprimento 3 4. Produza todos os strings de comprimento 4
36
comprimento 1 Produza strings em Ordem Própria: comprimento 2 comprimento 3
37
Teorema: O conjunto de todas as Máquinas de Turing é contável Prova: Vamos mostrar um procedimento de enumeração para o conjunto de strings que representam Máquinas de Turing Qualquer Máquina de Turing pode ser codificada como um string de 0’s e 1’s
38
Repita Procedimento de enumeração: 1. Gere o próximo string binário
de 0’s e 1’s na ordem própria 2. Verifique se o string descreve uma Máquina de Turing se SIM: imprima o string na fita se NÃO: ignore o string
39
Conjuntos Não Contáveis
40
Teorema: Seja um conjunto infinito contável O conjunto potência de : não é contável
41
Prova: Como é contável, podemos escrever Elementos de
42
Elementos do conjunto potência têm a forma:
……
43
Podemos codificar cada elemento do conjunto
potência como um string binário de 0’s e 1’s Codificação elementos do conj. potência
44
Vamos supor, por contradição,
que o conjunto potência seja contável. Então: podemos enumerar os elementos do conjunto potência
45
elementos do conj. potência Codificação
46
Tome o conjunto cuja codificação é
a sequência dos bits que são os complementos dos bits da diagonal
47
Novo conjunto: (complemento binário da diagonal)
48
o novo conjunto deve ser
algum elemento do conjunto potência Entretanto, isso é impossível: o i-ésimo bit de deve ser o complemento dele próprio pela definição de : Contradição!!!
49
Como temos uma contradição:
O conjunto potência of não é contável
50
Uma Aplicação: Linguagens
Alfabeto Exemplo : O conjunto de todos os Strings: infinito e contável
51
Alfabeto Exemplo : O conjunto de todos os Strings: infinito e contável Uma linguagem é um subconjunto de :
52
não contável Alfabeto Exemplo : O conjunto de todos os Strings:
infinito e contável O conjunto potência de consiste de todas as linguagens sobre o alfabeto: não contável
53
Conjunto de todas as linguagens: não contável
Conjunto de todas as MTs: contável Existem uma infinidade de linguagens a mais do que Máquinas de Turing
54
Conclusão: Existem linguagens que não são aceitas por nenhuma Máquina de Turing Essas linguagens não podem ser descitas por meio de algoritmos
Apresentações semelhantes
© 2024 SlidePlayer.com.br Inc.
All rights reserved.