Nechiporuk's formula and bounded-sharing circuit lower bounds for rectangle-free functions #
Nechiporuk's method bounds the leaf size of a formula from below by the
number of distinct subfunctions on the blocks of a partition of the inputs.
A rectangle-free function with many accepting inputs has nearly the maximal
number of subfunctions on every block whose size exceeds log₂ (8 K)
(Nechiporuk.two_pow_card_compl_le), while a formula with l leaves in a
block has at most 2 · 16 ^ l subfunctions there
(Nechiporuk.card_subfunctions_le). Summing over n / b disjoint blocks of
size b gives leaf size Ω(n² / b); with a polynomial threshold K ≤ n ^ c
the blocks have logarithmic size, and every formula over the full binary basis
computing the function has Ω(n² / log n) leaves.
The main formula statements are sum_le_of_computes for an arbitrary family of
disjoint blocks, leaves_lower_bound for consecutive blocks of a given size,
and the asymptotic eventually_sq_le_leaves.
Because a rectangle-free function has 2 ^ (n - |Y|) / (8 K) subfunctions on
each block Y, its binary logarithm is Θ(n) per block. Decomposing a
full-binary-basis circuit c : Circuit Binary.signature n 1 at its shared
gates (exists_sharedProgram_of_circuit) yields both:
- Global bounded-sharing lower bounds (
sum_le_size_of_computes,size_lower_bound,size_lower_bound',eventually_sq_le_size,isLittleO_size_of_rectangleFree) when total shared fan-outsharedFanOut cis sublinear inn. The asymptotic ones follow from their active-block counterparts, since every block sees at mostsharedFanOut cactive shared fan-out. - Active-block bounded-sharing lower bounds (
SharedProgram.block_bound_active,SharedProgram.sum_le_of_computes_active,sum_le_size_of_computes_active,size_lower_bound_active,size_lower_bound_active',eventually_sq_le_size_active,eventually_sq_le_size_of_gateBlockSpan_le,isLittleO_size_of_rectangleFree_active), where a shared gate only contributes on blocksYthat intersect its syntactic input cone (activeSharedGateCount c Y,activeSharedFanOut c Y). SummingactiveSharedFanOut c (Y i)over blocks weights each shared gate by itsgateBlockSpanrather than the total number of blocks (sum_activeSharedFanOut). If the input cone of every shared gate meets at mostspanof the logarithmic blocks, so that each shared gate depends onO(span · log n)inputs, the total shared fan-out may be superlinear, up toO(n² / (span · log n)), whileΩ(n² / log n)gates are still required (eventually_sq_le_size_of_gateBlockSpan_le). This locality restriction is essential: shared gates whose cones meet many blocks are charged on each of them. - Span-threshold tradeoffs without a total shared-fan-out budget
(
size_lower_bound_highSpanSharedFanOut,eventually_sq_le_size_of_highSpanSharedFanOut_le,eventually_sq_le_span_mul_size_of_gateBlockSpan_le,eventually_sq_le_size_of_card_wireSupport_le). Every single-output binary circuit satisfiessharedFanOut c ≤ 2 * c.size + 1(sharedFanOut_le_two_mul_size_add_one), so the fan-out of shared gates active on at mostdblocks, charged on each of those blocks, is absorbed into a factordon the circuit size:(n - b)(n - 2 b - 1) ≤ 5 n · s + (5 d + 4) b · (2 · c.size + 1), wheresbounds onlyhighSpanSharedFanOut c (block n b) d, the fan-out of shared gates active on more thandblocks. This trades the budget onsharedFanOutfor a loss of the factord; it does not remove the locality restriction, since high-span shared gates still need the budgets. When every shared gate has block-span at mostd n(for instance, syntactic input support of size at mostd n),highSpanSharedFanOutvanishes andn² ≤ 16 (5 · d n + 4) (c + 3) log₂ n · (2 · cir.size + 1), that is,Ω(n² / (d n · log n))gates are required, with no hypothesis onsharedFanOut cir.
On a block of size at least log₂ (8 K), a formula computing a rectangle-free
function with many accepting inputs has at least (n - |Y| - log₂ (16 K)) / 4
leaves in the block.
Nechiporuk's bound for rectangle-free functions. Over k pairwise disjoint
blocks, each of size at least log₂ (8 K), every formula computing a
K-rectangle-free function with at least 2 ^ (n - 2) accepting inputs has
leaf size at least (Σ_i (n - |Y_i|) - k · log₂ (16 K)) / 4.
Consecutive blocks of a fixed size #
The i-th block of b consecutive coordinates, for i < n / b.
Equations
- Algebraic.Nechiporuk.block n b i = Finset.image (fun (j : Fin b) => ⟨b * ↑i + ↑j, ⋯⟩) Finset.univ
Instances For
Nechiporuk's bound with consecutive blocks of size b. With
8 K ≤ 2 ^ b, every formula computing a K-rectangle-free function with at
least 2 ^ (n - 2) accepting inputs satisfies
(n / b) · (n - b) ≤ (n / b) · log₂ (16 K) + 4 · leaves.
A cleaner consequence: (n - b) (n - 2 b - 1) ≤ 4 b · leaves.
The asymptotic statement #
The logarithmic block size 3 + c * (Nat.log 2 n + 1) used in Nechiporuk's asymptotic lower
bounds for K n-rectangle-free functions with K n ≤ n ^ c.
Instances For
Formula size Ω(n² / log n) for rectangle-free families. For a family
that is K n-rectangle-free with K n ≤ n ^ c and at least 2 ^ (n - 2)
accepting inputs, every formula over the full binary basis computing f n
has at least n² / (64 (c + 3) log₂ n) leaves, for all large n.
Programs and circuits with shared gates #
Active-block Nechiporuk bound for full-binary-basis circuits. Over m pairwise disjoint
blocks of size at least log₂ (8 K), every single-output circuit c over Binary.signature
computing a K-rectangle-free function with at least 2 ^ (n - 2) accepting inputs satisfies
∑ i, (n - |Y i|) ≤ m · log₂ (16 K) + ∑ i, (activeSharedGateCount c (Y i) + 4 · activeSharedFanOut c (Y i)) + 4 · (c.size + KW.sharedGateCount c + 1).
Nechiporuk's bound for full-binary-basis circuits with bounded sharing. Over m
pairwise disjoint blocks, each of size at least log₂ (8 K), every single-output circuit c
over Binary.signature computing a K-rectangle-free function with at least 2 ^ (n - 2)
accepting inputs and with KW.sharedGateCount c ≤ k and sharedFanOut c ≤ s satisfies
∑ i, (n - |Y i|) ≤ m · (log₂ (16 K) + k + 4 s) + 4 · (c.size + k + 1).
Active-block Nechiporuk circuit bound with consecutive blocks of size b. With
8 K ≤ 2 ^ b, every single-output circuit c over Binary.signature computing a
K-rectangle-free function with at least 2 ^ (n - 2) accepting inputs satisfies
(n / b) · (n - b) ≤ (n / b) · log₂ (16 K) + ∑ i, (activeSharedGateCount c (block n b i) + 4 · activeSharedFanOut c (block n b i)) + 4 · (c.size + KW.sharedGateCount c + 1).
A multiplicative consequence of size_lower_bound_active:
(n - b) · (n - 2 b - 1) ≤ 5 b · (∑ i, activeSharedFanOut c (block n b i)) + 4 b · (c.size + KW.sharedGateCount c + 1).
Nechiporuk's circuit bound with consecutive blocks of size b. With 8 K ≤ 2 ^ b,
every single-output circuit c over Binary.signature computing a K-rectangle-free function
with at least 2 ^ (n - 2) accepting inputs and with KW.sharedGateCount c ≤ k and
sharedFanOut c ≤ s satisfies
(n / b) · (n - b) ≤ (n / b) · (log₂ (16 K) + k + 4 s) + 4 · (c.size + k + 1).
A multiplicative consequence of size_lower_bound:
(n - b) · (n - 2 b - 1 - k - 4 s) ≤ 4 b · (c.size + k + 1).
Active-block Ω(n² / log n) circuit lower bound for rectangle-free families.
For a family that is K n-rectangle-free with K n ≤ n ^ c and at least 2 ^ (n - 2)
accepting inputs, every full-binary-basis circuit cir computing f n whose active shared
fan-out summed across the n / b logarithmic blocks (b = nechiporukBlockSize c n) satisfies
20 b · (∑ i, activeSharedFanOut cir (block n b i)) ≤ n² (an O(n² / log n) total active
shared fan-out budget) obeys n² ≤ 64 (c + 3) log₂ n · (2 · cir.size + 1) for all large n.
Bounded-block-span Ω(n² / log n) circuit lower bound. Let
b = nechiporukBlockSize c n = 3 + c (⌊log₂ n⌋ + 1) be the logarithmic Nechiporuk block size and
suppose every shared gate of cir is active on at most span n of the n / b consecutive blocks
block n b i. Then the syntactic input cone of each shared gate lies inside at most span n
blocks together with the fewer than b trailing coordinates outside every block, so every shared
gate depends on fewer than (span n + 1) · b = O(span n · log n) inputs. Under this locality
restriction, if sharedFanOut cir ≤ s n and 40 (c + 3) log₂ n · span n · s n ≤ n², then
n² ≤ 64 (c + 3) log₂ n · (2 · cir.size + 1) for all large n.
For span n = O(1) the total shared fan-out s n may thus be superlinear, up to
Θ(n² / log n), but only for shared gates of logarithmic input-cone size; the hypothesis
excludes shared gates whose cones meet many blocks, and the theorem says nothing about
circuits with such gates beyond eventually_sq_le_size_active.
Bounded-block-span circuit lower bound without a total shared-fan-out budget. If every
shared gate of cir is active on at most d n of the logarithmic Nechiporuk blocks, then
n² ≤ 16 (5 · d n + 4) (c + 3) log₂ n · (2 · cir.size + 1) for all large n, that is,
Ω(n² / ((d n + 1) log n)) gates, with no bound on sharedFanOut cir. Compared with
eventually_sq_le_size_of_gateBlockSpan_le, the budget on sharedFanOut is traded for the
factor d n.
Bounded-input-support circuit lower bound without a total shared-fan-out budget. If the
syntactic input support cir.program.wireSupport (Wire.gate g) of every shared gate g has
cardinality at most d n, then n² ≤ 16 (5 · d n + 4) (c + 3) log₂ n · (2 · cir.size + 1) for
all large n, that is, Ω(n² / ((d n + 1) log n)) gates, with no bound on sharedFanOut cir.
For any multiplier M, a rectangle-free family requires at least M · n gates in any
full-binary-basis circuit whose active shared fan-out on the logarithmic blocks satisfies
20 b · (∑ i, activeSharedFanOut cir (block n b i)) ≤ n².
Superlinear circuit size for rectangle-free families under O(n² / log n) active-block
shared fan-out. If cir n is a family of circuits over Binary.signature computing a
K n-rectangle-free family f n (K n ≤ n ^ c, 2 ^ (n - 2) ≤ |(accepting (f n))|) whose
active shared fan-out on the logarithmic blocks satisfies
20 b · (∑ i, activeSharedFanOut (cir n) (block n b i)) ≤ n² eventually, then (cir n).size
grows faster than n.
Circuit size Ω(n² / log n) for rectangle-free families with bounded shared fan-out.
For a family that is K n-rectangle-free with K n ≤ n ^ c and at least 2 ^ (n - 2)
accepting inputs, every full-binary-basis circuit cir computing f n with
sharedFanOut cir ≤ s n (where 20 · s n ≤ n eventually) satisfies
n² ≤ 128 (c + 3) log₂ n · (cir.size + s n + 1) for all large n. Only the reuse of computed
gate outputs is bounded: the size is unrestricted and inputs may be read any number of times, so
s = 0 is the formula case, while general circuits (shared fan-out Θ(size)) are not covered.
For any multiplier M, a rectangle-free family with 20 · s n ≤ n eventually requires at
least M · n gates in any full-binary-basis circuit with sharedFanOut ≤ s n.
Rectangle-free families need superlinear full-binary-basis circuits when sharedFanOut = o(n). If s n = o(n) and cir n is a family of circuits over Binary.signature computing a
K n-rectangle-free family f n (K n ≤ n ^ c, 2 ^ (n - 2) ≤ |(accepting (f n))|) with
sharedFanOut (cir n) ≤ s n, then (cir n).size grows faster than n.