Lupanov representation

Lupanov's (k, s)-representation, named after Oleg Lupanov, is a way of representing Boolean circuits so as to show that the reciprocal of the Shannon effect. Shannon had showed that almost all Boolean functions of n variables need a circuit of size at least 2nn&minus;1. The reciprocal is that:

All Boolean functions of n variables can be computed with a circuit of at most 2nn&minus;1 + o(2nn&minus;1) gates.

Definition
The idea is to represent the values of a boolean function &fnof; in a table of 2k rows, representing the possible values of the k first variables x1, ..., ,xk, and 2n&minus;k columns representing the values of the other variables.

Let A1, ..., Ap be a partition of the rows of this table such that for i < p, |Ai| = s and $$|A_p|=s'\leq s$$. Let &fnof;i(x) = &fnof;(x) iff x &isin; Ai.

Moreover, let $$B_{i,w}$$ be the set of the columns whose intersection with $$A_i$$ is $$w$$.