Qual é o objetivo de interpretar elementos na prova de redução do PCP ao problema de decidibilidade da validade da lógica de predicados?

7

Como minha pergunta se relaciona diretamente a uma parte do texto de um livro de 2004, Lógica em Ciência da Computação: Modelagem e Raciocínio sobre Sistemas (2ª Edição), de Michael Huth e Mark Ryan , para fornecer contexto para a discussão a seguir, citando parcialmente o livro literalmente:

O problema de decisão da validade na lógica de predicados é indecidível: não existe um programa que, dado qualquer , decida se .φφ

PROVA: Como dissemos antes, pretendemos que a validade é decidível para a lógica de predicados e, assim, resolvemos o problema (insolúvel) de correspondência posterior. Dada uma instância de problema de correspondência : , precisamos ser capazes de construir, dentro de espaço e tempo finitos e uniformemente, para todas as instâncias, alguma fórmula de lógica predicada como mantém se a instância do problema de correspondência acima tiver uma solução.C

s1s2...sk
t1t2...tk
φφC

Como símbolos de função, escolhemos uma constante e dois símbolos de função e cada um dos quais requer um argumento. Pensamos em como a sequência vazia, ou palavra, e e representam simbolicamente a concatenação com 0, respectivamente 1. Portanto, se é uma sequência binária de bits, podemos codificá-la como o termo . Observe que essa codificação soletra essa palavra para trás. Para facilitar a leitura dessas fórmulas, abreviamos termos como por .ef0f1ef0f1b1b2...blfbl(fbl1...(fb2(fb1(e)))...)fbl(fbl1...(fb2(fb1(t)))...)fb1b2...bl(t)

Também exigimos um símbolo predicado que espera dois argumentos. O significado pretendido de é que existe alguma sequência de índices tal que é o termo que representa e representa . Assim, constrói uma string usando a mesma sequência de índices que ; somente usa o enquanto usa o .PP(s,t)(i1,i2,...,im)ssi1si2...simtti1ti2...timstssitti

Nossa frase tem a estrutura grossa onde definimosφφ1φ2φ3

φ1=defi=1kP(fsi(e),fti(e))

φ2=defv,wP(v,w)i=1kP(fsi(v),fti(w))

φ3=defzP(z,z)
.

Nossa afirmação é é válida se o problema de correspondência posterior tiver uma solução.φC

Ao provar PCP ⟹ Validade:

Por outro lado, suponhamos que o problema de pós-correspondência C tenha alguma solução, [...] A maneira como procedemos aqui é interpretando seqüências finitas e binárias no domínio dos valores do modelo . Isso não é diferente da codificação de um intérprete para uma linguagem de programação em outra. A interpretação é feita por uma função interpretada que é definida indutivamente na estrutura de dados de seqüências finitas e binárias:AM

interpret(ϵ)=defeM

interpret(s0)=deff0M(interpret(s))

interpret(s1)=deff1M(interpret(s))
.

[...] Usando [ ] e o fato de que , concluímos que para . [...] desde , sabemos que para todos temos isso para . Usando esses dois fatos, começando com , usamos repetidamente a última observação para obterinterpret(b1b2...bl)=fblM(fbl1M(...(fb1M(eM)...)))Mφ1(interpret(si),interpret(ti))PMi=1,2,...,kMφ2(s,t)PM(interpret(ssi),interpret(tti))PMi=1,2,...,k(s,t)=(si1,ti1)

(2.9) .(interpret(si1si2...sin),interpret(ti1ti2...tin))PM

[...] Portanto (2.9) verifica em e, portanto, .zP(z,z)MMφ3

Ao provar que a validade da lógica de predicados é indecidível, de acordo com a abordagem que aprendi na escola, que se baseia na do livro de Huth & Ryan (2ª edição, página 135) , ao construir a redução do problema de PCP para validade, "cadeias binárias finitas" do universo são interpretadas com uma " função de interpretação ", que codifica cadeias binárias em compostos de funções do modelo.

Em seguida, mostra que, usando o fato de que o antecedente de deve ser considerado não trivial, ambas as subfórmulas do antecedente podem ser expressas com a referida " função de interpretação ". A partir daí, conclui-se que a consequência também se mantém, pois também pode ser expressa de uma maneira com a função interpretar que se segue das expressões anteriores com interpretar .φ

