Reports of the Academy of Sciences of the USSR
CYBERNETICS AND CONTROL THEORY
Submitted 1964-01-01 | RussiaRxiv: ru-196401.69119 | Translated from Russian

Full Text

Reports of the Academy of Sciences of the USSR
1964, Volume 156, No. 3

CYBERNETICS AND CONTROL THEORY

G. B. TUMANYAN

MINIMIZATION OF INDECOMPOSABLE BOOLEAN FUNCTIONS BY THE METHOD OF APPROXIMATE FUNCTIONAL DECOMPOSITION

(Presented by Academician V. S. Kulebakin, January 14, 1964)

In the present work a number of properties and dependencies of indecomposable Boolean functions characterizing electronic relay devices are investigated, and a definite method is given for minimizing such functions with the aid of approximate nonseparable decomposition. The application of this method in combination with the complete minimization algorithm makes it possible to considerably extend the limits of minimization of decomposable and indecomposable Boolean functions. In papers (¹, ²), in order to illustrate the difficulty of minimizing indecomposable functions, several examples are given in which a purely intuitive approach is used in the process of minimizing indecomposable functions.

Definition 1. By indecomposable we shall mean those functions which are not decomposable into subfunctions either separably or nonseparably (in the sense of (²)) for the number of overlapping variables \(|Z| = 1, 2, \ldots, n - 3\), and also are not trivially indecomposable for \(|Z| = n - 2\), in the latter case under the condition that the composite function contains subfunctions connected with one another by the logical operations \(\oplus\), \(+\), or \(\cdot\). (In what follows, by the expression “trivial decomposition for \(|Z| = n - 2\)” we shall mean precisely this case.)

Fig. 1

Fig. 1

Any indecomposable Boolean function \(f(x_1, x_2, \ldots, x_n)\) can be reduced to an approximately nonseparably decomposable function \(g(x_1, x_2, \ldots, x_n)\) for \(|Z| = n - 3\), if some states are excluded from its operating states and others from the forbidden states are added to its operating states. Let \(d = d_k + d_h\) denote the total number of such obligatory correcting terms, where \(d_k\) is the number of excluded terms, and \(d_h\) is the number of added terms. In this case, in order to preserve the operating condition of the system, correcting functions \(k(x_1, x_2, \ldots, x_n)\) and \(h(x_1, x_2, \ldots, x_n)\) are added to the obtained function \(g(x_1, x_2, \ldots, x_n)\):

\[ f(x_1, x_2, \ldots, x_n) = \bigl[g(x_1, x_2, \ldots, x_n) + k(x_1, x_2, \ldots, x_n)\bigr]\cdot \bar h(x_1, x_2, \ldots, x_n). \]

In the process of minimizing indecomposable functions, the correct choice of the number \(d\) of obligatory correcting terms is of primary importance.

Definition 2. An indecomposable Boolean function is the “closer” to decomposability, the smaller the number of obligatory correcting terms \(d = d_k + d_h\) that must be introduced when transforming it into an approximately decomposable function \(g(x_1, x_2, \ldots, x_n)\).

If we take the set of variables \(a \cup b = \{x_1, x_2, \ldots, x_n\}\), then

\[ g(a,b)=g(X,Y,Z)= \sum_{j=0}^{2^{|Z|}-1} G_j[\Phi_j(X)\cdot Y]\cdot P_j(Z) = G[\Phi(X,Z),Y,Z], \]

where \(X = a \cap b'\), \(Y = b \cap a'\), and \(Z = a \cap b\).

When the indecomposable initial function is “close” to decomposability and requires a small number \(d\), the simplification of the correcting functions is carried out by applying the operation \(A\bar{x}+Ax=A\). In this case the general expression of the composite form of the initial indecomposable function \(f(x_1,x_2,\ldots,x_n)\) will be

\[ f(x_1,x_2,\ldots,x_n)=F[E[G[\Phi(X,Z),Y,Z],K(a,b)],\bar{H}(a,b)], \]

where

