• Nenhum resultado encontrado

TC-Aula16

N/A
N/A
Protected

Academic year: 2021

Share "TC-Aula16"

Copied!
6
0
0

Texto

(1)

Modelos Equivalentes às Máquinas de Turing

Nesta aula, vamos ver, de forma mais geral, alguns modelos de computação que são equi-valentes ao modelo Máquinas de Turing que vimos antes. Alguns desses modelos são inspirados nas MTs. Outro, é uma generalização das GLCs. Esta aula serve para reforçar o entendimento da Tese de Church-Turing.

1. Máquinas de Turing de Múltiplas Fitas (MTMFs)

As MTs vistas possuem uma única fita infinita para ambos os lados. Uma generalização deste modelo disso foi das Máquinas de Turing de Múltiplas Fitas (MTMF), que po-dem ter uma quantidade qualquer (mas fixa) de fitas infinitas. Cada uma das n fitas tem uma posição de leitura/escrita independente. Apenas a 1ª fita recebe a cadeia de entrada, e a MTMF também é controlada por uma máquina de estados, porém as transições mudam para operar nas n fitas.

A transição da MTMF tem como condição (entrada):  o estado atual,

 n símbolos a serem lidos das fitas (o símbolo que precisa ser lido na posição atual da fita 1, o símbolo lido da fita 2, ..., e o símbolo lido da fita n).

Satisfeitas todas estas condições, a transição terá como resultado (saída):  o próximo estado,

 n símbolos a serem escritos nas fitas (o símbolo que será escrito na posição atual na fita 1, o símbolo escrito na fita 2, ..., e símbolo escrito na fita n).

 n movimentos (E ou D) para cada uma das posições de leitura de cada uma das fitas (pois uma fita pode mover para a esquerda e a outra para a direita).

Por que são equivalentes às MTs? (Explicação breve)

Aqui, segue uma breve explicação da equivalência entre o modelo MT padrão e o modelo MTMF. Para isso, vamos explicar como converter entre os dois modelos. De MT para MTMF não é preciso converter, pois uma MT padrão é precisamente uma MTMF com apenas 1 fita.

(2)

Para converter de MTMF para uma MT, a proposta é simular múltiplas fitas em uma fita só. A fita única teria os conteúdos das múltiplas fitas separados por #, assim:

<conteúdo da fita 1> # <conteúdo da fita 2> # ... # <conteúdo da finta n> Caso, na MTMF, a posição de leitura caminhe demais para a esquerda ou direita (para a região de brancos), ultrapassando os limites do conteúdo armazenado nesta simulação das fitas, basta deslocar símbolo-a-símbolo os conteúdos das fitas para escrever mais um sím-bolo branco na posição adequada.

Também vamos duplicar o alfabeto da MTMF na MT, de modo que, para cada símbolo a da MTMF haverá, adicionalmente, um versão “marcada” de 𝑎, que representaremos como 𝒂̇. Essa versão “marcada” servirá para informar qual a posição atual de leitura em cada uma das fitas simuladas. A MT será, então, programada para reproduzir as transições da MTMF. Para isso, a MT precisará:

1. Percorrer a fita para identificar os símbolos marcados em cada fita simulada. Com base nos símbolos encontrados, ela irá simular a transição da MTMF que seria disparada por esses símbolos.

2. Como parte disso, a MT irá percorrer as posições marcadas escrevendo os sím-bolos adequados no lugar (conforme previsto pela transição da MTMF).

3. E vai mudar a posição “marcada” em cada fita, conforme os movimentos de cada fita previstos pela transição da MTMF.

4. Mudar para um estado da MT correspondente ao estado para o qual a MTMF iria.

2. Máquinas de Turing Não-Determinísticas (MTNs)

São máquinas que podem ter, no mesmo estado, mais de uma transição lendo um mesmo símbolo. Este caso é similar aos AFNs sem transições vazias. Como nos AFNs, pode haver mais de um caminho de computação para uma mesma cadeia de entrada. Por isso, uma computação não-determinística, formada pelos caminhos com suas bifurcações, pode ser tratada como uma árvore:

(3)