Minha pergunta é: qual é o objetivo dessa " função de interpretação "? Por que não podemos simplesmente usar o anteriormente concebido φ e obter o mesmo resultado? O que obtemos do uso de interpretar para expressar nossos elementos?

E também, e se o nosso universo contiver alguns elementos arbitrários; isto é, e se não forem cadeias binárias? Acabamos de construir algum mapeamento dos dois?

RexYuan
fonte
Bem vindo ao site! Tente tornar sua pergunta mais independente. Não podemos saber o que você quer dizer com antecedente de se não sabemos quem é ; portanto, você provavelmente deve adicionar uma descrição da redução. Você também deve especificar exatamente suas fontes (que livro) para que ninguém precise adivinhar. Eu cobri isso na primeira parte da minha resposta, mas acho que também deve aparecer na pergunta. φφ
Ariel #

Respostas:

7

Vamos começar com o que exatamente você está tentando provar.

Você está lidando com uma assinatura que consiste em uma constante , dois símbolos de função e um predicado binário . Denotamos por o conjunto de todas as instâncias "yes" para o problema de pós-correspondência, ou seja, todas as seqüências de pares ordenados de cadeias binárias , de forma que exista índices para alguns que satisfazem ( significa concatenação).σef0,f1P(s,t)C(s1,t1),...,(sk,tk)i1,...,innNsi1...sin=ti1...tin

Você deseja mostrar que, dada uma instância para o problema de correspondência posterior,c=(s1,t1),...,(sk,tk)

cC Se é algum modelo que interpreta , entãoMσM φ(c)

Onde eφ(c)=φ1(c)φ2(c)φ3(c)

φ1(c)=i=1kP(fsi(e),fti(e)) ,

φ2(c)=v,wP(v,w)i=1kP(fsi(v),fti(w)) ,

φ3(c)=zP(z,z) .

No exemplo acima, dada uma sequência binária , indica a composição . Essa é a redução do PCP para a validade na lógica de predicados descrita em "lógica na ciência da computação" por Huth & Ryan.s=s1,...,slfsfslfsl1...fs1

Pensamos em como concatenação com correspondentemente e em como a string vazia. Nesse caso, podemos pensar em como uma representação da string no mundo de . Intuitivamente, força o predicado a reter quando (talvez em alguns outros casos também, mas não nos importamos) (o que significa que são as interpretações de algumas seqüências finitas no mundo de ) e existe uma sequência de índices modo quef0,f10,1efs(e)sMφ1,φ2P(v,w)v=fs(e),w=ft(e)v,ws,tMi1...ins=si1...sin e . Se realmente tem esse significado (que é o que acontece se satisfizer ), então .t=ti1...tinP(v,w)Mφ1φ2cCzP(z,z)

Você pergunta sobre a direção da prova, portanto deve lidar com modelos arbitrários que interpretam , onde o mundo pode ter elementos que não têm nada a ver com strings (isso se refere à sua segunda pergunta). É aqui que entra a função de interpretação. Damos uma correspondência entre todas as seqüências finitas e um subconjunto do mundo de , o que é bastante natural, dada a natureza de nossa assinatura. Uma string é mapeada para o elemento , que pode ser uma string / número / tabela ou qualquer coisa que você desejar.σMsfs(e)

Agora, quando tivermos a capacidade de pensar em elementos do formato em (o mundo de ) como cadeias finitas, podemos continuar e provar a implicação . Se satisfaz , então, como mencionamos, é válido quando (agora podemos pensar em como cadeias ), e existe uma sequência de índices de tal modo que e . Portanto, se efs(e)AMMMφ1,φ2P(v,w)v=fs(e),w=ft(e)v,wi1...ins=si1...sint=ti1...tincCi1...in é uma sequência de índices com , então é válido e temos , pois implica .s=si1...sin=ti1...tin=tP(fs(e),ft(e))Mφ3s=tfs(e)=ft(e)

Ariel
fonte
Olá Ariel! Obrigado por responder! Desculpe por não voltar mais cedo. Eu não esperava uma resposta tão rápida com uma resposta tão agradável! Vou revisar minha pergunta para incluir mais contexto (talvez citando o livro)! Obrigado!
RexYuan