Full Text
V. K. KOROBKOV, T. L. REZNIK
ON SOME ALGORITHMS FOR COMPUTING MONOTONE FUNCTIONS OF THE ALGEBRA OF LOGIC
(Presented by Academician S. L. Sobolev, June 25, 1962)
It is known that, as the domain of definition of functions of the algebra of logic, one may consider the set \(E_n\)—the set of vertices of the \(n\)-dimensional unit cube. In the general case, in order to determine uniquely a function of the algebra of logic \(f(x_1,x_2,\ldots,x_n)\), it is necessary to know the values of the function at every point of \(E_n\). If, however, the function belongs to some class, then, owing to additional information, it is enough to know the values of the function on some subset of \(E_n\) in order that it may be uniquely extended to all of \(E_n\). Thus, having computed the values of the function \(f(x_1,x_2,\ldots,x_n)\) on the set of points
\[ G(s)=\{(\alpha_1^k,\alpha_2^k,\ldots,\alpha_n^k)\} \]
such that
\[ \sum_{i=1}^{n}\alpha_i^k=k \]
\((0\leq k\leq n)\), one can distinguish (“decipher”) any particular function from the class of symmetric (for the definition see (¹)) functions of the algebra of logic.
A number of problems of mathematical economics and logic reduce to the “deciphering” of a monotone (for the definition see (²)) function of the algebra of logic, and the computation of the value of the function at each point is very cumbersome (for example, it may consist in solving the traveling-salesman problem with \(n\) points to be visited). In connection with this there arises the problem of uniquely determining a monotone function from its values at as small a number of points as possible.
In the present note the algorithmic difficulties of “deciphering” monotone functions in a certain class of natural algorithms are discussed.
Definition. A set \(G(f,N)\subset E_n\) is called a resolving set for the function \(f(x_1,x_2,\ldots,x_n)\), belonging to the class \(N\) of functions of the algebra of logic, if: 1) from the fact that \(f(\alpha_1,\alpha_2,\ldots,\alpha_n)\) is known for any point \(\alpha=(\alpha_1,\alpha_2,\ldots,\alpha_n)\in G(f,N)\), it follows that \(f(\beta_1,\beta_2,\ldots,\beta_n)\) is known for all points \(\beta=(\beta_1,\beta_2,\ldots,\beta_n)\in E_n\); 2) no subset \(G(f,N)\) has property 1).
In a number of cases there exists a set \(G(N)\) that is resolving for any function of an entire class. Thus, for the class \(D\) of self-dual (for the definition see (²)) functions, \(G(f,D)=G(D)=\{(0,\alpha_2,\alpha_3,\ldots,\alpha_n)\}\), where \(\{(\alpha_2,\alpha_3,\ldots,\alpha_n)\}=E_{n-1}\), since by the definition of a self-dual function
\(f(1,\alpha_2,\alpha_3,\ldots,\alpha_n)=\overline{f(0,\overline{\alpha}_2,\alpha_3,\ldots,\alpha_n)}\).
The resolving set for the class \(S\) of symmetric functions is the set \(G(s)\) given above. For the class \(M\) of monotone functions it is impossible to specify a single resolving set (apart from the trivial one \(E_n\)), since for any point \(\alpha\in E_n\) there is a monotone function \(\varphi(x_1,x_2,\ldots,x_n)\) such that \(\alpha\in G(\varphi,M)\); however, for any particular monotone function there exists a resolving set substantially narrower than \(E_n\).
Let us consider a class of algorithms with parameter \(k\) \((k=0,1,2,\ldots)\) for finding a resolving set for an arbitrary monotone function \(f(x_1,x_2,\ldots,x_n)\), specified by an operator \(A_f\) that determines, for any point \(\alpha\in E_n\), the value of the function at this point.
For what follows we shall need some notions and definitions:
\[
\|\alpha\|=\|(\alpha_1,\alpha_2,\ldots,\alpha_n)\|=\sum_{i=1}^{n}\alpha_i
\]
is the norm of the point \(\alpha\);
\[
\rho(\alpha,\beta)=\sum_{i=1}^{n}|\alpha_i-\beta_i|
\]
is the distance between the points \(\alpha\) and \(\beta\); the neighborhood of order \(k\) of the point \(\alpha\) is the set of points \(R_k(\alpha)=\{\beta:\rho(\alpha,\beta)\le k\}\). We shall say that the point \(\alpha=(\alpha_1,\alpha_2,\ldots,\alpha_n)\) precedes the point \(\beta=(\beta_1,\beta_2,\ldots,\beta_n)\) (respectively, that the point \(\beta\) follows the point \(\alpha\)) if \(\alpha_i\le\beta_i\) \((1\le i\le n)\). Denote by \(V(\alpha)\) the set of all points \(\beta\in E_n,\ \beta\ne\alpha\), following \(\alpha\), and by \(N(\alpha)\) the set of all points \(\gamma\in E_n,\ \gamma\ne\alpha\), preceding the point \(\alpha\). A \(k\)-dimensional subcube is the set of points
\[
R(\alpha,\beta)=\alpha\cup\beta\cup\bigl(N(\alpha)\cap V(\beta)\bigr),
\]
where \(\|\alpha\|-\|\beta\|=k\); \(\alpha,\beta\in E_n\) are the vertices of the subcube. An upper zero of a monotone function \(f(x_1,x_2,\ldots,x_n)\) is a point \(\alpha=(\alpha_1,\alpha_2,\ldots,\alpha_n)\) such that \(f(\alpha)=0\) (by \(f(\alpha)\), here and below, we shall mean \(f(\alpha_1,\alpha_2,\ldots,\alpha_n)\)), while \(f(\beta)=1\) for all \(\beta\in V(\alpha)\). A lower one of a monotone function \(f(x_1,x_2,\ldots,x_n)\) is a point \(\alpha\) such that \(f(\alpha)=1\), while \(f(\beta)=0\) for any \(\beta\in N(\alpha)\).
Denote by \(P(f)\) the set of all upper zeros of the monotone function \(f(x_1,x_2,\ldots,x_n)\), and by \(Q(f)\) the set of all lower ones. Then it is clear that a determining set for the monotone function \(f(x_1,x_2,\ldots,x_n)\) is the set
\[
G(f,M)=P(f)\cup Q(f),
\]
since from \(f(\alpha)=0\) it follows that \(f(\beta)=0\) for all \(\beta\in N(\alpha)\), and from \(f(\alpha)=1\) it follows that \(f(\gamma)=1\) for all \(\gamma\in V(\alpha)\). Consider an algorithm of rank \(k\) for finding a determining set for an arbitrary monotone function \(f(x_1,x_2,\ldots,x_n)\).
The operation of the algorithm consists in determining the value of the monotone function at some point of \(E_n\) and in choosing the point at which it is necessary to compute the value of the function at the next step of the algorithm; moreover this choice essentially uses the previously obtained information about the function. The initial conditions for the operation of the algorithm are \(P=Q=L=\Lambda\). The locality of the algorithms consists in the fact that the search for points not belonging to \(L\) is carried out in neighborhoods of order \((k+1)\) of points from \(P\cup Q\) constructed by the time of the search.
Using the operator schemes introduced in \((^3)\), an algorithm of rank \(k\) can be written in the following form:
\[ (\alpha_0\to\alpha)\overset{f}{\downarrow}A_f(\alpha)\,p(f(\alpha)=1)\uparrow_{1}\,[\alpha\Rightarrow Q]\,\overset{3}{\downarrow}p_1\bigl((\exists\beta)(p(\beta\in Q)\,\&\,p(\beta\in V(\alpha))=1)\bigr)\uparrow_{2} \]
\[ (\Lambda\to\beta)\,p\uparrow_{3}\overset{2}{\downarrow}p\bigl((\exists\beta)(p(\beta\in R_1(\alpha))\,\&\,p(\beta\in \overline{L})=1)\bigr)\uparrow_{4}\,(\beta\to\alpha)\,p\overset{\uparrow}{f} \]
\[ \overset{1}{\downarrow}[\alpha\Rightarrow P]\,\overset{6}{\downarrow}p\bigl((\exists\beta)(p(\beta\in P)\,\&\,p(\beta\in N(\alpha))=1)\bigr)\uparrow_{5}\,(\Lambda\to\beta)\,p\uparrow_{6} \]
\[ \overset{5}{\downarrow}p\bigl((\exists\beta)p(\beta\in R_1(\alpha))\,\&\,p(\beta\in \overline{L})=1\bigr)\uparrow_{7}\,(\beta\to\alpha)\,p\overset{\uparrow}{f} \]
\[ \overset{4\ 7}{\downarrow\downarrow}\,p\bigl((\exists\beta)(p(\beta\in \overline{L})\,\&\,p(\beta\in R_k(\gamma)\cap V(\gamma))\,\&\,p(\gamma\in R_1(\delta))\,\&\,p(\delta\in Q)=1)\bigr)\uparrow_{8} \]
\[ (\beta\to\alpha)\,p\overset{\uparrow}{f} \]
\[ \overset{8}{\downarrow}p\bigl((\exists\beta)(p(\beta\in \overline{L})\,\&\,p(\beta\in R_k(\gamma)\cap N(\gamma))\,\&\,p(\gamma\in R_1(\delta))\,\&\,p(\delta\in P)=1)\bigr)\uparrow_{9} \]
\[ (\beta\to\alpha)\,p\overset{\uparrow}{f}\,\overset{}{\,\downarrow_{9}}\ , \]
where \(\alpha_0\) is an arbitrary point of \(E_n\);
\[
L=\left(\bigcup_{\gamma\in P}N(\gamma)\right)\cup\left(\bigcup_{\beta\in Q}V(\beta)\right)\cup P\cup Q;
\]
\(A_f\) is the operator for computing the value of the function \(f(x_1,x_2,\ldots,x_n)\) at the point \(\alpha\);
\((\ldots \to \ldots)\) is the transfer operator; \([\ldots \Rightarrow \ldots]\) is the operator for entering a value in the table; \((\mathsf{H}\ldots)(p(\ldots)=1)\) is the operator for searching the table for an element possessing certain properties.
Let us denote the sets \(P, Q, L\) after the completion of the work of the algorithm of rank \(k\) on the function \(f(x_1,x_2,\ldots,x_n)\) by \(P_k(f), Q_k(f), L_k(f)\), respectively. It is easy to see that \(P_k(f)\) and \(Q_k(f)\) are such that \(P_k(f)\subseteq P(f)\), \(Q_k(f)\subseteq Q(f)\).
The answer to the question—whether the set \(P_k(f)\cup Q_k(f)\) is a resolving set for \(f(x_1,x_2,\ldots,x_n)\)—is the following.
Theorem 1. For any monotone function \(f(x_1,x_2,\ldots,x_n)\),
\[
P_k(f)\cup Q_k(f)=G(f,M)
\]
provided that \(k>(n-4)/4\).
Proof. Suppose that there exists a monotone function \(\varphi(x_1,x_2,\ldots,x_n)\) for which \(P_k(\varphi)\cup Q_k(\varphi)\) is not a resolving set, i.e. \(E_n\setminus L_k(\varphi)=\bar H\ne\Lambda\). We shall show that necessarily \(n\ge 4k+4\). Select in \(\bar H\) a subcube of maximal dimension \(R(\alpha,\beta)\), and let \(\|\alpha\|=q,\|\beta\|=l,\ q-l=r<n\). Then necessarily
\[
R_1(\alpha)\cap V(\alpha)\subseteq L_k(\varphi).
\]
Indeed, if there exists \(\gamma\in R_1(\alpha)\cap V(\alpha)\setminus L_k(\varphi)\), then \(R(\alpha,\beta)\) is not a maximal subcube belonging to \(H\), since either in \(R(\gamma,\beta)\) there is no point \(\delta\in L_k(\varphi)\), and then \(R(\gamma,\beta)\subset H\), or there is a \(\delta\in L_k(\varphi)\cap R(\gamma,\beta)\), with \(f(\delta)=0\) by virtue of the assumption \(\gamma\in L_k(\varphi)\), and this entails \(f(\beta)=0\), which contradicts \(R(\alpha,\beta)\subset H\). Analogously, one can show that
\[
R_1(\beta)\cap N(\beta)\subseteq L_k(\varphi).
\]
Consider the points \(\gamma_i\in R_1(\alpha)\cap V(\alpha)\) \((1\le i\le n-q)\) and \(\delta_j\in R_1(\beta)\cap N(\beta)\) \((1\le j\le l)\). Obviously, \(\varphi(\gamma_i)=1\), and \(\varphi(\delta_j)=0\), since \(R(\alpha,\beta)\subset \bar H\). For each point \(\gamma_i\) there must exist a point \(\varepsilon_i\in Q_k(\varphi)\) such that \(\gamma_i\in V(\varepsilon_i)\), and moreover \(\varepsilon_{i_1}\ne\varepsilon_{i_2}\) for \(i_1\ne i_2\), since otherwise \(\alpha\in L_k(\varphi)\). Analogously, from \(\varphi(\delta_j)=0\) follows the necessity of the existence of \(l\) points \(\sigma_j\in P_k(\varphi)\) such that \(\delta_j\in N(\sigma_j)\).
By the monotonicity of \(\varphi(x_1,x_2,\ldots,x_n)\), it is necessary that
\[
\varepsilon_i\in N(\sigma_j),\qquad \sigma_j\in V(\varepsilon_i)\qquad (1\le i\le n-q;\ 1\le j\le l).
\tag{*}
\]
Let the points \(\alpha\) and \(\beta\) have the form:
\[
\alpha=(\underbrace{1,1,\ldots,1}_{q},\ \underbrace{0,0,\ldots,0}_{n-q}),\qquad
\beta=(\underbrace{1,1,\ldots,1}_{l},\ \underbrace{0,0,\ldots,0}_{n-l})
\]
(this can always be achieved by a renaming of the variables).
Each point \(\sigma_j\) contains \((l-1)\) ones in the first \(l\) positions and not fewer than \((k+1)\) ones in the last \((n-q)\) positions, while each \(\varepsilon_i\) contains one one in the last \((n-q)\) positions and not more than \((l-k-1)\) ones in the first \(l\) positions. The necessity of the first conditions for \(\varepsilon_i\) and \(\sigma_j\) follows from the relations \(\gamma_i\in V(\varepsilon_i)\), \(\delta_j\in N(\sigma_j)\), while the necessity of the second follows from the requirement \(R(\alpha,\beta)\subset H\), for which it is necessary that \(\rho(\xi,\varepsilon_i)>k+1\), \(\rho(\xi,\sigma_j)>k+1\) for any point \(\xi\in R(\alpha,\beta)\) (in the sense of the algorithm of rank \(k\)).
The total number \(I\) of ones in the last \((n-q)\) positions among the \(l\) points \(\sigma_j\) must be
\[
I\ge (k+1)l.
\]
On the other hand,
\[
I\le (l-k-1)(n-q).
\]
Indeed, consider the \(s\) points \(\sigma_j\) in which a one stands in the \(m\)-th position \((q+1\le m\le n)\). There exists a point \(\varepsilon_{i_0}\) which also has a one in the \(m\)-th position. For the conditions \((*)\) to hold, it is necessary that the point \(\varepsilon_{i_0}\) have ones in all those \(s\) positions among the first \(l\) positions in which some one of the \(\sigma_j\) has a zero, i.e. it must be that \(s\le l-k-1\), whence \(I\le (l-k-1)(n-q)\). From the inequalities for \(I\) it follows that, for \(R(\alpha,\beta)\subset H\) to be fulfilled, one must have
\[
(k+1)l\le (l-k-1)(n-q).
\tag{**}
\]
Substituting \(q=l+r\) in \((**)\) and solving with respect to \(l\), we obtain that \((**)\) has a real solution when
\[
n-r\ge 4k+4.
\]
The theorem is proved.
Theorem 2. For any fixed \(k_0\) there exists a monotone function \(\varphi(x_1,x_2,\ldots,x_n)\) of \(n=4k_0+4\) variables such that, as a result of the operation of an algorithm of rank \(k_0\), it may turn out that
\[
E_n \setminus L_{k_0}(\varphi)\ne \Lambda .
\]
Proof. We construct the function \(\varphi(x_1,x_2,\ldots,x_n)\) in the following way: set \(\varphi(\xi)=0\) for all
\[
\xi\in D=B\cup\left(\bigcup_{\varepsilon_i\in B}N(\varepsilon_i)\right),
\]
where
\[
B=\{\varepsilon_i\}\quad (1\le i\le 2k_0+2)
\]
is the set of points indicated in Table 1.
Table 1
| \(x_1\ldots x_{k_0+1}\) | \(x_{k_0+2}\ldots x_{2k_0+2}\) | \(x_{2k_0+3}\ldots x_{3k_0+3}\) | \(x_{3k_0+4}\ldots x_n\) |
|---|---|---|---|
| \(01\ldots 11\) | \(11\ldots 11\) | \(11\ldots 11\) | \(00\ldots 00\) |
| \(10\ldots 11\) | \(11\ldots 11\) | \(11\ldots 11\) | \(00\ldots 00\) |
| \(\ldots\ldots\ldots\) | \(\ldots\ldots\ldots\) | \(\ldots\ldots\ldots\) | \(\ldots\ldots\ldots\) |
| \(11\ldots 01\) | \(11\ldots 11\) | \(11\ldots 11\) | \(00\ldots 00\) |
| \(11\ldots 10\) | \(11\ldots 11\) | \(11\ldots 11\) | \(00\ldots 00\) |
| \(11\ldots 11\) | \(01\ldots 11\) | \(00\ldots 00\) | \(11\ldots 11\) |
| \(11\ldots 11\) | \(10\ldots 11\) | \(00\ldots 00\) | \(11\ldots 11\) |
| \(\ldots\ldots\ldots\) | \(\ldots\ldots\ldots\) | \(\ldots\ldots\ldots\) | \(\ldots\ldots\ldots\) |
| \(11\ldots 11\) | \(11\ldots 01\) | \(00\ldots 00\) | \(11\ldots 11\) |
| \(11\ldots 11\) | \(11\ldots 10\) | \(00\ldots 00\) | \(11\ldots 11\) |
At all remaining points \(\beta\in E_n\setminus D\) set \(\varphi(\beta)=1\). It is obvious that the function \(\varphi(x_1,x_2,\ldots,x_n)\) thus defined is monotone, and moreover \(P(\varphi)=B\), while the set \(F=\{\delta_j\}\) of points indicated in Table 2 is such that \(F\subset Q(\varphi)\).
Table 2
| \(x_1\ldots x_{k_0+1}\) | \(x_{k_0+2}\ldots x_{2k_0+2}\) | \(x_{2k_0+3}\ldots x_{3k_0+3}\) | \(x_{3k_0+4}\ldots x_n\) |
|---|---|---|---|
| \(11\ldots 11\) | \(00\ldots 00\) | \(10\ldots 00\) | \(00\ldots 00\) |
| \(11\ldots 11\) | \(00\ldots 00\) | \(01\ldots 00\) | \(00\ldots 00\) |
| \(\ldots\ldots\ldots\) | \(\ldots\ldots\ldots\) | \(\ldots\ldots\ldots\) | \(\ldots\ldots\ldots\) |
| \(11\ldots 11\) | \(00\ldots 00\) | \(00\ldots 10\) | \(00\ldots 00\) |
| \(11\ldots 11\) | \(00\ldots 00\) | \(00\ldots 01\) | \(00\ldots 00\) |
| \(00\ldots 00\) | \(11\ldots 11\) | \(00\ldots 00\) | \(10\ldots 00\) |
| \(00\ldots 00\) | \(11\ldots 11\) | \(00\ldots 00\) | \(01\ldots 00\) |
| \(\ldots\ldots\ldots\) | \(\ldots\ldots\ldots\) | \(\ldots\ldots\ldots\) | \(\ldots\ldots\ldots\) |
| \(00\ldots 00\) | \(11\ldots 11\) | \(00\ldots 00\) | \(00\ldots 10\) |
| \(00\ldots 00\) | \(11\ldots 11\) | \(00\ldots 00\) | \(00\ldots 01\) |
Indeed, for any \(\delta\in F\) the following hold: 1) \(\varphi(\delta)=1\), since \(\delta\notin D\); 2) \(N(\delta)\subset D\), and therefore \(\varphi(\xi)=0\) for all \(\xi\in N(\delta)\). In addition, the point
\[
\mu=(\underbrace{1,1,\ldots,1}_{2k_0+2},\underbrace{0,0,\ldots,0}_{2k_0+2})
\]
belongs to \(Q(\varphi)\) (conditions analogous to conditions 1), 2) for elements of the set \(F\) are checked).
Let us show that, as a result of the operation of an algorithm of rank \(k_0\), when \(\alpha_0\ne\mu\), the value of the function \(\varphi(\mu)\) may remain unknown, i.e. \(\mu\in E_n\setminus L_{k_0}(\varphi)\).
Indeed: 1) if at some moment in the operation of the algorithm \(\alpha\in R_1(\mu)\), then there will always be found a point \(\gamma\in R_1(\alpha)\), distinct from \(\mu\), such that \(\gamma\in L\), since no point \(\xi\in R_1(\mu)\) belongs to \(P(\varphi)\cup Q(\varphi)\); 2) it is easy to verify that the conditions \(\rho(\varepsilon_i,\mu)=\rho(\delta_j,\mu)=k_0+2>k_0+1\) are satisfied for all \(\varepsilon_i\in E\), \(\delta_j\in F\), and for points \(\xi\in Q(\varphi)\setminus F\) it is easy to verify that
\[
R_1(\xi)\cap N(\mu)\cap R_{k_0+1}(\mu)=\Lambda .
\]
The theorem is proved.
Institute of Mathematics with Computing Center
Siberian Branch of the Academy of Sciences of the USSR
Received
5 VI 1962
CITED LITERATURE
- S. V. Yablonskii, Problems of Cybernetics, vol. 2, Moscow, 1959, p. 75.
- S. V. Yablonskii, Proceedings of the Mathematical Institute named after V. A. Steklov, Academy of Sciences of the USSR, 51, 1958, p. 5.
- A. A. Lyapunov, Problems of Cybernetics, vol. 1, Moscow, 1958, p. 46.