Materia Disciplina...mputabilidade uece - tcomp cap4 decidibilidade-nov, Notas de estudo de Informática
arnaldo-araujo-11
arnaldo-araujo-11

Materia Disciplina...mputabilidade uece - tcomp cap4 decidibilidade-nov, Notas de estudo de Informática

9 páginas
9Números de download
1000+Número de visitas
Descrição
Materia utilizado na Disciplina de Teoria da Computabilidade ministrada pelo professor Edson Pessoa da UECE
20 pontos
Pontos de download necessários para baixar
este documento
Baixar o documento
Pré-visualização3 páginas / 9
Esta é apenas uma pré-visualização
3 mostrados em 9 páginas
Esta é apenas uma pré-visualização
3 mostrados em 9 páginas
Esta é apenas uma pré-visualização
3 mostrados em 9 páginas
Esta é apenas uma pré-visualização
3 mostrados em 9 páginas

CAPÍTULO 4

DECIDILIDADE (Solucionabilidade)

1. Problemas de Decisão

Um problema de decisão P consiste de um conjunto de questionamentos, cada um dos quais tendo sim ou não como resposta.

Exemplo: 8 é um quadrado perfeito?

Usualmente, um problema de decisão consiste de um número infinito de questionamentos. Por exemplo, o problema PQ de determinar seum número natural arbitrário é um quadrado perfeito, consiste das seguintes questões:

p0: 0 é um quadrado perfeito? p1: 1 é um quadrado perfeito? p2: 2 é quadrado perfeito? p3: 3 é um quadrado perfeito? . . .

A solução de um problema de decisão P éum algoritmo que determina a resposta apropriada para a seguinte questão: " pF 0C EP ? "(p é uma instância do problema P)

Noção Intuitiva do Algoritmo (Revisão)

Nós não temos uma definição precisa de algoritmo. Entretanto, sabemos reconhecer um, quando o vemos.

Algumas propriedades parecem ser fundamentais para o conceito de algoritmo. São elas:

Completo: um algoritmo produz uma resposta, positiva ou negativa;

Mecânico: um algoritmo é uma seqüência finita de instruções, as quais podem ser executadas, sem a necessidade de perspicácia, argúcia, engenhosidade ou conjecturas;

Determinístico: para a mesma entrada, um algoritmo apresenta sempre o mesmo resultado.

Um procedimento que satisfaz as propriedades de ser completo, mecânico e determinístico é chamado de efetivo (procedimento efetivo).

1 PAGE 10

As computações de uma máquina de Turing padrão são claramente mecânicas e determinísticas. A Máquina de Turing que, para cada entrada, para, é também completa. Desse modo, a Máquina de Turing é um sistema formal adequado para se modelar soluções para o problema de decisão. O problema tem resposta positiva se a Máquina de Turing aceita a entrada e negativa se ela rejeita.

Vamos adotar a Máquina de Turing padrão como o sistema formal no qual as soluções dos problemas de decisão serão formuladas.

Lembrete: A linguagem aceita por uma Máquina de Turing é chamada de recursivamente enumerável. Caso a Máquina de Turing pare para toda entrada, a linguagem é dita ser recursiva.

Podemos constatar que uma Maquina de Turing M que reconhece uma linguagem recursiva pode ser vista como a solução de um problema de decisão. A máquina M resolve o seguinte problema de decisão: “A palavra wF 0C EF 0E 5 esta em L(M)? “.

A dualidade entre solução de um problema de decisão e linguagem recursiva pode ser explorada para ampliar as técnicas disponíveis para se estabelecer a solvabilidade dos problemas de decisão.

Um problema é solvível se ele tem uma representação que aceita entradas oriundas de uma linguagem recursiva.

A Máquina de Turing multi-trilhas e multi-fitas, por serem similares a Máquina de Turing padrão, também servem para modelar o problema de decisão.

2. A tese de Church – Turing