\[ K(a,b)=k(x_1,x_2,\ldots,x_n)=\sum_{i=0}^{d_k} k_i+\sum_{j=0}^{d'_k} k_j \]

and

\[ \bar{H}(a,b)=\bar{h}(x_1,x_2,\ldots,x_n) =\sum_{i=0}^{d_h}\bar{h}_j+\sum_{j=0}^{d'_h}\bar{h}_j; \]

\[ \sum_{0}^{d_k} k_j \quad\text{and}\quad \sum_{0}^{d_h}\bar{h}_i \]

are sums of essential terms, while

\[ \sum_{0}^{d'_k} k_i \quad\text{and}\quad \sum_{0}^{d'_h}\bar{h}_j \]

are sums of nonessential terms of the correcting functions, introduced in order to simplify the functions, \(0\le d'_k\le r-d_k\), where \(r\) is the number of all terms of the working states, and \(0\le d'_h\le r_0-d_h\), where \(r_0\) is the number of all terms of the forbidden states.

If the indecomposable initial function is “not close” to decomposability and requires a large number \(d\), then minimization and simplification of the correcting functions are also carried out by functional decompositions on the basis of compiled additional decomposition maps. In this case the general expression of the composite function in the form of a complex decomposition of the initial indecomposable function \(f(x_1,x_2,\ldots,x_n)\) will be

\[ f(x_1,x_2,\ldots,x_n)= \]

\[ =F[E[G[\Phi(X,Z),Y,Z],K[\varphi(X_1,Z_1),Y_1,Z_1]],\bar{H}[\Psi(X_2,Z_2),Y_2,Z_2]]. \]

Theorem 1. The number of necessary essential correcting terms \(d\) will be minimal for that group of submaps with \([Z]=n-3\), which contains the smallest number of submaps with \(\nu>2\) in each, where \(\nu\) is the number of columns with distinct occurrences, \(0\le j\le 2^{[Z]}-1\).

Proof. Suppose there are compact maps and submaps for \([Z]=n-3\). If the initial function is indecomposable for \([Z]=0,1,2,\ldots,n-3\), then among all tested \(3\cdot C_n^{[Z]}\) groups of submaps there is not one in which all \(2^{[Z]}\) submaps would have \(\nu\le2\). Submaps with \(\nu>2\) either have \(\alpha_1,\alpha_2,\alpha_3\), or \(\alpha_1,\alpha_2,\alpha_3,\alpha_4\) distinct column vectors. In the first case, to transform it into the form of submaps with \(\nu=2\), it is necessary to exclude or add in all one correcting term, and in the second case, two correcting terms. These excluding or supplementing terms will be essential terms of the correcting functions. For their selection a limited number of trials is necessary. For any group the total number of essential correcting terms \(d\) depends on the number of submaps with \(\nu>2\) in the group. The smaller their number, the smaller will be the number of necessary terms \(d\). In the worst case, when the given group contains only submaps with \(\nu>2\) with column vectors \(\alpha_1,\alpha_2,\alpha_3,\alpha_4\), \(d_{\max}=2^{[Z]+1}\), and in the best case, when within the given group only one submap has \(\nu>2\) with column vectors \(\alpha_1,\alpha_2,\alpha_3\), while the rest have \(\nu\le2\), \(d_{\min}=1\), i.e. \(1\le d\le 2^{[Z]+1}\).

Corollary 1. The composite form of an approximately nontrivially decomposable function \(g(x_1,x_2,\ldots,x_n)\) is chosen according to maps or according to groups of submaps with \([Z]\le n-3\), requiring the minimal number of essential correcting terms.

In doing so, the concrete distribution of the number of distinct submaps with \(\nu=3\) and \(\nu=4\) in the individual groups is taken into account.

If the initial function is “not close” to decomposability, for which \(d>2\) is necessary, and is not trivially inseparably decomposable for

\(|Z|=n-2\), then in particular cases it is expedient to transform it into an inseparably trivial decomposability for \(|Z|=n-2\).

Consequence 2. The composite form of an approximately trivially decomposable function \(g(x_1,x_2,\ldots,x_n)\), whose subfunctions are connected with one another by the logical operations \(\oplus\), \(+\), or \(\cdot\), is selected by groups of submaps with \(|Z|\leqslant n-2\) that require the smallest number of obligatory terms \(d=d_k+d_h\).

Let us apply this minimization method also to the indecomposable function
\(f(x_1,x_2,\ldots,x_5)=\sum 0, 2, 9, 12, 13, 14, 18, 19, 20, 23, 28, 29, 30\).

I. If all operating states are entered on the compact decomposition maps, then the decomposability test will show that there are no maximal decompositions for \(|Z|=0,1,2,\ldots,n-3\), and also no trivial decompositions for \(|Z|=n-2\). Consequently, the given function \(f(x_1,x_2,\ldots,x_5)\) is indecomposable.

II. Next, from all groups of submaps with \(|Z|=n-3\), we isolate those groups that have the smallest number of submaps with \(\nu>2\); there are altogether three such groups of submaps, with the partitions \(x_3/x_1x_2:x_4x_5\), \(x_3/x_1x_4:x_2x_5\), \(x_3/x_2x_4:x_1x_5\) (see Table 1a, b, and c).

Table 1

a. \(x_4x_1x_2\)

\(x_5x_3\) \(x_4x_1x_2\) \(x_4x_1x_2\) \(x_4x_1x_2\) \(x_4x_1x_2\) \(x_4x_1x_2\) \(x_4x_1x_2\) \(x_4x_1x_2\) \(x_4x_1x_2\)
\(x_5x_3\) (0) 8 16 24 (2) 10 (18) 26
\(x_5x_3\) 4 (12) (20) (28) 6 (14) 22 (30)
\(x_5x_3\) 1 (9) 17 25 3 11 (19) 27
\(x_5x_3\) 5 (13) 21 (29) 7 15 (23) 31

b. \(x_5x_2x_3\)

\(x_1x_4\) \(x_5x_2x_3\) \(x_5x_2x_3\) \(x_5x_2x_3\) \(x_5x_2x_3\) \(x_5x_2x_3\) \(x_5x_2x_3\) \(x_5x_2x_3\) \(x_5x_2x_3\)
\(x_1x_4\) (0) 4 8 (12) 1 5 (9) (13)
\(x_1x_4\) (2) 6 10 (14) 3 7 11 15
\(x_1x_4\) 16 (20) 24 (28) 17 21 25 (29)
\(x_1x_4\) (18) 22 26 (30) (19) (23) 27 31

c. \(x_5x_1x_3\)

\(x_4x_2\) \(x_5x_1x_3\) \(x_5x_1x_3\) \(x_5x_1x_3\) \(x_5x_1x_3\) \(x_5x_1x_3\) \(x_5x_1x_3\) \(x_5x_1x_3\) \(x_5x_1x_3\)
\(x_4x_2\) (0) 4 16 (20) 1 5 17 21
\(x_4x_2\) 8 (12) 24 (28) (9) (13) 25 (29)
\(x_4x_2\) (2) 6 (18) 22 3 7 (19) (23)
\(x_4x_2\) 10 (14) 26 (30) 11 15 27 31

III. By successively selecting and entering on all compact maps the various obligatory correcting terms, we obtain the following maximal decompositions. For

\[ \sum_{0}^{d_k} k_i=\overline{x}_1\overline{x}_2\overline{x}_3x_4x_5 \]

there is, for \(Z=\{x_2x_5\}\),

\[ b_1=B_1\,[\Phi_1(x_1x_2x_4x_5),\,x_2x_3x_5], \qquad b_2=B_2\,[\Phi_2(x_2x_3x_5),\,x_1x_2x_4x_5]; \]

for \(Z=\{x_4x_5\}\),

\[ b_3=B_3\,[\Phi_3(x_1x_2x_3x_4x_5),\,x_3x_4x_5], \qquad b_4=B_4\,[\Phi_4(x_3x_4x_5),\,x_1x_2x_4x_5]. \]

For

\[ \sum_{0}^{d_k} k_i=x_1\overline{x}_2\overline{x}_3x_4x_5 \]

there is, for \(Z=\{x_1x_5\}\),

\[ b_5=B_5\,[\Phi_5(x_1x_2x_4x_5),\,x_1x_3x_5], \qquad b_6=B_6\,[\Phi_6(x_1x_3x_5),\,x_1x_2x_4x_5]. \]

For

\[ \sum_{0}^{d_k} k_i=x_1x_2\overline{x}_3x_4x_5 \quad\text{or}\quad \sum_{0}^{d_h}\overline{h}_i=\overline{(x_1x_2\overline{x}_3x_4x_5)} \]

we obtain identical expressions of the maximal decomposition for \(Z=\{x_5\}\):

\[ b_7=B_7\,[\Phi_7(x_1x_2x_4x_5),\,x_3x_5], \qquad b_8=B_8\,[\Phi_8(x_3x_5),\,x_1x_2x_4x_5]. \]

From all maximal decompositions we choose \(b_7\) and \(b_8\), which belong to type I of multistage decompositions and have the minimum number of overlapping variables \(|Z|=1\). In addition, here there is multiple-

decomposition by means of the form \(\Phi_7(x_1x_2x_4x_5) \oplus \Phi_8(x_3x_5)\). As the mandatory correcting terms we finally choose

\[ \sum_0^{d_h} \bar h_i=\overline{(x_1x_2\bar x_3x_4x_5)}. \]

From the map \(x_3/x_1x_2x_4:x_5\) we determine the component function

Table 2

\(x_2x_4x_5\)

\(x_1\) 0 1 2 3 (4) (5) (6) 7
\(x_1\) (8) 9 10 (11) (12) (13) (14) 15

Table 3

\(x_4x_5\)

\(x_2\) (0) 1 2 (3)
\(x_2\) (4) (5) (6) 7

\[ b_9=B_9\,[\Phi_9(x_2x_4x_5),\,x_1x_2],\qquad b_{10}=B_{10}\,[\Phi_{10}(x_1x_2),\,x_2x_4x_5]; \]

\[ \Phi_7(x_1x_2x_4x_5)=\Phi_9(x_2x_4x_5)\cdot\Phi_{10}(x_1x_2), \]

\[ \Phi_9(x_2x_4x_5)=\bar x_2\bar x_4\bar x_5+\bar x_2x_4x_5+x_2\bar x_4\bar x_5+x_2\bar x_4x_5+x_2x_4\bar x_5. \]

in the form of a complex decomposition of the approximately decomposable function

\[ g(x_1,x_2,\ldots,x_5)=\Phi_7(x_1x_2x_4x_5)\oplus\Phi_8(x_3x_5); \]

\[ \begin{aligned} \Phi_7(x_1x_2x_4x_5) &=\bar x_1x_2\bar x_4\bar x_5+x_1\bar x_2\bar x_4\bar x_5+x_1x_2\bar x_4\bar x_5+\bar x_1x_2\bar x_4x_5\\ &\quad +x_1x_2\bar x_4x_5+\bar x_1x_2x_4\bar x_5+x_1x_2x_4\bar x_5+x_1x_2x_4x_5. \end{aligned} \]

We enter the working state \(\Phi_7\) on the compact maps. Here there are maximal decompositions for the partition \(x_1/x_4x_5:x_2\) (see Table 2).

We enter on the compact maps the working states contained in \(\Phi_9\) (Table 3)

\[ \Phi_9(x_2x_4x_5)=(x_2\oplus x_4x_5)+(\bar x_2\bar x_4\bar x_5+x_2\bar x_4\bar x_5) =(x_2\oplus x_4x_5)+\bar x_4\cdot\bar x_5; \]

\[ \Phi_{10}(x_1x_2)=x_1\bar x_2+x_2=x_1+x_2;\qquad \Phi_8(x_3x_5)=\bar x_3\cdot\bar x_5; \]

\[ g(x_1,x_2,\ldots,x_5)=\bigl[(x_1+x_2)\cdot[\bar x_4\cdot\bar x_5+(x_2\oplus x_4\cdot x_5)]\bigr]\oplus(\bar x_3\cdot\bar x_5). \]

The general correcting function will be

\[ \bar h(x_1,x_2,\ldots,x_5) =\overline{(x_1x_2\bar x_3\bar x_4x_5+x_1x_2\bar x_3x_4x_5+x_1x_2\bar x_3x_4\bar x_5+x_1x_2\bar x_3x_4x_5)} =(x_1\cdot x_2\cdot\bar x_3). \]

The final component form of the initial indecomposable function is

\[ f(x_1,x_2,\ldots,x_5)=\bigl[[(x_1+x_2)\cdot[\bar x_4\cdot\bar x_5+(x_2\oplus x_4x_5)]]\oplus(\bar x_3\cdot\bar x_5)\bigr]\overline{(x_1\cdot x_2\bar x_3)}, \]

the functional-algebraic estimate is \(C_5=11\).

The corresponding logic circuit is shown in Fig. 1, where it contains in all 25 semiconductor triodes. The minimization of the initial function \(f(x_1,x_2,\ldots,x_5)\) can also be carried out by the methods of improper decomposition \((^2)\). In this case the final component form of the initial indecomposable function \(f(x_1,x_2,\ldots,x_5)\) is obtained as

\[ f(x_1,x_2,\ldots,x_5)=[\bar\Phi(x_3\oplus x_5)\cdot(x_3+\bar\Psi)+x_3\Psi]\oplus\varphi, \]

where \(\Phi=x_1x_2\bar x_4\), \(\varphi=x_2+x_1\cdot\bar x_4\), \(\Psi=\bar x_1x_2+x_2x_4\), the functional-algebraic estimate is \(C_5=14\); here 31 triodes are contained, i.e., 6 triodes more than in the circuit minimized by the method of approximate decomposition.

When the initial function \(f(x_1,x_2,\ldots,x_5)\) is minimized by the implicational Quine—McCluskey method \((^3)\), a likewise uneconomical circuit with 32 triodes is obtained.

Institute of Automation and Telemechanics

Received
9 I 1964

CITED LITERATURE

  1. R. L. Ashenhurst, Proc. Intern. Symposium on the Theory of Switching, Ann. Computation Laboratory Harvard University, 29—30 (1959).
  2. H. A. Curtis, A New Approach to the Design of Switching Circuits, N. Y., 1962.
  3. E. J. McCluskey, Bell Syst. Techn. J., 35, November, 1417 (1956).

Submission history

Reports of the Academy of Sciences of the USSR