We first consider so-called (1,+s)-branching programs in which along every consistent path at most s variables are tested more than once. We prove that any such program computing a characteristic function of a linear code C has size at least 2Ω(min{d1, d2/s}) , where d1 and d2 are the minimal distances of C and its dual C⊥ . We apply this criterion to explicit linear codes and obtain a super-polynomial lower bound for s = o(n/log n). Then we introduce a natural generalization of read-k-times and (1,+s)-branching programs that we call semantic branching programs. These programs correspond to corrupting Turing machines which, unlike eraser machines, are allowed to read input bits even illegally, i.e. in excess of their quota on multiple readings, but in that case they receive in response an unpredictably corrupted value. We generalize the above-mentioned bound to the semantic case, and also prove exponential lower bounds for semantic read-once nondeterministic branching programs. K...
Stasys Jukna, Alexander A. Razborov