Problema da correspondência de Post: diferenças entre revisões

Origem: Wikipédia, a enciclopédia livre.
Conteúdo apagado Conteúdo adicionado
nova página: O '''Problema da Correspondência de Post''' é um problema de decisão indecidível que foi introduzido por Emil Post em 1946..<ref name="Post46">{{cite ...
(Sem diferenças)

Revisão das 03h45min de 7 de julho de 2011

O Problema da Correspondência de Post é um problema de decisão indecidível que foi introduzido por Emil Post em 1946..[1] PCP é mais simples que o problema da parada e o Entscheidungsproblem por isso ele é frequentemente usado em provas de indecidibilidade.

Definição do Problema

A entrada do problema consiste em duas listas finitas e de palavras sobre alguma alfabeto tendo pelo menos 2 símbolos. Uma solução para esse problema é uma sequência de índices com e para todo tal que

O problema de decisão é, então, decidir se tal solução existe ou não.


Exemplo de instâncias do Problema

Exemplo 1

Considere as duas listas seguintes:

α1 α2 α3
a ab bba
β1 β2 β3
baa aa bb

Uma solução para esse problema seria a sequencia (3, 2, 3, 1) porque

além disso, desde que (3, 2, 3, 1) seja uma solução, então também é solução todas as suas "repetições", tais como (3, 2, 3, 1, 3, 2, 3, 1), etc.; Isso é, quando uma solução existe, existe mais infinitas soluções para esse tipo repetitivo.

Contudo, se duas listas consistissem de apenas e , então não existiria solução ( porque então nenhum par correspondente teria a mesma letra , como deve acontecer ao final de uma solução) Uma maneira conveniente de ver uma instância do problema de correspondência de Post é que dado uma coleção de blocos na forma:


αi
βi

que haja um suprimento ilimitado de cada tipo de bloco. Assim, o exemplo acima é visto como abaixo:

a
baa
ab
aa
bba
bb
i = 1 i = 2 i = 3

Onde o "solucionador" tem um fornecimento infinito de cada um desses três tipos de blocos. Uma solução corresponde, de certa maneira, de colocar os blocos próximos um dos outros de tal forma que a cadeia correspondente a célula de cima corresponda a cadeia na célula de baixo. Então a solução para o exemplo acima seria:

bba
bb
ab
aa
bba
bb
a
baa
i1 = 3 i2 = 2 i3 = 3 i4 = 1

Exemplo 2

Novamente usando blocos para representar uma instância do problema, o problema seguinte é um exemplo de que existem infinitas soluções para o tipo obtido simplesmente "repetindo" uma solução.

bb
b
ab
ba
c
bc
1 2 3

Nessa instância, cada sequência na forma (1, 2, 2, ..., 2, 3) é uma solução (além de todas as suas repetições):

bb
b
ab
ba
ab
ba
ab
ba
c
bc
1 2 2 2 3

Esboço da prova de indecidibilidade

A maneira mais comum de se provar indecidibilidade de PCP descreve uma instância de PCP que pode simular uma computação em uma máquina de Turing com uma entrada particular. Uma correspondência somente irá ocorrer se a entrada for aceita pela máquina de Turing. Porque saber se uma máquina de Turing irá aceitar uma entrada é um problema básico de indecidibilidade, PCP não pode ser decidível também. A discussão seguinte é baseada no livro deMichael Sipser's, " Introdução a teoria da computação"..[2]

Em mais detalhes, a idéia é que uma cadeia ao longo da parte superior e inferior seja uma história da computação de uma computação da máquina de Turing. Isso significa que isso irá listar uma cadeia descrevendo o estado inicial seguido de uma cadeia descrevendo o próximo estado e assim por diante ate que seu fim seja uma cadeia descrevendo um estado de aceitação. As cadeias de estado são separadas por alguns símbolos (geralmente escritos como #). Segundo a definição de máquina de Turing, o estado completo de uma máquina consiste de 3 partes:

  • O conteúdo atual da fita
  • O estado atual da maquina de estado finita na qual opera o cabeçote da maquina
  • A posição atual do cabeçote sobre a fita

Embora a fita tenha infinitas células, só alguns prefixos finitos destes serão do tipo não-brancos. Nos escrevemos esses abaixo como parte do nosso estado. Para descrever o estado de controle finito, nos criamos símbolos rotulados q1 até qk, para cada um dos "k" estados finitos da maquina. Nos inserimos o simbolo correto na cadeia descrevendo o conteúdo das fitas na posição em que se encontra o cabeçote, indicando, assim, tanto a posição da cabeça da fita e do estado atual do controle finito. Para o alfabeto {1,0}, um estado típico poderia ser algo como:


101101110q700110.

Uma história da computação simples seria então algo do tipo:

q0101#1q401#11q21#1q810.

Começamos com este bloco, onde "x" é a sequência de entrada e q0 é o estado inicial:


 
q0x#

O topo começa "defasado" em relação a cadeia de baixo por um Estado, e mantém esta defasagem até a fase final. Em seguida, para cada símbolo do alfabeto da fita, bem como #, temos uma "cópia" do bloco, que copia o símbolo sem modificações de um estado para o outro:


a
a

Nos também temos um bloco para cada posição de transição que uma máquina pode fazer, mostrando como o cabeçote se move, como os estados finitos mudam e o que acontece com os estados circundantes. Por exemplo, aqui o cabeçote esta sobre um 0 no estado 4, e então escreve um 1 e move-se para a direita, mudando para o estado 7:

q40
1q7

Finalmente, quando o topo alcança o estado de aceitação, a parta inferior precisa de uma mudança para finalmente alcançar a correspondência completa. Para isso acontecer, nos precisamos estender a computação para que uma vez o estado de aceitação ser alcançado, cada passo subsequente da máquina irá causar a um simbolo próximo ao cabeçote que desapareça, um por vez até existir mais nenhum. Se qf é um estado de aceitação, nos podemos representar isso com os seguintes blocos de transição, onde "a" é um símbolo do alfabeto da fita:

qfa
qf
aqf
qf

Há um número de detalhes a serem trabalhados, tais como lidar com limites entra estados, mas isso apenas mostra a ideia geral de como um "puzzle" desse tipo pode simular uma computação da máquina de Turing.


Variantes

Muitas variantes do PCP têm sido considerados. Uma razão é que, quando se tenta provar indecidibilidade de algum novo problema através da redução da PCP, que muitas vezes acontece que a uma primeira redução encontrada não é de PCP em si, mas de uma versão aparentemente mais fraca do PCP.

  • A condição de que o alfabeto tem que ter pelo menos dois símbolos é exigido desde que o problema e decidível se tiver apenas um simbolo.
  • Uma variante simples é fixar "n", o número de "telhas". Este problema é decidível se "n" ≤ 2, mas permanece indecidível para "n" ≥ 7. Desconhece-se se o problema é decidível por 3 ≤ "n" ≤ 6.
  • O problema de correspondência "circular" de Post pergunta se índices podem ser encontrados tal que e são palavras conjugadas, ou seja, eles são iguais a rotação modulo. Esta variante é indecidível..[3]
  • Uma das variantes mais importantes do PCP é o problema de correspondência limitada de Post', que pergunta se podemos encontrar um jogo usando não mais do que "k" "telhas" , incluindo "azulejos" repetido. A busca de força bruta resolve o problema em tempo O(2k), mas isso pode ser difícil de melhorar, já que o problema é NP-completo. ]].[4] Ao contrário de alguns problemas NP-completos como o problema da satisfatibilidade booleana, uma pequena variação do problema delimitado também foi mostrado para ser completa para "RNP", o que significa que continua a ser difícil até mesmo se as entradas são escolhidos aleatoriamente (é difícil, em média, entradas distribuídas uniformemente) ).[5]


  • Outra variante do PCP é chamado o Problema de Correspondência marcada de Post, em que cada ui deve-se começar com um símbolo diferente, e cada vi também devem começar com um símbolo diferente.
Halava, Hirvensalo, e De Wolf mostraram que esta variação é decidível em tempo exponencial. Além disso, eles mostraram que, se essa exigência é ligeiramente "frouxa"  então  que apenas os prefixos de dois caracteres precisem diferenciar-se (a chamada  Problema de Correspondência Post  2-marcado), o problema torna-se indecidível novamente.[6]


  • O Problema embutido de Post é outra variante em que se olha para os índices tal que é uma (espalhada) sub-palavra de . Esta variante é facilmente decidível uma vez que, quando algumas soluções existem, em particular uma solução de tamanho um existe.

Mais interessante é o Problema embutido regular de Post, uma variante ainda mais além quando se olha para as soluções que pertencem a uma determinada linguagem regular (apresentado, por exemplo, sob a forma de uma expressão regular sobre o conjunto). O Problema "embutido" regular de Post ainda é decidível, mas, por causa da restrição adicional regular, ele tem uma complexidade muito alta que domina cada função de multiplicativa recursiva.[7]

Referencias

  1. E. L. Post (1946). «A variant of a recursively unsolvable problem» (PDF). Bull. Amer. Math. Soc. 52 
  2. Michael Sipser (2005). «A Simple Undecidable Problem». Introduction to the Theory of Computation 2nd ed. [S.l.]: Thomson Course Technology. pp. 199–205. ISBN 0-534-95097-3 
  3. K. Ruohonen (1983). «On some variants of Post's correspondence problem». Springer. Acta Informatica. 19 (4): 357–367. doi:10.1007/BF00290732 
  4. Michael R. Garey; David S. Johnson (1979). Computers and Intractability: A Guide to the Theory of NP-Completeness. [S.l.]: W.H. Freeman. p. 228. ISBN 0-7167-1045-5 
  5. Y. Gurevich (1991). «Average case completeness». Elsevier Science. J. Comp. Sys. Sci. 42 (3): 346–398. doi:10.1016/0022-0000(91)90007-R 
  6. V. Halava; M. Hirvensalo and R. de Wolf (2001). «Marked PCP is decidable». Elsevier Science. Theor. Comp. Sci. 255: 193–204. doi:10.1016/S0304-3975(99)00163-2 
  7. P. Chambart; Ph. Schnoebelen (2007). «Post embedding problem is not primitive recursive, with applications to channel systems». Springer. Lecture Notes in Computer Science. Lecture Notes in Computer Science. 4855: 265–276. ISBN 978-3-540-77049-7. doi:10.1007/978-3-540-77050-3_22 

Ligações externas