Definição 18.30. Uma função com l < n é chamada de gerador pseudo-aleatório seguro ( s , ϵ ), se for para qualquer circuito C de tamanho s em n variáveis,
| P r [ C ( y ) = 1 ] - P r [ C ( G (G : { 0 , 1 }eu→ { 0 , 1 }nl < n( s , ϵ )Csn
onde Y é escolhido uniformemente aleatoriamente em { 0 , 1 } n , e x em { 0 , 1 } l .
|Pr[C(y)=1]−Pr[C(G(x))=1]|<ϵ,
y{0,1}nx{0,1}l
Definição 18.31. Seja uma função booleana. Dizemos que f é ( s , ϵ ) -hard se for para qualquer circuito C de tamanho s ,
| P r [ C ( x ) = f ( x ) ] - 1f:0,1n→0,1f(s,ϵ)Cs
ondexé escolhido uniformemente aleatoriamente em{0,1}n.
|Pr[C(x)=f(x)]−12|<ϵ,
x{0,1}n
Um gerador de função pseudo-aleatória é uma função booleana . Definindo as variáveis y aleatoriamente, obtemos sua subfunção aleatória f y ( x ) = f ( x , y ) . Seja h : { 0 , 1 } n → { 0 , 1f(x,y):{0,1}n+n2→{0,1}yfy(x)=f(x,y) seja uma função booleana verdadeiramente aleatória. Um gerador de f ( x , y ) é seguro contra Γ -attacks se para cada circuito de C em Γ ,
| P r [ C ( f y ) = 1 ] - P r [ C ( H ) = 1 ] | < 2 - n 2 .h:{0,1}n→{0,1}f(x,y)ΓCΓ
|Pr[C(fy)=1]−Pr[C(h)=1]|<2−n2.
Um prova -natural contra Λ é uma propriedade Φ : B n → 0 , 1 satisfazendo as seguintes três condições:
1. Utilidade contra Λ : Φ ( f ) = 1 implica f ∉ Λ .
2. Amplitude: Φ ( f ) = 1 para pelo menos 2 - O ( n ) fração de todas as 2 2 n funções f ∈ΓΛΦ:Bn→0,1
ΛΦ(f)=1f∉Λ
Φ(f)=12−O(n)22n .
3. Construtividade: Φ ∈ Γ , ou seja, quando vista como uma função booleana em N = 2 n variáveis, a propriedade Φ pertence à classe Γ . f∈Bn
Φ∈ΓN=2nΦΓ
Teorema 18.35. Se uma classe de complexidade contiver um gerador de função pseudo-aleatória seguro contra ataques Γ, não haverá prova natural de Γ contra Λ .ΛΓΛ
A questão é: 1. Acreditamos se existem funções tão difíceis? 2. Quão construtivas / grandes esperamos que as propriedades das provas de separação atualmente possíveis sejam?
Por outro lado, Razbarov mencionou em vários lugares que ele pessoalmente vê o resultado como um guia para o que evitar e não como um obstáculo essencial para provar limites inferiores.
A relativização e a álgebra são um pouco mais complicadas e dependem da maneira como definimos a reativação para essas classes. Mas, como regra geral, diagonalização simples (uma diagonalização que usa o mesmo contra-exemplo para todas as máquinas que computam a mesma função, ou seja, o contra-exemplo depende apenas de quais máquinas na computação menor e não depende do código e de como elas calculam ) não pode separar essas classes.
É possível extrair funções de diagonalização não simples de resultados indiretos de diagonalização, como limites inferiores do espaço-tempo para o SAT.