Modular counting and parity reduce to majority in constant depth #
Over a basis containing the unbounded fan-in basis (through a meaning-preserving map φ),
padding the input with constants turns a circuit for majority on 2 n + 2 bits into every
threshold function on n bits (thresholdCircuitOfMajority), two thresholds give "exactly k
bits are true" (exactlyCircuitOfMajority), and the MOD_q function is the disjunction of these
for k not divisible by q (modCircuitOfMajority) [CSV84]. The circuit
for MOD_q has depth 4 more and size polynomially larger than the circuit for majority, so if
majority has polynomial-size constant-depth circuits then so do MOD_q and parity
(ConstDepth.modGate_mem_of_majority_mem, ConstDepth.parity_mem_of_majority_mem). Over the
unbounded fan-in basis itself this contradicts Cslib.Circuits.Boolean.parity_notMem_AC0:
majority is not in AC⁰ [FSS84].
Main definitions #
Cslib.Circuits.Boolean.padCircuit: pad ann-bit input withmin a (n + 2)copies oftruefollowed byn + 2 - acopies offalse.Cslib.Circuits.Boolean.modCircuitOfMajority:MOD_qfrom a circuit for majority.
Main results #
Cslib.Circuits.Boolean.computes_modCircuitOfMajority: the circuit computesMOD_q.Cslib.Circuits.Boolean.ConstDepth.modGate_mem_of_majority_mem,Cslib.Circuits.Boolean.ConstDepth.parity_mem_of_majority_mem: over a basis containing the unbounded fan-in basis,MOD_qand parity have polynomial-size constant-depth circuits if majority does.Cslib.Circuits.Boolean.majority_notMem_AC0: majority is not in AC⁰.
References #
- [A. K. Chandra, L. Stockmeyer, U. Vishkin, Constant depth reducibility] [CSV84]
- M. Furst, J. B. Saxe, M. Sipser, Parity, circuits, and the polynomial-time hierarchy
The inputs followed by a copies of true and then copies of false, n + 2 constants in
all, read from two constant gates.
Instances For
Padding costs two gates, one for each constant.
Padding has depth at most one.
A threshold costs the padding and the majority circuit.
A threshold is one deeper than the majority circuit.
"Exactly k" is three deeper than the majority circuit.
MOD_q is four deeper than the majority circuit.
Evaluating padCircuit φ n a appends min a (n + 2) copies of true followed by
n + 2 - a copies of false to the input x.
The threshold circuit computes the threshold function.
The circuit for "exactly k" decides whether exactly k bits are true.
The circuit computes MOD_q.
MOD_q reduces to majority: over a basis containing the unbounded fan-in basis, modGate q
has polynomial-size constant-depth circuits if majority does.
Parity reduces to majority: over a basis containing the unbounded fan-in basis, parity has polynomial-size constant-depth circuits if majority does.
Majority is not in AC⁰.