Pergunta: Deixe gerar fórmulas. Faz { M ( 1 n ) | n ∈ N ∧ M ( 1 N ) ∈ S A T } pertencem a P ?M∈PF{M(1n)∣n∈N∧M(1n)∈SAT}P
succinctSAT∈E⟹ Sim:
A suposição sobre a geração das fórmulas no tempo polinomial de significa que a fórmula pode ser dada de forma sucinta . Você quer decidir a satisfação deles no tempo n O ( 1 ) .1nnO(1)
Dado , podemos encontrar um n no tempo polinomial em | & Phi; | . Então φ pode ser indicado de forma sucinta na lg n + S ( 1 ) bits utilizando M e n . Podemos usar os nossos s u c c i n t S A T algoritmo em E para decidir isso em tempo 2 O ( lg n ) = n (φ=M(1n)n|φ|φlgn+O(1)MnsuccintSATE2O(lgn)=nO(1) .
sim ⟹succinctSAT∈E :
Se dado um circuito C em unário , M calcula a sequência codificada de forma sucinta por C e retorna o resultado se for uma fórmula e ⊥M∈PFCMC⊥ caso contrário.
Assume-se que pertencem a P . Para resolver s u c c i n c t S A T{M(1n)∣n∈N∧M(1n)∈SAT}PsuccinctSAT escrevemos a fórmula dada sucinta em unário e, em seguida, usar a nossa suposição de resolvê-lo.
Pergunta: Podemos gerar em pares de instâncias e soluções de tempo polinomial para SAT modo que a instância seja difícil?
Temos que esclarecer o que entendemos por a instância ser difícil, já que qualquer instância por si só é (teoricamente) fácil, pois pode ser resolvida pelo algoritmo que sempre diz sim ou pelo algoritmo que sempre diz não. Parece-me que você tentou contornar esse problema impondo uniformidade. Pensando em termos criptográficos, sem algumas informações que não são reveladas ao adversário, não há sentido em ocultar o restante da computação, pois o adversário pode simular o protocolo.
Suponha que temos um algoritmo de tempo polinomial que gera pares de instância-solução. O adversário pode usar o mesmo algoritmo para encontrar a resposta se souber e encontrar n não for difícil da fórmula. A maneira mais razoável é usar uma chave secreta escolhida aleatoriamente para contornar isso e relaxar a condição de dureza para ser probabilística: nenhum algoritmo de tempo polinomial pode encontrar uma solução com alta probabilidade (sem conhecer a chave secreta).nn
A
k∈{0,1}n
φkwk
D
A
Ou, mais formalmente,
A∈PFD∈P/polySAT(A(k)1)=A(k)2k
Prk∈{0,1}n{D(A(k)1)=SAT(A(K)1)}<1poly(n)
kφkA(k)2
ff(x)=yfyφf,y(x)xφf,y(x)SATff ).
Veja também os capítulos 29 e 30 do livro de Jan Krajicek "Forçando com variáveis aleatórias", 2011, sobre geradores de complexidade de prova .