Abstract
Full Text
MATHEMATICS
O. B. LUPANOV
ON THE SYNTHESIS OF CONTACT CIRCUITS
(Presented by Academician M. V. Keldysh, 7 X 1957)
In the theory of contact circuits, the problem is solved of synthesizing contact circuits that realize functions of the algebra of logic. To characterize the set of circuits for all functions of the algebra of logic of \(n\) arguments, C. Shannon introduced \((^{1})\) the function \(L(n)\)—the minimal number of contacts sufficient to realize any function of \(n\) arguments. He also showed that, for any \(\varepsilon > 0\) and \(n > n(\varepsilon)\),
\[ (1-\varepsilon)\frac{2^n}{n} < L(n) < (1+\varepsilon)\frac{2^{n+2}}{n}, \]
whereas the proportion of functions requiring for their realization no more than
\[ (1-\varepsilon)\frac{2^n}{n} \]
contacts tends to \(0\) as \(n\) grows.
Each concrete method of synthesis \(A\) is naturally characterized by the function \(L_A(n)\)—the minimal number of contacts sufficient for realizing any function of \(n\) arguments by method \(A\). To obtain the upper estimate, C. Shannon used the method of universal multipoles developed by him. Subsequently G. N. Povarov proposed another synthesis method—the method of cascades \((^{2})\), which is an improvement of Shannon’s method. For the method of universal multipoles \(A\) and the method of cascades \(B\), the relation \(L_A(n) \geq L_B(n)\) holds. It can be shown \((^{3})\) that \(L_B(n) \sim \alpha(n)\dfrac{2^n}{n}\), where \(2 \precsim \alpha(n) \precsim 4^{*}\), and the function \(\alpha(n)\) assumes values close to \(4\) for arbitrarily large \(n\). The author obtained still another synthesis method \(C\) with a function \(L_C(n)\) satisfying the condition
\[ L_C(n) < (1+\varepsilon)\frac{2^{n+1}}{n} \]
(for any \(\varepsilon > 0\) and \(n > n(\varepsilon)\) \((^{3})\)).
Here we describe a certain method of synthesizing contact circuits with a function \(L_D(n)\), asymptotically equal to
\[ \frac{2^n}{n} \]
(and thereby show that \(L(n) \sim \dfrac{2^n}{n}\)).
\(1^\circ.\) Every function of the algebra of logic \(f(x_1,\ldots,x_n)\) can be specified by a table with two inputs (see Table 1): in the row corresponding to \(\sigma_1,\ldots,\sigma_k\), and the column corresponding to \(\sigma_{k+1},\ldots,\sigma_n\), the value of the function \(f\) on the set \((\sigma_1,\ldots,\sigma_n)\) is placed.
We divide the rows of the matrix \(M(f)\), which determines the values of the function, into groups \(A_1,\ldots,A_p\) (see Table 1). Let \(f_j(x_1,\ldots,x_n)\) be the function that coincides with \(f(x_1,\ldots,x_n)\) on the rows of the group \(A_j\) in \(M(f)\) and is equal to \(0\) in all other cases. The columns of the matrix \(M(f_j)\) are divided into groups
* Here \(a \precsim b\) means that \(\lim \dfrac{a}{b} \precsim 1\).
identical columns (let their number be \(t(j)\)). The function \(f_j\) can be represented in the form \(f_j=\bigvee_{i=1}^{t(j)} f_{ji}\), where \(f_{ji}\) coincides with \(f_j\) on the \(i\)-th group of columns and is equal to 0 in the remaining cases. Obviously,
Table 1
| \(x_1\ldots x_{k-1}x_k\) | \(0\) | \(\sigma_{k+1}\) | \(1\) | \(x_{k+1}\) |
|---|---|---|---|---|
| \(\cdot\) | \(\cdot\) | \(\cdot\) | \(\cdot\) | |
| \(\cdot\) | \(\cdot\) | \(\cdot\) | \(\cdot\) | |
| \(0\ldots0\ \ 0\) | \(0\) | \(\sigma_n\) | \(1\) | \(x_n\) |
| \(0\ldots0\ \ 1\) | \(A_1\) | |||
| \(A_2\) | ||||
| \(\sigma_1\ldots\sigma_{k-1}\sigma_k\) | \(\cdots\) | \(f(\sigma_1,\ldots,\sigma_n)\) | ||
| \(A_{p-1}\) | ||||
| \(1\ldots1\ \ 1\) | \(A_p\) |
\[ f_{ji}(x_1,\ldots,x_n) = f_{ji}^{(1)}(x_1,\ldots,x_k)\cdot f_{ji}^{(2)}(x_{k+1},\ldots,x_n), \]
where
\[
f_{ji}^{(1)}(x_1,\ldots,x_k)
=
\bigvee x_1^{\sigma_1}\ldots x_k^{\sigma_k}\,{}^*
\]
(the disjunction is taken over the set of tuples \((\sigma_1,\ldots,\sigma_k)\) corresponding to the nonzero rows of the matrix \(M(f_{ji})\));
\[
f_{ji}^{(2)}(x_{k+1},\ldots,x_n)
=
\bigvee x_{k+1}^{\sigma_{k+1}}\ldots x_n^{\sigma_n}
\]
(the disjunction is taken over the set of tuples \((\sigma_{k+1},\ldots,\sigma_n)\) corresponding to the nonzero columns of the matrix \(M(f_{ji})\)). Note that \(f_{ji_1}\cdot f_{ji_2}=0\) for \(i_1\ne i_2\) \((1\le j\le p)\). Thus,
\[ f(x_1,\ldots,x_n) = \bigvee_{j=1}^{p}\bigvee_{i=1}^{t(j)} f_{ji}^{(1)}(x_1,\ldots,x_k)\cdot f_{ji}^{(2)}(x_{k+1},\ldots,x_n). \tag{1} \]
We shall call the representation (1) a proper representation of the function \(f\) if the groups \(A_1,\ldots,A_p\) have the same number \(s\) of rows (except, possibly, one containing a smaller number of rows). The numbers \(k\) and \(s\) will be called the parameters of this representation.
\(2^\circ\). We shall call a (unit \(r\)-dimensional) sphere the set of tuples \((\alpha_1,\ldots,\alpha_r)\) of zeros and ones, each of which differs from some tuple \(\tilde\beta=(\beta_1,\ldots,\beta_r)\) in exactly one coordinate; the tuple \(\tilde\beta\) is called the center of the sphere, and the union of the sphere and its center is called a ball. Note that if the function \(\varphi(x_1,\ldots,x_r)\) is equal to the disjunction of the conjunctions corresponding to the tuples of the sphere with center \((\beta_1,\ldots,\beta_r)\) (i.e. is the characteristic function of this sphere), then
\[ \varphi(x_1,\ldots,x_r)\cdot x_i^{\bar\beta_i} = x_1^{\beta_1}\ldots x_{i-1}^{\beta_{i-1}}x_i^{\bar\beta_i}x_{i+1}^{\beta_{i+1}}\ldots x_r^{\beta_r} \qquad (1\le i\le r). \]
Lemma. The set of all tuples \((\sigma_1,\ldots,\sigma_r)\) for \(r=2^\rho\) can be decomposed into
\[
\frac{2^r}{r}
\]
disjoint spheres.
Proof. It is known \((^4)\) that the set of all tuples of length \(r_1=2^\rho-1\) can be decomposed into \(N=\dfrac{2^{r_1}}{r_1+1}\) disjoint balls. Let
\(^*\) \(x^\sigma\) \((\sigma=0,1)\) denotes \(x\) if \(\sigma=1\), and \(\bar x\) if \(\sigma=0\).
$\{(\beta_{i1}, \ldots, \beta_{ir})\}$, $1 \le i \le N$, is the set of their centers. As the centers of the partition spheres of all tuples of length $r$ it suffices to take the set $\{(\beta_{i1}, \ldots, \beta_{ir}, \delta)\}$, $1 \le i \le N$, $\delta = 0, 1$.
Let $K(n)$ denote the minimal number of contacts sufficient to realize, by means of a contact $(1, 2^n)$-pole, the system of $2^n$ distinct conjunctions
$x_1^{\sigma_1} \cdots x_n^{\sigma_n}$.
Theorem 1. $K(n) \sim 2^n$.
Proof. The lower estimate is obvious.
Upper estimate. A circuit for realizing all conjunctions of the arguments $x_1, \ldots, x_n$ is constructed as follows. To each output of the circuit $A$ (Fig. 1), which has one input and $\dfrac{2^r}{r}$ outputs and realizes all disjunctions of conjunctions (of the arguments $x_1, \ldots, x_r$) corresponding to nonintersecting spheres, there is attached a contact tree [5] in the remaining arguments (all trees contain no more than
\[ \frac{2^r}{r}\,(2 \cdot 2^{\,n-r} - 2) < \frac{2^{n+1}}{r} \]
contacts). Then to each output of the tree corresponding to the sphere with center $(\beta_1, \ldots, \beta_r)$ there is connected a bundle of contacts
$x_1^{\beta_1}, \ldots, x_r^{\beta_r}$
(Fig. 1) (in all, $r \cdot \dfrac{2^r}{r} \cdot 2^{\,n-r} = 2^n$ contacts). The circuit $A$ is obtained from a contact tree in the arguments $x_1, \ldots, x_r$ by identifying the corresponding outputs (this circuit contains no more than $2^{r+1}$ contacts). The total number of contacts in the resulting circuit does not exceed
\[ K = 2^{r+1} + \frac{2^{n+1}}{r} + 2^n . \]
If $r = 2^{[\lg_2(n-\lg_2 n)]}$, then
\[ K \le \frac{2^{n+1}}{n} + \frac{2^{n+2}}{n-\lg_2 n} + 2^n = 2^n(1 + O(1/n)). \]
It is clear that the constructed circuit realizes all the required conjunctions. The theorem is proved.
Fig. 1
Theorem 1 shows that the contact tree is not a minimal circuit and that the number of contacts can be reduced asymptotically by a factor of two. Figure 2 shows a circuit realizing all conjunctions of 5 arguments (and their negations), containing a smaller number of contacts (60) than the corresponding tree (62).
Fig. 2
Remark. Outputs corresponding to the conjunctions
$\xi_i = x_1^{\sigma_{1i}} \cdots x_n^{\sigma_{ni}}$
are called close if $\xi_i \cdot \varphi(x_1, \ldots, x_r) \ne 0$, where $\varphi(x_1, \ldots, x_r)$ is the characteristic function of some sphere of the partition considered. If, in the circuit described above, certain sets of close outputs are identified, then the resulting circuit will realize the disjunctions of the corresponding conjunctions.
3°. Theorem 2. \(L(n)\sim \dfrac{2^n}{n}\).
Proof. The lower bound was obtained by C. Shannon \((^1)\).
Upper bound. Consider a regular representation of the function \(f(x_1,\ldots,x_n)\) with parameters \(k\) and \(s\). The circuit \(S_j\) for the function \(f_i\) is constructed from the circuit \(S_j^{(2)}\) (see Fig. 3), realizing the totality of all nonzero functions
\[
f_{jih}^{(2)}=f_{ji}^{(2)}\cdot \varphi_h(x_{k+1},\ldots,x_{k+r}),
\]
where \(\varphi_h(x_{k+1},\ldots,x_{k+r})\) is the characteristic function of a sphere, and from circuits \(S_{jih}^{(1)}\) (no more than \(\dfrac{2^{s+r}}{r}\) of them), realizing the functions \(f_{jih}^{(1)}=f_{ji}^{(1)}\); one of the poles of the circuit \(S_{jih}^{(1)}\) is joined to the corresponding output of the circuit \(S_j^{(2)}\), while the other poles of the circuits \(S_{jih}^{(1)}\) are combined and form a pole of the circuit \(S_j\) (the second pole of the circuit \(S_j\) is the input of the circuit \(S_j^{(2)}\)). The circuit \(S\) is formed as a result of the parallel connection of the circuits \(S_j\) (no more than \(\dfrac{2^k}{s}+1\) of them). The circuit \(S_j^{(2)}\) contains no more than
\[
2^{r+1}+2^{n-k}+\frac{2^{\,n-k+1}}{r}
\]
contacts (the proof of Theorem 1 and the remark), and each circuit \(S_{jih}^{(1)}\) contains no more than \(sk\) contacts (one may proceed, for example, from the perfect disjunctive normal form). Therefore the number of contacts in \(S\) does not exceed
\[
L=\left(\frac{2^k}{s}+1\right)\left(2^{n-k}+2^{r+1}+\frac{2^{\,n-k+1}}{r}+\frac{sk2^{s+r}}{r}\right).
\]
Put
\[
k=[2\lg_2 n],\qquad s=[n-2\sqrt n],\qquad r=2^{[1/2\lg_2 n]}.
\]
Then
\[
L\leqslant \frac{2^n}{n}\left(1+O\left(\frac{1}{\sqrt n}\right)\right).
\]
The theorem is proved.
4°. We shall give, without proof, two more assertions.
Let \(k(n)\) (respectively \(M(n)\)) be the minimal number \(A\) such that the system of all conjunctions \(x_1^{\sigma_1}\cdots x_n^{\sigma_n}\) (respectively any Boolean-algebra function of \(n\) arguments) can be realized by a contact circuit with maximum relay load not exceeding \(A\).
Theorem 3. \(k(n)\sim \dfrac{2^n}{n}\).
Theorem 4. \(M(n)\sim \dfrac{2^n}{n^2}\).*
Received
1 X 1957
CITED LITERATURE
- C. E. Shannon, Bell Syst. Techn. J., 28, No. 1, 59 (1949).
- G. N. Povarov, DAN, 100, No. 5, 909 (1955).
- O. B. Lupanov, Radiofizika, No. 1 (1958).
- R. W. Hamming, Codes and Error Detection, IL, 1956, p. 7.
- C. E. Shannon, Trans. Am. Inst. Electr. Eng., 57, 713 (1938).
* The estimates of these functions known up to now are \((^1)\)
\[
\frac{2^n}{n}\lesssim k(n)\lesssim \frac{2^{n+1}}{n}
\]
and
\[
\frac{2^n}{n^2}\lesssim M(n)\lesssim \frac{2^{n+2}}{n^2}.
\]
Fig. 3