УДК 519.716
On Completeness of Multifunction Set of Rank 2
Sergey A. Badmaev* Ivan K. SharankhaeV
Institute of Mathematics and Informatics Buryat State University Smolin, 24a, Ulan-Ude, 670000
Russia
Received 05.04.2017, received in revised form 09.09.2017, accepted 10.05.2018 The problem of completeness of the set of functions from a finite set A to set of all subsets of A is studied. Functions of this kind are called multifunctions on A, they generalize the well-known class of functions of к-valued logic. The usual superposition adopted for functions of k-valued logic is not suitable for multifunctions. In the paper one of the types of superpositions that are commonly used for multifunctions is considered. We prove necessary and sufficient condition for the completeness of an arbitrary set of multifunctions on {0,1} which contains all unary Boolean functions with respect to given superposition.
Keywords: Boolean function, multifunction, rank, superposition, completeness set. DOI: 10.17516/1997-1397-2018-11-4-465-471.
Introduction
Discrete functions defined on a finite set A and taking values in the set of subsets of A are widely used in the mathematical modeling of data processing. Since recently, such functions are usually called multifunctions on the set A, and in the case where the set A = {0,1} the term 'incompletely defined Boolean function' is well known. It is obvious that there are two kinds of indeterminacy in the case A = {0,1}. For the first kind of indeterminacy on the tuples when the function value is not defined, the indeterminacy is understood as the ability to adopt both values, 0 and , i.e. the image of these tuples is the set {0,1}. Boolean functions with this kind of indeterminacy are considered, for example, in [1]. The second kind of indeterminacy is associated with the empty set, typically means taboo data and studied, for example, in [2].
In this paper we consider Boolean functions with two kinds of indeterminacy, following the general theory we call them multifunctions of rank 2. We investigate the problem of finding effective criterions for the completeness of sets of multifunctions. We prove a necessary and sufficient condition for the completeness of an arbitrary set of multifunctions of rank 2 which contains all unary Boolean functions with respect to superposition, which was studied, for example, in papers [3,4]. We note that this result was announced in [5].
1. Basic concepts and definitions
Let A = {0,1} and F = {0, {0}, {1}, {0,1}}. We define the following sets of functions:
* badmaevsa@mail.ru 1 goran5@mail.ru © Siberian Federal University. All rights reserved
Pi
,n = {f \f : A" ^ F}, Pi =U PI
Pin = {f \f : ^ F \{{0,1}}}, Pi
P--n = {f \f : An ^ F \{0}},
P-
= U Pi n,
n
UP-n
P2,n = {f\f e Pin and If= 1 for every a e An}, P2 = Up2n-
n
Functions from P2 are called Boolean functions, and functions from P; are called multifunc-tions on A. The cardinality of set A is called the rank of a multifunction. For the superposition
f (fi(xi,... , xm ), - - -,fn(xi, - - - , xm)),
where f,f1,---,fn e Pi, to define a multifunction g(x1,,,,, xm), following [3], [4], we define the values of the multifunction f on subset tuples of set A as follows: if (a1, - - -, am) e Am, then
g(ai, • • .,am)
n
ßi efi(an,.
u
ßi efi(ai,.
f (ß1,..., ßn) if the intersection is not empty, f (ßi,...,ßn) otherwise.
0
On tuples containing 0, the multifunction takes the value 0. This definition allows us to calculate the value of f (x1,..., xn) on arbitrary tuple ..., an) G Fn.
A multifunction en of dimension n is called a multifunction of projection by i-th argument, if for all elements a\,... ,an of A
en (ai,...,an) = {ai}.
For a set of multifunctions B its closure [B] is defined as follows:
1. B U{en}Ç [B].
2. Superposition f (f1(x1,... ,xm),..., fn(xi,... ,xm)) G [B] for all f,fi,...,fn G [B]. Every subset B Ç Pj such that B = [B] is called a partial ultraclone of rank 2. A partial
ultraclone K is called maximal, if there is no partial ultraclone K such that
k c Ki c Pj.
A set B is called complete in Pj if [B] = Pj.
Let Rs be an s-ary predicate defined on the set F. A multifunction f (xly... ,xn) on the set A preserves the predicate Rs if for any tuple
from Rs, the tuple
(aii, .. ., asi),.. ., (ain,. .., asn),
(f (aii, ..., ain), .. ., f (asi, .. ., asn))
belongs to Rs.
For simplicity we use the following notation: 0 ^ *, {0} ^ 0, {1} ^ 1, {0,1} ^ —, thus F = {*, 0,1, —}.
Consider the predicate
R
0 0 0 0 1 1 1 1 — a \
0 0 1 1 1 1 0 0 - ß
0 1 0 1 1 0 1 0 — Y
0 1 1 0 1 0 0 1 — s /
where in every column (afij S) among the elements a, в, j, S at least two are equal to *, and if one of the elements a, в, Y, S is equal to 0 or 1, then among the others there is no —. Pol(R) denotes the set of multifunctions which preserves the predicate R. The multifunction of P2 is defined by its values on binary tuples, the vector of values is written as a row or a column, and we shall assume that binary tuples are given in accordance with the natural order. For example, f = (0 * —1) means that f (0 0) = 0, f (0 1) = *, f (10) = —, f (11) = 1.
The multifunction which on all tuples is equal to * will be denoted by *.
2. The criterion of completeness
In this section we prove the completeness criterion for a set of multifunctions containing all unary Boolean functions.
Lemma 1. The sets P2 and P— U {*} are partial ultraclones of rank 2, which are not equal to P*2.
Proof. It is obvious that taking closure of these sets does not lead beyond these sets. □
Lemma 2. If for tuples (a1,...,an) and (в\,...,вп) from An f(ai,...,a„) = * and f (вь ...,вп) = —, then the set P2 U {f} is complete in P2 .
Proof. The proof completely coincides with the proof of an analogous statement from [6]. □
Corollary. The set P2 U {(*—)} is complete in P2 .
Further on, we need the following statements from [7].
Lemma 3. The set Pol(R) is a maximal partial ultraclone of rank 2.
Lemma 4. The following sets are equal to P2 : 1) [{(1*), (1—)}], 2) [{(*0), (—0)}], 5) [{(0—), ( —1), (0*)}], 4) [{(0—), ( —1), (*0)}].
The criterion of completeness is given by the following
Theorem. A set of multifunctions B containing all unary Boolean functions is complete if and only if B contains the following multifunctions:
1) fi not belonging to the set Pol(R),
2) f2 that takes value — on at least one tuple,
3) f3 that takes value *, but not on all tuples.
Proof. Necessity. Let {0,1, x,x} С B and B be complete in P2*. We shall prove by contradiction. If B С Pol(R), then [B] С Pol(R). We have a contradiction with Lemma 3 and completeness of the set B. If B does not contain a multifunction that takes value — on at least one tuple, then B С P2. Hence, [B] С P2 which is impossible in view of Lemma 1. If B does not contain a multifunction that takes value *, but not on all tuples, then B С P— U{*}. Thus [B] С P— U{*}, we have a contradiction with Lemma 1.
Sufficiency. It is obvious that
| a , a ' - }- ff x' x}] for every a G {0,1, -}. Now we note if you can get one of the multifunctions ^ ^ ^, (o) ' ( ^ ) ' ( 1 ) then B is
complete in view of Lemma 4.
Since /1 G Pol(R), there are tuples a1
f a1 \
al oj aj a4)t G R for every j, but f1
( a\,..., a^), where i G {1, 2, 3,4}, such that
-1
G R. We denote the matrix
V«4/
/ â1 \
V«4/
by M.
Note that all columns of the matrix M can be considered different, since we can identify the variables of the multifunction f1 corresponding to the same columns.
Let us prove that it suffices to consider the situation when for any j the tuple (a] aj2 aj a4)t belongs to
C =
000 0 , 0 , 1
0 ' 1 ' 0 011
11
1 0 0 , 1
00
10 0 1 -0 ' 1 ' -10
Obviously, if there are columns with the value * in the matrix M, then /i (M) also has the value *. Note that there can not be exactly one value * in the column /i(M), otherwise there will be a column in the matrix M with exactly one value *, which is impossible. It remains to consider the situation when there are exactly two values of * in the column /i(M), one value of — and
/ * \
one value of a, where a G {0,1}. Without loss of generality, we assume that /i(M) =
\ a J
It is obvious that in the matrix M the value * can occur only in the rows q;1 and a2. Moreover, if the value * occurs in the column with the number j, then a1 = a'2 = *, and a3, a| are not equal to *. Further, in each column with the number j, in which the value * occurs, we change
/ * \
the values a1 and a2 so that (aj, a2, a3, a|) G C. As a result, instead of the column
we get the column
( à \
Y
\ a )
\ a J
that also does not belong to R. Thus, we have proved that for any
j the tuple (a1 a2 aj a.4)t belongs to
C=
0 0 0 1 1 1 1 0
0, 0, 1, 1, 0, 1, 0, 1
0, 1, 0, 0, 1, 1, 0, 1
0 1 1 0 0 1 1 0
Without loss of generality, we can consider M
0 0
0 0
- \
" /
since
we can always add a fictitious variable to /1 and insert the missing column.
We prove that in the matrix M the columns equal to (0110)4 and (1001)4 can be replaced by some columns of M that are different from (0110)4 and (1001)4 such that if the matrix M1 is
2
3
3
1
1
Without loss of generality we assume that f1 (M) =
In the matrix M the column
obtained from M by replacing the column, then f1(M1) £ R. The column f1(M1) will represent some binary multifunction g(x,y), by this we prove the completeness of the set B. Since after replacing the columns (0110)4 and (1001)4 we get that g(x,y) is given by a superposition of the multifunction f1 with binary multifunctions from [B], we have g(x,y) £ [B]. Thus, the theorem will be proved.
We consider the case with the column (0110)4, the case with (1001)4 is analogous.
Suppose that among the values of the column fi(M) there are — and a, where a £ {0,1}.
—
a 73
V T4 J
(0110)4 is replaced by (0101)4. Then the column (—a.T3T4)t changes to (—aS3S4)t £ R. If g(x,y) = (—aS3S4) £ [B], then the set B is complete, since g(0,y) = (—a).
It remains to consider the cases when either one of the values of * is among the values of the column f1(M), or all values of this column belong to {0,1}. Two cases are discussed below, each of the remaining cases is similar to one of the two.
i * \
T2
Case 1. Let fi(M) = 2 , where T2,T3,T4 are not equal to * Taking into account
\T4 J
the case considered above, either each of t2,t3,t4 is equal to —, or each of t2,t3,t4 belongs to {0,1}. In the matrix M, the column (0110)t is replaced by (1111)t. Then, instead of the column (*T2T3T4)t, we obtain (o1T2T3o4)t. If exactly one value is equal to * from the values a1 and o4, then we replace the column (0110)t by (1111)t unchanged. If o1 = o4 = *, then the column
(0110)t is replaced by (----)t. As a result, we obtain the column (J1 62 S3 S4)t, in which
exactly one of the values J1, S2, S3, S4 is *, i. e. (J1 S2 S3 S4)t £ R. If g(x, y) = (J1 52 S3 J4) £ [B], then it is easy to obtain the multifunction g1(x,y) = (*101) from it. The set B is complete, since g1(x, —) = (1 — ). Thus, we further assume that the situation where exactly one value of four values is equal to * is obvious.
Let o1 and o4 are not equal to *. In the matrix M, the column (0110)t is replaced by (0101)t. Then instead of the column (* t2 t3 T4)t we obtain (*T2a3a4)t. If a3 = *, then the situation is obvious. If a3 = *, then the previous change of the column (0110)t is changed to (1100)t. As a result, instead of (*t2t3t4Y we obtain the column (o1t2 * t4)t £ R.
1
Case 2. Let f1(M) = 0 . In the matrix M, the column (0110)t is replaced by (0101)t.
0 t t Then instead of the column (1000)t we obtain (10a3a4)t. If exactly one value equals * from the
values o3 and a4 or at least one of the values a3 and a4 is —, then the situation is obvious.
We consider the cases when o3 and o4 belong to {0,1}. If o3 = o4, then either (1000)t remains unchanged, or instead of (1000)t we get (1011)t £ R. Let o3 = o4. Without loss of generality, we assume that o3 = 1 and o4 = 0. Then the previous change of the column (0110)t is changed to (0000)t. As a result, instead of (1000)t, we obtain the column (1o210)t. If o2 = 1, then (1110)t £ R. If o2 = 0, then the previous change of the column (0110)t is changed to (0011)t. As a result, the column (1000)t remains unchanged.
It remains to consider the case o3 = o4 = *. Recall that in the matrix M we replaced the column (0110)t by (0101)t. Then the change of column (0110)t is changed to (1111)t. As a result, instead of (1000)t, we obtain the column (o100*)t. If o1 = *, then the situation is obvious. Let o1 = *. Then the change of column (0110)t is changed to (0000)t. As a result, instead of (1000)t, we obtain the column (1o2 * 0)t. If o2 = *, then the situation is obvious. Let o2 = *.
So, we have
0 0 0 1 1 1 1 0 - 1 0
0 0 1 1 0 1 0 1 _ 0 , fl 0
0 1 0 0 1 1 0 1 - 0 0
0 1 1 0 0 1 1 0 - 0 0
/ 0 0 0 1 1 1 1 0 0 110 10
1 - i*\
0 - *
0 - *
1 - W
fl
If there is /3 £ {0,1} such that at least one of /1 (00011110,3), f1 (00110101,3), f1 (01100110/),
/i(01100110^) is —, then instead of the column (----)t it is easy to choose the column
(¿1S2S3S4)t, different from (0110)4 and (1001)4 such that
fl
/ 0 0 0 1 1 1 1 0 ôl \
0 0 110 10 1 ¿2
0 10 0 110 1
y 0 1 1 0 0 1 1 0 S4 J
G R,
since it contains the values — and a £ {0,1}. Otherwise, the column (0110)t is replaced by (----)t, we obtain
fl
/0001111 - -\ 0011010 - -0100110 - -0110011--
1 0
0 0
G R.
It remains to note that when we get the column / £ {(1000)t, (1011)t, (1110)t} instead of the column /1 (M) = (1000)t, then / represents a nonlinear binary Boolean function g(x,y). If g(x, y) £ [B], then [{g(x, y), X, 0,1}] = P2 is true. Hence, the set B is complete by Lemma 2. □
The first author was supported by RFBR (project 18-31-00020).
References
[1] V.V.Tarasov, Completeness criterion for partial logic functions, Problemy kibernetiki, 30(1975), 319-325 (in Russian).
[2] R.V.Freivald, Completeness criterion for partial functions of algebra logic and many-valued logics, Doklady AN SSSR, 167(1966), 1249-1250 (in Russian).
[3] S.A.Badmaev, I.K.Sharankhaev, Minimal partial ultraclones on a two-element set, Izvestiya Irk. Gos. Univ. Ser. Matematika, 9(2014), 3-9 (in Russian).
[4] V.I.Panteleyev, On Two maximal multiclones and partial ultraclones, Izvestiya Irk. Gos. Univ. Ser. Matematika, 5(2012), no. 4, 46-53 (in Russian).
[5] S.A.Badmaev, I.K.Sharankhaev, On some completeness criterion of multifunction set, International Conference Maltsev meeting, Novosibirsk, 2017, 139 (in Russian).
[6] V.I.Panteleyev, Special representations of sub-defined partial Boolean functions, Uchenie Zapiski Kazan. Gos. Univ. Ser. Fiziko-Matem. Nauki, 151(2009), no. 2, 114-119 (in Russian).
[7] S.A.Badmaev, On some maximal clone of partial ultrafunctions on a two-element set, Journal of SFU. Math. and Phys., 10(2017), no. 2, 140-145.
О полноте множества мультифункций ранга 2
Сергей А. Бадмаев Иван К. Шаранхаев
Бурятский государственный университет Смолина, 24а, Улан-Удэ, 670000 Россия
Исследуется проблема полноты множества функций, определенных на конечном множестве А и принимающих в качестве значений подмножества множества А. Функции такого вида называют мультифункциями на А, они обобщают хорошо известный класс функций к-значной логики. Суперпозиция в обычном смысле, принятая для функций к-значной логики, не подходит для работы с мультифункциями. В статье 'рассматривается один из видов суперпозиций, которые обычно используются для мультифункций. Доказано необходимое и достаточное условие полноты произвольного множества мультифункций на {0,1}, содержащего все одноместные булевы функции, относительно данной суперпозиции.
Ключевые слова: булева функция, мультифункция, ранг, суперпозиция, полное множество.