PRG in NC1 ⇒ PRG in NC0 (AIK)

Free reduction · standard model · AIK06 · security loss: none: a distinguisher for the encoding is a distinguisher for G after applying the simulator

Statement

Every PRG computable in , and more generally in , can be compiled into a PRG in in which each output bit depends on at most four input bits — AIK06. The compiled generator has a polynomially longer seed and the same additive stretch as , so its stretch is sublinear in its seed length.

Sketch

The compiled generator is a perfect randomized encoding of with locality four: there is an efficient simulator with for uniform , and the encoding is balanced and stretch-preserving, so maps a uniform input to a uniform output with the same additive stretch. Hence is indistinguishable from — AIK06.

Notes

  • The same compiler applies to one-way functions, one-way permutations, encryption, signatures, commitments and collision-resistant hashing computable in , and most number-theoretic and lattice assumptions give such primitives — AIK06.
  • The compiled generator’s stretch is too small for the applications of polynomial-stretch local PRGs, such as JLS21’s indistinguishability obfuscation, which assume a polynomial-stretch PRG in directly — JLS21.