Representação sucinta de gráficos em circuitos

20

A classe de complexidade PPAD (por exemplo, computando vários equilíbrios de Nash) pode ser definida como o conjunto de problemas de pesquisa total polytime redutíveis para FIM DA LINHA :

FIM DA LINHA : Dados os circuitos S e P com n bits de entrada e n bits de saída tais que P (0 n ) = 0 n ! = S (0 n ) , encontre uma entrada x em {0,1} n tal que P (S (x)) ! = X ou S (P (x)) ! = X ! = 0 n .

Circuitos ou algoritmos como S e P definem implicitamente um gráfico exponencialmente grande que só é revelado consulta a consulta (para manter o problema no PSPACE !), Por exemplo, o artigo de Papadimitrou .

No entanto, não entendo como alguém poderia projetar um circuito que permita gráficos arbitrários (se houver uma estrutura sistemática no gráfico, parece muito mais fácil encontrar o circuito). Por exemplo, como projetar um circuito de tamanho polinomial que represente uma linha direcionada exponencialmente longa, com um rótulo all-0 para o vértice de origem e rótulos binários atribuídos aleatoriamente a todos os outros vértices? Isso parece estar implícito nos documentos relacionados ao PPAD .

O mais próximo que cheguei de uma pesquisa on-line é o artigo de Galperin / Widgerson , mas o circuito descrito leva duas etiquetas de vértices e retorna uma resposta booleana para "Esses vértices são adjacentes?"

Então, como você projetaria um circuito de tamanho polinomial de um gráfico de tamanho exponencial que recebe uma entrada de n bits e gera o rótulo de n bits de seu predecessor ou sucessor, respectivamente? Ou ainda, alguém conhece um recurso que explica isso bem?

Daniel Apon
fonte

Respostas:

20

Sua pergunta parece estar se perguntando: como alguém representa gráficos arbitrários (ou mesmo gráficos arbitrários de caminho) como um circuito de tamanho polinomial? A resposta é que você não. O número de gráficos de caminho diferentes com 2 n vértices é (2 n ) !, muito mais do que o número de circuitos diferentes com n c gates (exponencial em n c log n). Portanto, quase todos os gráficos com tantos vértices não podem ser representados por um circuito sucinto.

Portanto, como você sugere, em certo sentido, apenas gráficos que possuem um alto grau de estrutura podem ser representados dessa maneira. É isso que torna interessantes as classes de complexidade como o PPAD: apesar da estrutura que sabemos que os gráficos de entrada para o problema de EOL devem ter, parece que não sabemos como tirar proveito da estrutura para resolver o problema com eficiência.

Se estou entendendo mal a sua pergunta e você está realmente perguntando: como fazer um circuito que atenda aos requisitos de entrada da EOL, mesmo para um gráfico muito altamente estruturado: experimente o gráfico de caminho que conecta o vértice x (considerado um número em binário) para x-1 e x + 1, com extremidades em zero e em 2 ^ n-1. Ou se você quiser algo menos trivial que pareça mais difícil de resolver EOL: que E e D sejam as funções de criptografia e descriptografia de uma chave fixa em seu sistema de criptografia favorito, que os vizinhos de x no gráfico sejam E (x) e D (x), e deixe as extremidades da linha serem 0 e D (0).

David Eppstein
fonte
11

Como a maioria dos gráficos em n vértices são aleatórios em Kolmogorov, eles não podem ser descritos por um circuito (ou qualquer outro programa) significativamente menor que o próprio gráfico. (Se você não sabe o que Kolmogorov-random significa, basicamente pode considerar a conclusão da sentença anterior como sua definição. Depois, confie no fato de que quase todas as strings são Kolmogorov-random.)

Embora eu não esteja intimamente familiarizado com os trabalhos que você citou, meu palpite é que eles estão sempre falando sobre gráficos descritos por circuitos. Em outras palavras, ao focar nos circuitos, eles estão essencialmente restringindo sua atenção à classe de gráficos que possuem circuitos sucintos (cujo tamanho é logarítmico no tamanho do gráfico).

Joshua Grochow
fonte