Documentation

Complexity.Computability.Circuit.Boolean.PPolyHard

A language outside P/poly #

Shannon's counting argument gives, for every large n, a Boolean function on n bits whose circuit complexity exceeds 2 ^ n / n (Cslib.Circuits.Boolean.Shannon.lt_complexity). A language whose slices are such functions is not in P/poly, since 2 ^ n / n outgrows every polynomial Arora and Barak, Theorem 6.21.

Main results #

References #

P/poly is not every language. Some language over Bool has slices whose circuit complexity is not polynomially bounded.