Uma prova interativa do número de Deus?

11

Ultimamente, tenho aprendido sobre provas interativas e me pergunto se tudo não passava de uma curiosidade teórica ou se havia alguma aplicação prática. Pensei em começar com um exemplo que me ocorreu no chuveiro:

Ultimamente, tem divulgado que "Número de Deus" = 20. (O número de Deus é o número mínimo de etapas necessárias para resolver o cubo de Rubik). Embora isso seja bastante interessante, parece haver uma pequena reviravolta ... Essa não é uma prova "normal" no livro, sentido verificável pelo tempo polinomial. Essa prova tem um sabor distintamente de "força bruta" - com isso quero dizer, os caras do laboratório do Dr. Morley tentaram com bilhões e bilhões de combinações de cubos nos enormes supercomputadores do Google a encontrar esse limite mais baixo e limpo.

Enfim, a pergunta é: como podemos ter certeza de que o Dr. Morley Davidson e sua equipe são honestos? Bem, imediatamente pode jogar fora o argumento da autoridade, pois não é matematicamente rigoroso. A alternativa óbvia é verificar novamente a prova, verificando o código-fonte e executando tudo novamente, o que parece ser um terrível desperdício de recursos computacionais, sem mencionar o fato de que todos que desejarem se convencer disso, precisa fazê-lo em sua própria estação de trabalho - uma proposta muito tediosa e desagradável para o verdadeiro cético. Portanto, isso parece ser um tipo de deilema ontológico.

Então, o que eu acredito é que essa é exatamente uma situação em que precisamos de uma prova interativa . O supercomputador do Google poderia ser o Provador todo poderoso, mas enganoso, e nós, os céticos, se não os analistas do público, somos os Verificadores Polinomialmente limitados. Se, de alguma forma, pudéssemos consultar nosso "Oracle" um número polinomial de vezes e nos convencer desse limite inferior, poderíamos estar convencidos do fato de que ele está certo, além de qualquer dúvida razoável.

Parece que o problema de decisão "O número de Deus é <20" está em ou pode ser atualizado da seguinte maneira (informalmente)Π2p

Para todas as combinações iniciais no Cubo de Rubik, existe uma solução que leva <= 20 etapas, que a resolve.βαβ

(não tenho certeza se isso está correto, mas e são pequenos em tamanho, dada uma configuração inicial e uma solução, é fácil verificar se ele realmente resolve o cubo)βαβ

e o problema de decisão "número de Deus é 20" pode ser corrigido como

O número de Deus é <20 e existe uma solução para alguma combinação inicial do cubo de Rubik, que leva 20 etapas.

Portanto, provavelmente há uma prova de IP [n] para isso. (mais uma vez, verifique meu funcionamento)

Minha pergunta é dupla

  1. Existe uma maneira real de fazer isso?
  2. Que outros exemplos de usos "práticos" de provas interativas existem?
