Representando de forma compacta o conjunto de soluções de uma instância SAT

10

Esta questão surgiu em minha mente depois de ler as contribuições de András Salamon e Colin McQuillan para minha pergunta anterior Contando soluções de fórmulas Monotone-2CNF .

EDIT 30 th março 2011
questão Adicionado n ° 2.

EDIT 29 th outubro 2010
Pergunta reformulada após proposta András formalizá-la através da noção de representação legal de um conjunto de soluções (já modificado sua noção um pouco).

Seja uma fórmula genérica de CNF com variáveis. Seja seu conjunto de soluções. Claramente,pode ser exponencial em . Letn S | S | n R S RFnS|S|nRser uma representação de . Diz-se que é bom se, e somente se, os seguintes fatos forem verdadeiros:SR

  1. nR tem tamanho polinomial em .n
  2. SR permite enumerar as soluções em com atraso polinomial.S
  3. | S |R permite determinarem tempo polinomial (ou seja, sem enumerar todas as soluções). |S|

Seria ótimo se fosse possível, em tempo polinomial, criar um para cada fórmula.R

Questões:

  1. Alguém já provou que existe uma família de fórmulas para as quais uma representação tão agradável não pode existir?
  2. Alguém estudou a relação entre a representação de e as simetrias exibidas por ? Intuitivamente, as simetrias devem ajudar a representar compactamente, pois evitam a representação explícita de um subconjunto de solução quando se resume a apenas uma solução (ou seja, de cada você pode recuperar todos os outros aplicando uma simetria apropriada, assim cada é ele próprio representativo de todo )F S S 'S S « s iS ' s jS ' s iS ' S 'SFSSSSsiSsjSsiSS
Giorgio Camerani
fonte
11
Eu acho que você precisa restringir um pouco sua pergunta. Como afirmado, a fórmula em si é uma representação polinomial de tamanho de . Mas isso obviamente não ajuda a motivação que vem do problema anterior. Talvez você quer alguma ligada (polinomial?) Sobre a complexidade de reproduzir (ou talvez um único elemento de , ou computação ) a partir da representação polinomial de tamanho ...S S S | S |FSSS|S|
Joshua Grochow
@ Josué: Você está certo, obrigado. Enriqueci a questão para esclarecer. Por favor, deixe-me saber se está tudo bem agora.
Giorgio camerani
Aliás, uma maneira de representar o conjunto de soluções é uma "árvore de pesquisa AND / OR". Cada instância é uma folha da árvore e a contagem pode ser feita sem enumerar todas as soluções.
Yaroslav Bulatov
@Yaroslav: Interessante ... você poderia elaborar mais?
Giorgio Camerani

Respostas:

10

Como afirmado (revisão 3), a pergunta tem uma resposta simples: não.

A razão é que, mesmo para a classe altamente restrita de representações dada por circuitos booleanos com portas AND, OR e NOT, não são conhecidos limites inferiores não triviais. (Claramente, um circuito que representa também representará S implicitamente, e é fácil enumerar as soluções alterando as entradas para o circuito.)FS

Para representações ainda mais restritas, como circuitos monofônicos ou de profundidade constante, os limites inferiores exponenciais são conhecidos. Também existem limites inferiores exponenciais para representar fórmulas no formato CNF ou DNF, embora possam ser vistos como casos especiais de circuitos de profundidade constante. Finalmente, as representações do BDD podem ser vistas como formas compactas de DNF, mas existem fórmulas para as quais o BDD requer tamanho exponencial para qualquer pedido de variável.

Para tornar sua pergunta mais precisa, considere a resposta de @ Joshua com mais detalhes e esclareça o que você entende por "trivial para enumerar todas as soluções".


Para a revisão 4, observe a declaração sobre o tamanho do BDD. Parte do que você parece estar se perguntando é: existe uma representação mais compacta das fórmulas DNF do que os BDDs? Permita que "o BDD tenha tamanho superpolinomial" signifique "todo BDD representando a mesma função que B , independentemente da ordem das variáveis, tenha tamanho superpolinomial" e permita que "boa representação" signifique "uma representação que permita que as soluções sejam enumeradas com atraso polinomial". Essa questão mais específica se torna:BB

existe uma família de fórmulas e uma representação legal que tenha tamanho polinomial enquanto seus BDDs tenham tamanho superpolinomial?

Isso captura a essência do que você está perguntando?

András Salamon
fonte
@ András: Adicionei uma seção de esclarecimentos.
Giorgio Camerani
@ András: Peço desculpas se minha pergunta não tem precisão. Sua sentença "existe uma representação mais compacta de fórmulas DNF do que BDDs?" captura a essência do que estou perguntando. Uma representação tão mais compacta teria que ser possível para todas as fórmulas (mesmo aquelas com um número superpolinomial de soluções).
Giorgio camerani
@ András: Oi, eu pensei um pouco mais sobre isso. Uma melhor captura da essência do que estou perguntando é a pergunta "Existe uma representação legal que tenha tamanho polinomial para cada fórmula?" . Essa representação deve ser a "melhor de sempre", independentemente de como os BDDs se comportam em comparação com ela. Sua sugestão de atraso polinomial se encaixa perfeitamente na idéia que tenho em mente.
Giorgio camerani
@ Walter: pode valer a pena editar a pergunta de acordo com essa reformulação ou postar uma nova pergunta.
András Salamon
@ András: Eu reformulei a pergunta. A definição de representação legal foi um pouco alterada (presumi que fosse um termo da sua invenção e não um termo bem estabelecido na literatura, não é?).
Giorgio camerani
9

[Esta resposta foi uma resposta à versão anterior à Revisão 6 de 29 de outubro de 2010.]

R(φ)S(φ)φR|R(φ)|poly(n)φnAA(R(φ))=S(φ)AR(φ))poly(n,|S|)

SRA|S|poly(n)R(φ)=(0,S)|S|2Ω(n)R(φ)=(1,φ)A(0,S)SA(1,φ)Sφ|S|=2Ω(n)O(|S|)

RApSpoly(n)Sp|S|pA|S|

Rpoly(n,|φ|)PPromiseUPφA(R(φ))φpoly(n)

Joshua Grochow
fonte
RA
R(φ)=(1,φ)
R
R(φ)=(1,φ)
SnO(|S|)R(φ)=(1,φ)φ