(Adaptada de: http://cs.umw.edu/~finlayson/class/fall15/cpsc326/notes/04-nfa1.html)

A cadeia será aceita se ao menos um dos caminhos terminar em aceitação (os outros ca-minhos podem entrar em loop ou rejeitar); será rejeitada se todos os caca-minhos rejeitarem; e deixará a máquina em loop infinito se, ao menos uma computação for infinita e todas as computações finitas rejeitarem.

Por que são equivalentes às MTs? (Explicação breve)

Primeiramente, este modelo generaliza a MT padrão, ou seja, toda MT padrão pode ser vista como uma MT Não-determinística (MTN).

Em segundo lugar, é possível converter uma MTN para uma MT. Para isso, o livro de Sipser (pags. 158-159) propõe converter para um MTMF com 3 fitas, para fazer um tipo de busca com aprofundamento iterativo – primeiro ela percorre os caminhos de profun-didade 1, depois os de profunprofun-didade 2, etc. A fita 1 conterá uma cópia da cadeia de entrada sempre inalterada. A fita 2 será usada para percorre um caminho específico na árvore de computação. A fita 3 servirá para dizer qual caminho percorrer na árvore. Para isso, ela usará uma sequência numérica como “2,3,1,2”, para dizer: escolha a 1ª das opções de transição no primeiro passo da computação; a 3ª opção de transição no segundo passo; a 1ª, no terceiro passo; e a 2ª no quarto passo. Depois, a MTMF para e testa se chegou a um estado de aceitação. Se chegou, aceita.

(4)

3. Post-Turing Machines (PTM)

As PTMs operam numa fita sequencial e infinita para ambos os lados, idêntica à fita das MTs. Porém, ao invés de ser definida por meio de estados, uma PTM é uma sequência de comandos, como um programa de alguma linguagem de programação muito simples. A seguir, mostramos uma PTM acrescida dos comandos accept e reject e goto incondicional (ausentes do modelo original, mas que ajudam a entender mais facilmente a equivalência com MTs).

Exemplo: Uma PTM para reconhecer cadeias do alfabeto {a,b} que contém apenas a’s

0: if scanning b goto 4 1: if scanning BRANCO goto 5 2: move right

3: goto 0 4: reject 5: accept

Por que são equivalentes às MTs? (Explicação breve)

É fácil converter de MTs para Post-Turing Machines. Duas dicas principais para entender que é possível fazer essa conversão:

1. Uma ou mais linhas da PTM podem ser tratadas como um estado da MT.

2. Observe que cada comando da PTM é uma parte da ação completa de uma transi-ção na MT. O que uma transitransi-ção faz é como um comando “if”, seguido de um “write”. A linha para onde o “if” redireciona é como se fosse o estado de destino da transição.

4. Gramáticas Irrestritas

São um modelo descritivo para representar linguagens (= as cadeias “aceitas” em um problema de decisão). São muito semelhantes às GLCs, porém as produções têm o se-guinte formato mais flexível:

,

onde  e  são cadeias quaisquer formadas por terminais e/ou não-terminais, e  é não vazia.

(5)

Exemplo: Gramática para representar a linguagem das cadeiras anbncn. S  aTbc T  ε| aTbX Xb  bX Xc  cc Derivação de “aabbcc”:

S  aTbc  aaTbXbc  aaTbbXc  aaTbbcc  aabbcc

Por que são equivalentes às MTs? (Explicação breve)

Dada uma MT, é possível criar uma gramática que simula o funcionamento da MT com-putando uma cadeia. A gramática gera cadeias de não-terminais representando os passos de computação da MT na cadeia. Quando a cadeia é aceita nesta simulação da MT, a gramática deriva a cadeia original sozinha.

Dada uma gramática, é possível criar uma MT não-determinística que, ao receber uma cadeia, gera, em diferentes ramos de computação, várias derivações parciais e compara com a cadeia: se for igual, aceita-a; senão, continua gerando.

(6)

5. Outros Modelos

Com esta aula, esperamos que o leitor tenha tido uma percepção intuitiva de como o mo-delo Máquinas de Turing é poderoso. De fato, nenhum momo-delo mais poderoso (e que seja viável de ser construído/executado) existe. Por isso, a Tese de Church-Turing define este modelo como sendo a definição matemática de algoritmo. E toda questão sobre o que os algoritmos podem fazer são provadas em termos das MTs.

Por fim, lembramos que muitos outros modelos equivalentes às MTs existem, mas não serão vistos por falta de tempo. Um deles, que vale ser destacado, são as λ-expressions (do λ-cálculo) propostas por Alonzo Church pouco antes de Alan Turing. Outro modelo importante são as funções µ-recursivas.

“O orgulho vem antes da destruição; o espírito altivo, antes da queda. Melhor é ter espírito humilde entre os oprimidos

do que partilhar despojos com os orgulhosos.” (Provérbios 16:18,19)

Referências

Documentos relacionados

Os resultados são apresentados de acordo com as categorias que compõem cada um dos questionários utilizados para o estudo. Constatou-se que dos oito estudantes, seis

Portanto, mesmo percebendo a presença da música em diferentes situações no ambiente de educação infantil, percebe-se que as atividades relacionadas ao fazer musical ainda são

▪ Quanto a solução para os conflitos entre os pais e a escola, houve um grande número de pais que não responderam, o que pode nos revelar que os pais não fizeram

Este equipo genera, usa e irradia energía de radiofrecuencia, y si no se instala y se usa de acuerdo con las instrucciones, puede causar interferencias perjudiciales en

• Quando o navegador não tem suporte ao Javascript, para que conteúdo não seja exibido na forma textual, o script deve vir entre as tags de comentário do HTML. &lt;script Language

Avaliação do impacto do processo de envelhecimento sobre a capacidade funcional de adultos mais velhos fisicamente ativos.. ConScientiae

O objetivo do curso foi oportunizar aos participantes, um contato direto com as plantas nativas do Cerrado para identificação de espécies com potencial

libras ou pedagogia com especialização e proficiência em libras 40h 3 Imediato 0821FLET03 FLET Curso de Letras - Língua e Literatura Portuguesa. Estudos literários