A máquina de Turing tem sido usada como reconhecedor de linguagens e também para resolver problemas de decisão. Tais computações se restringem a produzir sim ou não como resposta. A tese de Church - Turing assegura que todo problema de decisão solvível pode ser transformado em uma máquina de Turing equivalente.

A máquina de Turing, também pode ser usada para computar funções. Para tanto, basta considerar o resultado de uma computação como os símbolos contidos na fita, quando a máquina para. Esse enfoque e mais a forma da tese de Church - Turing em termos de funções efetivamente computáveis, será objeto dos capítulos seguintes. Por ora, vamos considerar a tese de Church - Turing, restrita apenas a classe dosproblemas de decisão.

A solução de um problema de decisão requer uma resposta para cada instância do problema. O relaxamento dessa restrição, conduz a noção de uma solução parcial. Uma solução parcial para o problema de decisão P é um, não necessariamente completo, procedimento efetivo que retoma sim para todo pF 0C EP

2 PAGE 10

cuja resposta seja afirmativa. Se a resposta para p é negativa, o procedimento pode retornar não ou falhar. Com o relaxamento da restrição referida, a solução parcial de um problema de decisão é equivalente ao problema de determinar se uma palavra pertence a uma linguagem recursivamente enumerável.

Tese de Church - Turing para problemas de decisão:

Existe um procedimento efetivo para resolver um problema de decisão se, e somente se, existe uma máquina de Turing que aceita uma linguagem recursiva que resolve o problema.

Extensão da tese de Church - Turing para problemas de decisão:

Um problema de decisão P éparcialmente solvível se, e somente se, existe uma máquina de Turing que aceita precisamente os elementos de P cuja resposta seja sim.

A tese de Church - Turing não é um teorema matemático. Ela não pode ser provada. Isto requereria uma definição formal para a noção intuitiva de procedimento efetivo. Sua negação, contudo, poderia ser demonstrado ao se descobrir um algoritmo que não pudesse ser computado por uma máquina de Turing. Existem muitas evidências deque um tal algoritmo não existe.

3. O Problema da Parada

O mais famoso problema de solvabilidade é inerente a própria máquina de Turing. O problema da parada pode assim ser formulado: "Dadas uma máquina de Turing abstrata M, com alfabeto de entrada F 0E 5, e uma palavra wF 0C EF 0E 5*, a computação de M, com a entrada w, pára?"

Teorema 4.3.1

O problema da parada para as Máquinas de Turing não é solvível.

Vamos provar que não existe um algoritmo para decidir se uma máquina de Turing M, para uma dada entrada w, pára ou não. Tal prova será feita por contradição.

A prova requer, no entanto, que a máquina de Turing M e a entrada w sejam representadas como uma palavra de entrada. Para tanto, vamos assumir que toda MT tem os estados denotados por Q=F 07 Bq0 , q1 , q2 , ........, qkF 07 D , sendo q0 o estado inicial, F 0E 5=F 07 B0, 1F 07 D , F 04 7=F 07 B0, 1, BF 07 D e as transições da forma F 06 4(qi, x)=F 05 Bqj, y, dF 05 D , com qi, qjF 0C EQ, x, yF 0C EF 04 7 e dF 0C EF 07 BL, RF 07 D, podendo ser representada como uma palavra de F 0E 5 , do seguinte modo:

1. Os elementos de M são codificados como palavras de 1’s, de acordo com a tabela a seguir:

Símbolo Codificação 0 ............................. 1

3 PAGE 10

1 ............................. 11 B ............................. 111 q0 ............................. 1 q1 ............................. 11 q2 ............................. 111 . . . qk ............................. 1k+1 L .............................. 1 R .............................. 11

2. Cada transição F 06 4 (qi, x)=F 05 Bqj, y, dF 05 D é codificada como indicado a seguir, onde Cd(x) indica o código de x, conforme o item 1:

cd(qi)0cd(x)0cd(qj)0cd(y)0cd(d)

