Aula 6
Por:
Tarcisio Coutinho da Silva
{tcs5}@cin.ufpe.br
David Barros Hulak
{dbh}@cin.ufpe.br

10º problema de Hilbert

Tese de Church-Turing
- Algoritmos
- Computabilidade

AFD:
(Q, Σ, δ, q0, F)

PDA:
(Q, Σ, δ, q0, Γ, F)
- Pilha

MT:
(Q, Σ, δ, q0, Γ, qa, qr)
- Fita

Definição Formal
 Uma MT é uma 7-upla, (Q, ∑, Γ, δ, qo, qaceita, qrejeita),
onde
▪
▪
▪
▪
▪
▪
▪
Q é o conjunto finito de estados;
∑ é o alfabeto da entrada, ⊔ ∉ ∑;
Γ é o alfabeto da fita, ⊔ ∈ Γ e ∑ ⊆ Γ;
δ é a função de transição, δ: Q × Γ -> Q × Γ × {E, D};
qo é o estado inicial, qo ∈ Q;
qaceita é o estado de aceitação, qaceita ∈ Q;
qrejeita é o estado de rejeição, qrejeita ∈ Q.

Computação
 Uma MT M recebe como entrada w ∈ ∑*
 Coloca w na porção mais a esquerda da fita e preenche os
campos seguintes com branco, o fim da entrada é
determinado pelo primeiro símbolo em branco.
 Segue-se os passos determinado pela função de transição.
 Se tentar mover para a esquerda além da extremidade a
cabeça permanece no mesmo lugar.
 A computação só pára se entrar no estado de aceitação,
aceitando a cadeia, ou de rejeição, rejeitando a cadeia.
Caso contrário, M continua para sempre.
Durante a computação uma MT troca o estado atual, o
conteúdo da fita e a posição da cabeça. Podemos
demonstrar um momento da computação através de uma
configuração.
 Definição
▪ Escrevemos uqv e dizemos que o estado atual é q, o
conteúdo da fita é uv e a cabeça aponta para o primeiro
símbolo de v.
 Exemplo


Dizemos que uma configuração C1 origina C2 se a MT
puder ir legitimamente de C1 para C2 em um único
passo.

Casos particulares
- Extremidade direita: v qi ⊔
- Extremidade esquerda: o que fazer quando
qi a v e há movimento para a esquerda?
- Configurações de parada: estado da configuração = qa
(configuração de aceitação) ou qr (configuração de rejeição)

Exemplo:
 Dê as configurações na computação de w= 0000
na seguinte MT.
Resposta
1.
Dê as configurações na computação das
seguintes cadeias na MT usada no exemplo.
1. ε
2. 0
3. 000

Linguagem Turing-Reconhecível (Recursivamente
Enumerável)
 Linguagem que uma Máquina de Turing M reconhece.
 L(M) é o conjunto de cadeias que M aceita.
 Se uma cadeia não pertence a L(M), M rejeita ou entra em
loop.

Linguagem Turing-Decidível
 Linguagem que uma Máquina de Turing M decide.
 M pára ao computar qualquer cadeia (aceita ou rejeita).
 Toda linguagem decidível é reconhecível.

As variantes da MT têm o mesmo poder que
ela
 Multifita
 MT Não-Determinística
 Enumerador

Pode ser convertida em uma MT colocando as suas fitas
em uma só, determinando uma separação entre elas.

Toda MT multifita tem uma MT equivalente de uma fita.

Uma linguagem é Turing-reconhecível se e somente se
uma MT multifita a reconhece.

Uma MT que gera uma árvore de configurações.

Se em algum ramo da computação origina um estado
de aceitação, MT aceita w.

Toda MT não determinística tem uma MT equivalente
determinística.

Uma linguagem é Turing-reconhecível se e somente
se uma MT não-determinística a reconhece.

É uma MT que controla uma impressora e imprime
as cadeias que ela aceita.

Uma linguagem é Turing-reconhecível se e somente
se um enumerador a enumera
(1ª questão)
Defina:

-
Máquina de Turing.
-
M aceita w.
-
Linguagem reconhecível.
-
Linguagem decidível.
-
Mostre que toda linguagem decidível é
reconhecível.

Michael Sipser: Introduction to the Theory of
Computation (2nd edition)
Aula 6
Arthur Ramos - [email protected]
David Hulak - [email protected]
Filipe Martins - [email protected]
Hugo Azevedo - [email protected]
Paulo Orlando - [email protected]
Ricardo Salomão - [email protected]
Tarcisio Coutinho - [email protected]
Tiago Ferreira - [email protected]
Thyago Machado - [email protected]
Vinícius Henrique - [email protected]
Download

Introdução a MTs - Centro de Informática da UFPE