One-dimensional capacity of threshold circuits of unbounded depth #
The model is Program n s: a straight-line program of s weighted threshold gates on n
Boolean inputs, with arbitrary real weights (integer weights are a special case), arbitrary
depth, and arbitrary fan-in and fan-out. Gate j is 1 exactly when
∑ i, inputWeight j i * x i + ∑_{k < j} gateWeight j k * (gate k) + bias j ≥ 0
(Program.eval_eq). The bounds count only the input-reading gates Program.inputGates,
those with a nonzero input weight vector; gates that read only other gates are free.
Let f be two-sided K-rectangle-free (TwoSidedRectangleFree): under every split of the
coordinates, every rectangle on which f is constant has a side with fewer than K elements.
Main results #
exists_sorted_group(Lemma 1): sorting a set by a real key and cutting it intoGconsecutive groups, some group is good for all but aT / Gfraction of a family of functions of the key that each change at mostTtimes (ChangesAtMost). Each such function is nonconstant on at mostTgroups (ChangesAtMost.card_nonconstant_groups_le).Program.piecesAtMost_evalFrom,Program.changesAtMost_evalFrom(Lemma 2): a run of threshold gates whose input contributions areλ_j tfor one real parameterthas at most2 ^ rpieces int, wherercounts the gates withλ_j ≠ 0.TwoSidedRectangleFree.two_pow_lt_mul_cost(Theorem U, one-dimensional capacity): everyBlockDecompositionoffhas2ⁿ < 4 K² · cost, where the cost multiplies4Tover the one-dimensional blocks withT ≥ 1changes andVover the summary blocks.TwoSidedRectangleFree.two_pow_lt_of_directionRuns: Theorem U for threshold programs split into consecutive runs along single directions, with run costs4 (2 ^ rᵢ - 1).TwoSidedRectangleFree.two_pow_lt_four_pow_inputGates,TwoSidedRectangleFree.lt_two_mul_add_two_mul_inputGates(C1): every threshold program computingfhas2ⁿ < 4 K² · 4 ^ s_in; withK ≤ 2 ^ k,n < 2k + 2 + 2 s_in.TwoSidedRectangleFree.two_pow_lt_of_direction,TwoSidedRectangleFree.lt_of_direction(C2): if all input weight vectors are multiples of one vector,2ⁿ < 16 K² · 2 ^ s_inandn < 2k + 4 + s_in.TwoSidedRectangleFree.two_pow_lt_of_runs,TwoSidedRectangleFree.lt_of_runs(C3): withBruns along single directions,2ⁿ < 4 K² · 4 ^ B · 2 ^ s_inandn < 2k + 2 + 2B + s_in.TwoSidedRectangleFree.two_pow_lt_of_multilevel,TwoSidedRectangleFree.two_pow_sub_lt_of_multilevel(C2′): iff = F(⟨w, x⟩)for a functionFwithTtransitions,2ⁿ < 4 K² · max 1 (4T), andT > 2 ^ (n - 2k - 4).TwoSidedRectangleFree.two_pow_lt_of_activations(C4, mixed gate costs): in anActivationProgramwhose input-reading gatejhas an activation changing at mostT jtimes,2ⁿ < 4 K² · ∏ⱼ max 1 (4 T j); a threshold gate costs4, an exact-threshold or interval gate8, and gates reading only gates are free.
The explicit polynomial-time family sourceReductionHardFamily is two-sided rectangle-free with
log₂ K = o(n); the asymptotic bounds for it are in
Complexitylib.Algebraic.LowerBound.Threshold.Family.
A function with at most M pieces changes at most M - 1 times.
Each function is nonconstant on few groups. Cut the positions into consecutive groups of
L. A function changing at most T times along the nondecreasing sequence z is nonconstant
on at most T of the first G groups.
Lemma 1 (sorted groups). Sort P by the real key α and cut it into G consecutive
groups of ⌊|P| / G⌋ elements. If every Ψ q changes at most T times, some group P' has
the functions p ↦ Ψ q (α p) constant on P' for every q ∈ Q outside a set Qbad with
G |Qbad| ≤ T |Q|.
Lemma 2 (pieces of a run). If every gate outside fixed receives the input contribution
slope j * t, and the gates in fixed are set by η, the gate values have at most 2 ^ r
pieces as functions of t, where r counts the gates outside fixed with a nonzero slope.
Gate semantics of activation programs. Gate j applies its activation to its weighted
input sum plus the weighted values of the earlier gates.
Theorem U (one-dimensional capacity). If f is two-sided K-rectangle-free, every block
decomposition of f satisfies 2ⁿ < 4 K² · cost: the product of 4T over its one-dimensional
blocks with T ≥ 1 changes and of V over its summary blocks is more than 2ⁿ / (4 K²).
Theorem U for threshold programs. Split the gates of a threshold program computing f
into B consecutive runs along single directions, with rᵢ input-reading gates in run i.
Then 2ⁿ < 4 K² · ∏ᵢ cᵢ, where cᵢ = 4 (2 ^ rᵢ - 1) if rᵢ ≥ 1 and cᵢ = 1 otherwise.
C1: input-reading gates of threshold circuits. Every weighted threshold program computing
a two-sided K-rectangle-free function has 2ⁿ < 4 K² · 4 ^ s_in, where s_in counts the gates
with a nonzero input weight vector; gates reading only gates are free.
C1, logarithmic form. With K ≤ 2 ^ k, every threshold program computing f has
n < 2k + 2 + 2 s_in, that is, more than (n - 2k - 2) / 2 input-reading gates.
C2: one direction. If every input weight vector of a threshold program computing f is a
real multiple of one vector w, then 2ⁿ < 16 K² · 2 ^ s_in.
C2, logarithmic form. With K ≤ 2 ^ k, a threshold program computing f whose input
weight vectors are all multiples of one vector has n < 2k + 4 + s_in.
C3: direction runs. If the gates of a threshold program computing f split into B
consecutive runs along single directions, then 2ⁿ < 4 K² · 4 ^ B · 2 ^ s_in.
C3, logarithmic form. With K ≤ 2 ^ k and B direction runs,
n < 2k + 2 + 2B + s_in.
C2′: multilevel threshold representations. If f x = F (⟨w, x⟩) for a function F
changing at most T times, then 2ⁿ < 4 K² · max 1 (4T).
C2′, logarithmic form. With K ≤ 2 ^ k and 2k + 4 ≤ n, a multilevel threshold
representation f = F(⟨w, x⟩) needs more than 2 ^ (n - 2k - 4) transitions.
C4: mixed gate costs. In an activation program computing f whose input-reading gate
j has an activation changing at most T j times, 2ⁿ < 4 K² · ∏ⱼ max 1 (4 T j), the product
ranging over the input-reading gates; gates reading only gates are free.