3. A codificação de uma MT tem o seguinte formato, sendo cd(F 06 4 i) a codificação da i-ésima transição, conforme o item 2:

000cd(F 06 4 1)00cd(F 06 4 2)00cd(F 06 4 3)00....................00cd(F 06 4 n)000

Assim sendo, podemos observar que uma MT é uma palavra de 0’s e 1’s, portanto do alfabeto F 0E 5=F 07 B0, 1F 07 D da própria MT codificada, onde um zero separa símbolos de uma transição, dois zeros separam transições e três zeros indicam inicio e fim da MT.

Exemplo: Codificar a Maquina de Turing M abaixo:

a) Codificação das transições:

Transição Codificação F 06 4 (qi, x)=F 05 Bqj, y, dF 05 D 101110110111011 F 06 4 (qi, x)=F 05 Bqj, y, dF 05 D 1101010101 F 06 4 (qi, x)=F 05 Bqj, y, dF 05 D 110110111011011 F 06 4 (qi, x)=F 05 Bqj, y, dF 05 D 1110110101101

b) Codificação da MT

4 PAGE 10

00010111011011101100110101010100110110111011011001110110101101000

Podemos pensar em construir uma MT para saber se uma palavra uF 0C EF 07 B0, 1F 07 D* é ou não a codificação de uma MT determinística. “A computação começa por examinar se a palavra u tem como prefixo 000, seguido de uma seqüência de transições codificadas, separadas por 00 e seguida de 000”. As palavras que satisfazem este padrão representam Máquinas de Turing.

Agora, podemos voltar a prova do teorema 4.3.1. A demonstração do teorema é feita por contradição.

Prova: Suponha que existe uma Máquina de Turing H que resolve o problema da parada. Uma palavra é aceita por H se:

i) A entrada consiste da representação de M, seguida de w, isto é R(M)w. ii) A computação de M, com entrada w, pára.

Caso contrário, H rejeita a entrada.

De uma forma esquemática:

aceita R(M)w F 0A E rejeita M não para com a entrada w

Vamos modificar H para construir uma outra máquina H’, cujas computações são as mesmas de H, exceto que H’ entra em loop indefinido, sempre que H termina em um estado de aceitação, isto é, quando Mpara com o entra w.

loop

R(M)w F 0A E para

Seja agora a máquina D, construída pela combinação das máquinas COPY e H’, assim definidas.

D

5 PAGE 10

R(M) R(M) R(M)

A entrada da máquina D é a representação de qualquer MT M com o alfabeto F 0E 5= {0,1}. Em particular, a entrada de D pode ser a representação da própria D, ou seja, R(D). Assim, fazendo M=D, temos,

D

R(D) R(D)R(D)

Isto nos conduz a seguinte situação:

Porém, isto é uma contradição. No entanto, a máquina D pode ser construída diretamente da máquina H que resolve o problema da parada.

Deste modo, H não existe, e assim o problema da parada é indicidivel.

Vamos chamar de LH a linguagem aceita por H, isto é, LH = {R(M)w F 07 C R(M) é a representação de uma máquina M que para com a entrada w}.

Corolário 4.3.2

LH , sobre o alfabeto {0,1} não é recursiva.

Um argumento similar pode ser adotado para estabelecer a não solvabilidade do problema da parada para uma MT com um alfabeto qualquer.

4. A Máquina Universal

Vamos considerar uma máquina de Turing U que aceita entradas da forma R(M)w, sempre que a computação de Mpara com a entrada w. Tal máquina não resolve o problema da parada, uma vez que U não garante a rejeição das entradas para as quais M não para. De fato, uma computação de U com a entrada R(M)w continua indefinidamente sempre que Mnão para com a entrada w.

Vamos assumir que as Maquinas de Turing desta seção são determinísticas, com alfabeto de fita F 04 7 = {0, 1, B}.

6 PAGE 10

R(M)w

