The block-sensitivity witness #
Section 5 of bs_lambda.txt works at the all-zero input 0^V = zeroInput (Coord ι r).
Every certificate C_i requires the whole (nonempty) block B_i to be 1, so
f (0^V) = 0. Flipping exactly B_i sets
all of B_i to 1 while leaving every coordinate outside B_i — in particular every
outgoing gate coordinate of C_i, which lives in a block B_j with j ≠ i — equal to 0.
Hence (0^V)^{B_i} ∈ C_i and f ((0^V)^{B_i}) = 1.
The blocks are pairwise disjoint, so they form a family of |ι| disjoint sensitive blocks
at 0^V, giving bs f ≥ |ι|.
Adapted for Lean Pool from Timeroot/BS_Lam at commit
7bd39a8d41ee7910d3296d0477ad18f8fff9d870; ported to Lean Pool with proof and dependency cleanup.
f (0^V) = 0: no certificate is satisfied by the all-zero input, because every
certificate requires its whole (nonempty) owner block to be 1 (Section 5).
Flipping exactly the owner block B_i at the all-zero input lands in C_i
(Section 5). No irreflexivity hypothesis is needed: the gate coordinates of C_i lie in
blocks B_j with j ≠ i, which the flip does not touch.
f ((0^V)^{B_i}) = 1: flipping the owner block B_i at the all-zero input lands in
C_i, hence in the union defining f (Section 5).
Each block B_i is a sensitive block of f at the all-zero input (Section 5).
The block-sensitivity lower bound: bs f ≥ |ι| (Section 5, bs(f) ≥ k). The
blocks B_i are nonempty, pairwise disjoint and sensitive at the all-zero input.