The Razborov–Smolensky lower bound #
Parity is not computed by constant-depth, polynomial-size circuits of
unbounded-fan-in AND, OR, and MOD_3 gates (xorBool_not_mem_AC0Mod_three).
The finite form is an explicit size–depth tradeoff
(Smolensky.parity_size_lower_bound): a circuit of depth at most d computing
n-bit parity has size at least (2/5) · 2^ℓ whenever (40ℓ)^{2d} ≤ n. Taking
ℓ = ⌊n^{1/(2d)} / 40⌋, the size is 2^{Ω(n^{1/(2d)})}.
The circuits are the library's typed circuits over Basis.unboundedAndOrMod 3:
a MOD_3 gate outputs true exactly when the number of its true inputs is not
divisible by 3, negations are free per-input flags, the size G + 1 counts the
internal gates and the output gate, and the depth counts the output gate.
The proof is Smolensky's approximation method over ZMod 3, with functions
{0,1}^n → ZMod 3 in place of formal polynomials (Smolensky.lowDegree):
Smolensky.exists_lowDegree_approx: with a fixed choice ofℓsubsets of the inputs of each OR or AND gate, a depth-dcircuit agrees with a function of degree at most(2ℓ)^don all butsize · 2^n / 2^ℓinputs. The random choices of the usual proof are replaced by exact double counting over all tuples of subsets.Smolensky.card_agree_xorBool_le: a function of degree at mostDagrees with parity on at most as many inputs as there are subsets of at mostn / 2 + Dcoordinates.Smolensky.ten_mul_card_le: when100 (t + 1)² ≤ n + 1, at most6/10of all subsets have at mostn / 2 + tcoordinates.
Smolensky's approximation theorem. A single-output circuit of
unbounded-fan-in AND, OR, and MOD_3 gates of depth at most d agrees with a
function {0,1}^n → ZMod 3 of degree at most (2ℓ)^d on all but at most
size · 2^n / 2^ℓ inputs, for every ℓ ≥ 1.
Parity is hard to approximate over ZMod 3. A function of degree at
most D agrees with n-bit parity on at most as many inputs as there are
subsets of Fin n with at most n / 2 + D elements.
Razborov–Smolensky, counting form. If an AND/OR/MOD_3 circuit of depth
at most d computes n-bit parity, then for every ℓ ≥ 1,
2^ℓ · 2^n ≤ 2^ℓ · #{S ⊆ Fin n : |S| ≤ n / 2 + (2ℓ)^d} + size · 2^n.
Razborov–Smolensky size–depth tradeoff. If an AND/OR/MOD_3 circuit of
depth at most d computes n-bit parity and (40ℓ)^{2d} ≤ n, then its size is
at least (2/5) · 2^ℓ. With ℓ = ⌊n^{1/(2d)} / 40⌋ this is
size ≥ 2^{Ω(n^{1/(2d)})}.
Parity is not in AC0[3] (Razborov–Smolensky): no polynomial-size,
constant-depth family of unbounded-fan-in AND/OR/MOD_3 circuits computes the
parity family.