A máquina U é chamada de MT Universal, uma vez que o resultado de qualquer computação da máquina M com entrada w pode ser obtida das computações de U com entrada R(M)w.

A máquina Universal é suficiente para obter os resultados das computações de uma família inteira de máquinas.

Teorema 4.4.1

A linguagem LH é recursivamente enumerável.

Prova:

Uma Máquina de Turing determinística U, com 3 fitas, pode ser desenhada para aceitar LH.

fita 3 w... Contem a simulação da computação de M com a entrada w

fita 2 1 Contém o estado atual da computação de M

fita 1 R(M)w Contem a representação de M e a entrada w

A computação de U consiste de:

1. Se a entrada não tem a forma R(M)w, para uma Máquina de Turing determinística M e entrada w, U move-se para a direita indefinidamente.

2. A palavra w é escrita na fita 3, a partir da posição 1. A cabeça de leitura é reposicionada na posição 0.

3. Um simples 1(código do estado q0) é escrito na fita 2. 4. Uma transição de M é simulada sobre fita 3. Uma transição de M é

determinada pelo símbolo lido na fita 3 e o estado codificado na fita 2.

Seja x o símbolo da fita 3 e qi o estado da fita 2. Assim,

a) Procura-se na fita 1 uma transição cuja os dois primeiros componentes combinam com cd(qi) e cd(x). Se a transição não existe, Upara e aceita a entrada.

b) Suponha que a fita 1 contenha a transição procurada

cd(qi)0cd(x)0cd(qj)0cd(y)0cd(d)

7 PAGE 10

Assim,

i) cd(qi) é substituído para cd(qj) na fita 2; ii) o símbolo y é escrito na fita 3; iii) o cabeça da fita 3 se move conforme indicado por d.

5. A próxima transição de M é simulada pela repetição dos passos 4 e 5.

A simulação da máquina M por meio da máquina Universal U indica que esta aceita as palavras de LH. Entretanto, a computação de U entra em loop para as palavras que não pertencem a LH, isto é, wF 0C E(F 0E 5*- LH). Uma vez que L(U) = LH, LH é recursivamente enumerável.

Corolário4.4.2

As linguagens recursivas constituem um subconjunto próprio das linguagens recursivamente enumerável.

A habilidade de se obter resultados de uma máquina via computações de uma outra, facilita o desenho de MT’s mais complicadas. Quando dizemos que uma MT M’ executa a máquina M com entrada w, queremos dizer que M’ é suprida com a entrada R(M)w e M’ simula a computação de M com a entrada w.

Exercício 4.4.1 Considere a seguinte representação R(S) de uma Máquina de Turing S. Simule a execução de S com a entrada w=1111, em uma MT com 3 fitas, conforme esquema anteriormente esboçado.

R(S) = 0001011101101110110011011011011011001101110111011010011101101 1101101000

EXERCÍCIOS

1. Considere a seguinte representação de uma Máquina de Turing S, conforme apresentado em sala de aula:

R(S)=0001011101101110110011011011011011001101110111011 0100111011011101101000

a) Desenhe o grafo de S. b) Execute R(S)w, onde w = 11111. c) Que função você acha que S computa ?

8 PAGE 10

2. A Máquina de Turing do exercício anterior teve as duas ultimas transições modificadas, obtendo-se com isso a maquina M abaixo:

R(M)=000101110110111011001101101101101100110111011101101100111011 101110111011000

Repetir para M os itens a, b e c da questão anterior.

3. Considerando as Máquina de TuringZ e E abaixo, faça o que se pede:

a) Desenhe os grafos de Z e E. b) Que função você acha que Z e E computam?

R(Z)=0001011101101110110011011011011011001101110111011101001110110 111011101001110111011110111011001111011101111101101000

R(E) = 0001011101101110110011011101101110110011011011011011000

9 PAGE 10

Até o momento nenhum comentário
Esta é apenas uma pré-visualização
3 mostrados em 9 páginas