PRG in NC1 ⇒ PRG in NC0 (AIK)
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.