gabgoh
fonte
Eu acho que você quer dizer "número de Deus" é o número máximo de movimentos necessários para resolver o cubo de Rubix. Da mesma forma, você menciona várias vezes "esse limite inferior limpo e preciso" enquanto quer dizer "limite superior".
Ross Snider 27/11
1
Enfim, uma resposta parcial à sua pergunta. Existe uma pergunta possivelmente relacionada cstheory.stackexchange.com/questions/2461/… . Para meu entendimento, a resposta para sua primeira pergunta é sim - basta seguir o protocolo. No entanto, também entendo que realmente se envolver em uma configuração de prova interativa não "pegou". Alguém sabe se as constantes envolvidas são muito altas?
Ross Snider
@ Ross Snider: desculpe, meu erro :( Corrigido. Quanto ao seu segundo ponto, sim. No entanto, não acho que o problema seja com grandes constantes no Verifier, mas muita carga no "Provover". IP [n] exigiria que o Verificador fosse muito mais poderoso que (onde está o google), mas, na verdade, o procedimento exigiria que ele fosse mais poderoso que o , tornando-o "impraticável", suponho, o link que você postou era muito útil, obrigado. P S P A C EΠ2PSPACE
gabgoh

Respostas:

10

... parece que o problema da decisão "O número de Deus é <20" está em .Π2p

Isso é suficiente para ter uma prova interativa. De fato, Lund et al. provou que todo idioma na hierarquia polinomial (PH) tem uma prova interativa usando o teorema de Toda ( ). Eles reduziram para a linguagem P-completa PERMANENT e forneceram um método algébrico que pode ser usado para provar PERMANENTE interativamente. (Isso é altamente impreciso; consulte o documento para obter mais informações.) L P HPHP#PLPH

Usando suas técnicas, Shamir provou que IP = PSPACE .

Foi provado anteriormente que todo IP possui provas de zero conhecimento , portanto:

Todos os idiomas do PSPACE têm provas interativas de conhecimento zero.

MS Dousti
fonte
Porém, provar algo em com uma prova interativa geralmente significa resolver um problema de P ( cstheory.stackexchange.com/questions/2461/… ), portanto, se você estiver procurando por provas interativas práticas , isso não fará isso. # PΠ2#P
quer
@ Peter: Se por "prático" você quer dizer que o provador é o BPP, então você está certo. De fato, apenas as línguas NP têm essas provas.
MS Dousti 27/11/2010
Eu quis dizer com algo "prático", onde o provador tem aproximadamente o mesmo poder computacional como a prova de que o número de Deus = 20.
Peter Shor
1
Obrigado pela resposta, mas, como Shor comenta, por "Prático", quero dizer algo que pode realmente ser implementável, não possível em princípio. Para entender o essencial, aqui está um exemplo de um sistema de provas "Prático" que não prova nada. [Dou ao provador uma configuração inicial aleatória , e o provador retorna uma sequência de movimentos em menos de 20 etapas que o resolvem. Eu tento isso várias vezes.] Claro, isso não vai funcionar, mas é o tipo de coisa que estou procurando. α
gabgoh
2
@sadeq: Talvez possam surgir alguns problemas no MA e no AM, mas não estou ciente de nada fora dessas classes que tenha provas interativas "práticas".
quer
1

Determinando que é o diâmetro (número de Deus) do Grupo do Cubo de Rubik sob a métrica de meia volta com o conjunto de geradores Singmaster foi um resultado maravilhoso. Estou curioso sobre questões de acompanhamento, tais como determinar quantas voltas meia volta que seria necessário para obter o cubo totalmente "misto" para -close à distribuição estacionária uniforme . 20Gs=U,U,U2,D,D,D2,mϵπ

Acredito que essa mistura exibe um ponto de corte em que, para , algumas configurações são muito mais prováveis ​​que outras, enquanto que para o cubo é quase totalmente embaralhado na distribuição uniforme , e nenhum grande subconjunto de configurações é desfavorecido. Pode haver uma promessa no coração de qualquer mistura que mostre tal corte. Essa promessa pode ser aproveitada para criar um protocolo Arthur-Merlin .n<mnmπAGA M AM

Por exemplo, observando que e chamando do para-ser-verificado tempo de mistura, acho que posso prometer:|s|=18m

  • Se então, com exceção de um número muito pequeno, , dos elementos há muito perto de maneiras de escrever como palavras em de comprimento , enmϵgG18n|G|gsn

  • Se , existe um número muito maior, , de elementos onde só pode ser escrito no máximo maneiras como palavras de comprimento .n<mk=|A|gGg18n2|G|n

Aqui penso em como, digamos, , e como, digamos .ϵ1109|G|k110|G|

Os truques universais de hash universal criam uma única prova redonda de Arthur-Merlin de que o tempo de mistura é pelo menos .n

  1. Arthur escolhe um elemento aleatório , um hash aleatório palavras de mapeamento de para um conjunto de tamanho , e uma imagem aleatória degGhG18n|G|yh
  2. Merlin diz a Arthur uma palavra de comprimento até que, quando aplicada à posição inicial do cubo, é igual aWng
  3. A palavra também deve satisfazer - indicando que provavelmente há muitas palavras de comprimento iguais aWh(W)=yn gng
  4. Arthur e Merlin repetem para amplificar conforme necessário

Porque, para os grupos que penso, o tempo de mistura é pelo menos o diâmetro (número de Deus), isso também fornece uma prova de Arthur-Merlin para limitar o número de Deus de um grande grupo.

Mark S
fonte