Notes on Monotone Recognition in Multi-Valued Grids
43 Mathematical Problems of Computer Science 52, 43--53, 2019.
UDC 519.7
Notes on Monotone Recognition in Multi-Valued Grids
Levon H. Aslanyan and Hasmik A. Sahakyan
Institute for Informatics and Automation Problems of NAS RA e-mail: [email protected], [email protected]
Abstract
A novel method of monotone recognition based on the partitioning of the grid into discrete structures isomorphic to binary cubes (called โcube-splitโ technique) was proposed in our recent work, and a theoretical level description of two algorithms /algorithmic schemes/ solving this problem was also introduced. This paper provides implementation details of those algorithms, as well as focuses on the recognition of monotone binary functions with a small number of units.
Keywords:
Monotone function recognition, multi-valued grid, cube-splitting. Introduction
Let ๐ฏ๐ฏ ๐๐+1๐๐ denote the ๐๐ -th Cartesian degree of the set ๐ฏ๐ฏ ๐๐+1 = {0,1, โฏ , ๐๐ } : ๐ฏ๐ฏ ๐๐+1๐๐ = {( ๐๐ , โฏ , ๐๐ ๐๐ )| ๐๐ ๐๐ โ ๐ฏ๐ฏ ๐๐+1 , ๐๐ = 1, โฏ , ๐๐ } , or, in other words, ๐ฏ๐ฏ ๐๐+1๐๐ is the set of vertices of the ๐๐ -dimensional ( ๐๐ + 1) -valued discrete grid. The total number of vertices of ๐ฏ๐ฏ ๐๐+1๐๐ is equal to ( ๐๐ + 1) ๐๐ . We consider a component-wise partial order โ โค โ on ๐ฏ๐ฏ ๐๐+1๐๐ defined in the following way: for arbitrary vertices ๐๐ = ( ๐๐ , โฏ , ๐๐ ๐๐ ) and ๐๐ = ( ๐๐ , โฏ , ๐๐ ๐๐ ) of ๐ฏ๐ฏ ๐๐+1๐๐ , ๐๐ precedes ๐๐ ( ๐๐ โค ๐๐ ) if and only if ๐๐ ๐๐ โค ๐๐ ๐๐ for ๐๐ = 1, โฏ , ๐๐ . Then, ( ๐ฏ๐ฏ ๐๐+1๐๐ , โค ) is a partially ordered set; we will use its Hasse diagram for geometrical interpretations. ๐๐ ( ๐ฅ๐ฅ , ๐ฅ๐ฅ , โฏ , ๐ฅ๐ฅ ๐๐ ): ๐ฏ๐ฏ ๐๐+1๐๐ โ {0,1} is called a binary function defined on ๐ฏ๐ฏ ๐๐+1๐๐ . We say that ๐๐ ( ๐ฅ๐ฅ , ๐ฅ๐ฅ , โฏ , ๐ฅ๐ฅ ๐๐ ) is a monotone function if for any two vertices ๐๐ , ๐๐ of ๐ฏ๐ฏ ๐๐+1๐๐ , ๐๐ โฅ ๐๐ implies: ๐๐ ( ๐๐ ) โฅ ๐๐ ( ๐๐ ) . The vertices of ๐ฏ๐ฏ ๐๐+1๐๐ , where ๐๐ takes the value โ1โ, are called units of the function. The set of units of ๐๐ is usually denoted by ๐๐ ๐๐ . The vertices of ๐ฏ๐ฏ ๐๐+1๐๐ , where ๐๐ takes the value โ0โ are called zeros of the function. ๐๐ โ ๐ฏ๐ฏ ๐๐+1๐๐ is called a lower unit of ๐๐ , if ๐๐ ( ๐๐ ) = 1 and ๐๐ ( ๐๐ ) =0 for every ๐๐ โ ๐ฏ๐ฏ ๐๐+1๐๐ less than ๐๐ . ๐๐ โ ๐ฏ๐ฏ ๐๐+1๐๐ is called an upper zero of ๐๐ , if ๐๐ ( ๐๐ ) = 0 and ๐๐ ( ๐๐ ) = 1 for every ๐๐ โ ๐ฏ๐ฏ ๐๐+1๐๐ greater than ๐๐ . otes on Monotone Recognition in-Multi-Valued Grids
44 Fig. 1 demonstrates the Hasse diagram of ๐ฏ๐ฏ , and a monotone binary function ๐๐ defined on ๐ฏ๐ฏ . Highlighted vertices (4,4,4), (4,4,3), (4,3,4), (3,4,4), (4,4,2), (4,3,3), (3,4,3), (3,3,4), (2,4,4), (4,3,2), (3,3,3), (2,4,3), (1,4,4), (1,4,3) are units of the function, where (4,3,2), (3,3,3), and (1,4,3) are its lower units. The rest of vertices of ๐ฏ๐ฏ are zeros of the function, and (4,4,1), (4,2,4), (3,4,2),(2,3,4), and (0,4,4) are its upper zeros. We consider the problem of query-based algorithmic identification/recognition of monotone binary functions defined on ๐ฏ๐ฏ ๐๐+1๐๐ . This problem is initially investigated by V. Korobkov and V. Alekseev, but also, consecutively, by many other authors [1-4]. For ๐๐ = 1 , this is the case of ordinary monotone Boolean functions defined on the binary cube ๐ธ๐ธ ๐๐ , ๐ธ๐ธ ๐๐ ={( ๐ผ๐ผ , โฏ , ๐ผ๐ผ ๐๐ )| ๐ผ๐ผ ๐๐ โ {0,1}, ๐๐ = 1, โฏ , ๐๐ } . Hanselโs chain-splitting technique of ๐ธ๐ธ ๐๐ [5] is a well-known effective tool for monotone Boolean function recognition. The outline of the algorithm is as follows: the set of vertices of the binary cube is partitioned into disjoint chains of different lengths (there are a total of ๐ถ๐ถ ๐๐โ๐๐ / chains in the ๐๐ -dimensional cube). A key property of the Hanselโs chains is that once the function values are known for all the vertices in all the chains of length ๐๐ , then the function values, inferable by monotonicity, are unknown for at most two vertices in each chain of the next length ๐๐ + 2 . The maximum number of queries to recognize the monotone Boolean function defined on the ๐๐ -dimensional cube is ๐ถ๐ถ ๐๐โ๐๐ / + ๐ถ๐ถ ๐๐โ๐๐ / . Fig. 1. Monotone function defined on ๐ฏ๐ฏ . An extension of this technique to the case of multi-valued grids and monotone binary functions is obtained in [2-3]. In [2], V. Alekseev developed the algorithm ๐๐ for recognition of a monotone binary function defined on ๐ฏ๐ฏ ๐๐ ๐๐ โฏ๐๐ ๐๐ = ๐ฏ๐ฏ ๐๐ ร ๐ฏ๐ฏ ๐๐ ร โฏ ร ๐ฏ๐ฏ ๐๐ ๐๐ , ( ๐ฏ๐ฏ ๐๐ ๐๐ = {0,1, โฏ , ๐๐ โ ๐๐ = 1, โฏ , ๐๐ ), which, in some sense, tries to generalize G.Hanselโs algorithm. [2] proved that: ๐๐ ( ๐๐ ) ๐๐ ( ๐๐ ๐๐๐๐๐๐ ) โค โ๐๐๐๐๐๐ ( ๐๐ โ โ , . Aslanyan and H. Sahakyan
45 Where ๐๐ ( ๐๐ ) denotes the complexity of ๐๐ , and ๐๐ ( ๐๐ ๐๐๐๐๐๐ ) is the complexity of the optimal algorithm ๐๐ ๐๐๐๐๐๐ , ๐๐ = ๐๐๐๐๐ฅ๐ฅ๐๐ ๐๐ . It is also found that: ๐๐ ( ๐๐ ๐๐๐๐๐๐ ) โฅ | ๐๐ | + | ๐๐ | and ๐๐ ( ๐๐ ) โค | ๐๐ | + โ๐๐๐๐๐๐ ๐๐โ โ | ๐๐ | , where ๐๐ and ๐๐ are the 2 sets of vertices in the middle layer area of ๐ฏ๐ฏ ๐๐ ๐๐ โฏ๐๐ ๐๐ : ๐๐ = ๏ฟฝ ( ๐๐ , โฏ , ๐๐ ๐๐ ) โ ๐ฏ๐ฏ ๐๐ ๐๐ โฏ๐๐ ๐๐ โถ ๐๐ + โฏ + ๐๐ ๐๐ = ๏ฟฝ โ ( ๐๐ ๐๐ โ ๐๐๐๐=1 ๏ฟฝ๏ฟฝ , ๐๐ = ๏ฟฝ ( ๐๐ , โฏ , ๐๐ ๐๐ ) โ ๐ฏ๐ฏ ๐๐ ๐๐ โฏ๐๐ ๐๐ โถ ๐๐ + โฏ + ๐๐ ๐๐ = ๏ฟฝ โ ( ๐๐ ๐๐ โ ๐๐๐๐=1 ๏ฟฝ + 1 ๏ฟฝ . In case of ๐ฏ๐ฏ ๐๐+1๐๐ the sets in the two middle layers are: ๐๐ = ๏ฟฝ ( ๐๐ , โฏ , ๐๐ ๐๐ ) โ ๐ฏ๐ฏ ๐๐+1๐๐ โถ ๐๐ + โฏ + ๐๐ ๐๐ = ๏ฟฝ ๐๐โ๐๐2 ๏ฟฝ๏ฟฝ , ๐๐ = ๏ฟฝ ( ๐๐ , โฏ , ๐๐ ๐๐ ) โ ๐ฏ๐ฏ ๐๐+1๐๐ โถ ๐๐ + โฏ + ๐๐ ๐๐ = ๏ฟฝ ๐๐โ๐๐2 ๏ฟฝ + 1 ๏ฟฝ , and consequently, the estimate of complexity of the algorithm ๐๐ on ๐ฏ๐ฏ ๐๐+1๐๐ will be: ๐๐ ( ๐๐ ) โค | ๐๐ | + โ๐๐๐๐๐๐ ๐๐โ โ | ๐๐ | . A recent novel method of the monotone recognition based on a partitioning of the grid into discrete structures isomorphic to binary cubes (called โcube-splitโ technique) is proposed in [6], and two algorithms /algorithmic schemes/ solving this problem are also introduced. This paper provides implementation details of these algorithms, as well as focuses on the recognition of monotone binary functions with a small number of units. The paper is organized as follows: Section 2 introduces the cube-splitting technique. Section 3 provides the implementation framework of these algorithmic schemes. Section 4 addresses some particular cases with a small number of units that comes from applications. The Cube-Splitting Technique
In this section we introduce the cube-splitting technique of recognition of monotone binary functions [6]. Two homogeneous areas inside the ๐ฏ๐ฏ ๐๐+1๐๐ are defined in the following way: - upper homogeneous area ๐ป๐ป๏ฟฝ , - this is the set of all โupperโ elements of ๐ฏ๐ฏ ๐๐+1๐๐ , i.e., elements with all-coordinate values โฅ ๐๐ /2 ; - lower homogeneous area ๐ป๐ป๏ฟฝ , โ this is the set of all โlowerโ elements, i.e., elements with all-coordinate values โค ๐๐ /2 . It is clear that: ๏ฟฝ๐ป๐ป๏ฟฝ๏ฟฝ = ๏ฟฝ๐ป๐ป๏ฟฝ๏ฟฝ = ๏ฟฝ ( m+12 ) n for odd ๐๐ ,( ๐๐2 + 1) ๐๐ for even ๐๐ . The following results were introduced in [6]. (1) ๐ฏ๐ฏ ๐๐+1๐๐ can be split into ๏ฟฝ๐ป๐ป๏ฟฝ๏ฟฝ disjoint discrete structures isomorphic to binary cubes: otes on Monotone Recognition in-Multi-Valued Grids ๐ฏ๐ฏ ๐๐+1๐๐ = โฐ โช โฏ โช โฐ | ๐ป๐ป๏ฟฝ | , where every โฐ ๐๐ contains exactly one vertex from ๐ป๐ป๏ฟฝ , while the remaining vertices of โฐ ๐๐ can be determined uniquely by this vertex through the complementarity interchanges of the coordinate values. โฐ ๐๐ โฉ โฐ ๐๐ = โ , if ๐๐ โ ๐๐ . The procedure is called โcube-splittingโ of ๐ฏ๐ฏ ๐๐+1๐๐ . (2) The โcube-splittingโ of ๐ฏ๐ฏ ๐๐+1๐๐ keeps the monotonicity property in the following way: let ๐น๐น be a monotone binary function defined on ๐ฏ๐ฏ ๐๐+1๐๐ , then either ๐๐ ๐น๐น โฉ โฐ ๐๐ is empty, or it satisfies the binary monotonicity property, i.e., for arbitrary vertex ๐๐ of ๐๐ ๐น๐น โฉ โฐ ๐๐ , all vertices of โฐ ๐๐ greater than ๐๐ , also belong to ๐๐ ๐น๐น โฉ โฐ ๐๐ (for ๐๐ = 1, โฏ , ๐๐ ). By integrating (1) and (2), a novel monotone recognition method has been proposed in [6]. For each vertex ๐๐ ๐๐ = ( ๐ฃ๐ฃ ๐๐ , โฏ , ๐ฃ๐ฃ ๐๐ ๐๐ ) of ๐ป๐ป๏ฟฝ we compose the following set: โฐ ๐๐ ๐๐ = {( ๐๐ , โฏ , ๐๐ ๐๐ ) โ ๐ฏ๐ฏ ๐๐+1๐๐ | ๐๐ ๐๐ โ { ๐ฃ๐ฃ ๐๐ ๐๐ , ๐๐ โ ๐ฃ๐ฃ ๐๐ ๐๐ } for all ๐๐ , โค ๐๐ โค ๐๐ } , and call โฐ ๐๐ ๐๐ the vertical equivalence class of ๐๐ ๐๐ . โฐ ๐๐ ๐๐ contains a unique vertex from ๐ป๐ป๏ฟฝ , - this is the vertex with all coordinates โฅ ๐๐ /2 ; and contains a unique vertex from ๐ป๐ป๏ฟฝ , - this is the vertex with all coordinates โค ๐๐ /2 . The remaining vertices of โฐ ๐๐ ๐๐ can be obtained by component value inversions (with respect to ๐๐ ). โฐ ๐๐ ๐๐ โฉ โฐ ๐๐ ๐๐ = โ for different vertices ๐๐ ๐๐ and ๐๐ ๐๐ of ๐ป๐ป๏ฟฝ . In this manner ๐ฏ๐ฏ ๐๐+1๐๐ can be split into ๏ฟฝ๐ป๐ป๏ฟฝ๏ฟฝ disjoint sets /equivalence classes/ uniquely defined by the elements of ๐ป๐ป๏ฟฝ (or
๐ป๐ป๏ฟฝ ). The number of elements of โฐ ๐๐ ๐๐ varies between and ๐๐ depending on the number of components of ๐๐ ๐๐ differing from ๐๐ /2 . Indeed, if ๐๐ denotes the number of components of ๐๐ ๐๐ differing from ๐๐ /2 , i.e. ๐๐ = ๏ฟฝ { ๐ฃ๐ฃ ๐๐ ๐๐ | ๐ฃ๐ฃ ๐๐ ๐๐ โ ( ๐๐ โ ๐ฃ๐ฃ ๐๐ ๐๐ )} ๏ฟฝ , then ๏ฟฝโฐ ๐๐ ๐๐ ๏ฟฝ = 2 ๐๐ . Notice that ๐๐ = ๐๐ always for odd ๐๐ . For example, Fig. 2 demonstrates โฐ ( , , ) , โฐ ( , , ) and โฐ ( , , ) in ๐ฏ๐ฏ . Fig. 2. Examples of cubes in a cube split of ๐ฏ๐ฏ .
322 222 122231 232 233 224203302 241311 321331 111 121131 102 142 113123 133313323 333 243201 342 444443 434 344442 433 424 343 334 244432 423 324 234422 332 242 223 144 044134143314404413341431440 441 414430 431 340 412 403 304 214 124 043 034024033114042204132213141303312240402330411420410400 401 320 230 221 140 212 041 032 104 023 014004013022103031112040202130211220301310300 210 120 030 021 012 003002011020101110200 100 010 001000 . Aslanyan and H. Sahakyan
47 For every vertex ( ๐๐ , โฏ , ๐๐ ๐๐ ) of the equivalence class โฐ ๐๐ ๐๐ , we distinguish its sub-list of all coordinates accepting a value differing from ๐๐ /2 , let this be the list: ( ๐๐ ๐ ๐ , โฏ , ๐๐ ๐ ๐ ๐๐ ) . This list exactly fits the list of all coordinates of ๐๐ ๐๐ that are different from ๐๐ /2 . The reminder part of coordinates accepts the only value ๐๐ /2 over the ๐๐ ๐๐ , as well as over the whole set of vertices of โฐ ๐๐ ๐๐ . Now, identifying ( ๐๐ ๐ ๐ , โฏ , ๐๐ ๐ ๐ ๐๐ ) with the binary sequence ๐ฝ๐ฝ = ( ๐ฝ๐ฝ , โฏ , ๐ฝ๐ฝ ๐๐ ) of length ๐๐ such that ๐ฝ๐ฝ ๐๐ = 1 if and only if ๐๐ ๐ ๐ ๐๐ > ๐๐ /2 , - we map ( ๐๐ , โฏ , ๐๐ ๐๐ ) into the vertex ๐ฝ๐ฝ = ( ๐ฝ๐ฝ , โฏ , ๐ฝ๐ฝ ๐๐ ) of the ๐๐ -dimensional binary cube ๐ธ๐ธ ๐๐ . In this manner, we obtain a 1-1 mapping ๐๐ : โฐ ๐๐ ๐๐ โถ ๐ธ๐ธ ๐๐ . The vertex of โฐ ๐๐ ๐๐ with all coordinates < ๐๐ /2 is mapped into the vertex (0, โฏ ,0) of ๐ธ๐ธ ๐๐ (on the 0-th layer); the vertex of โฐ ๐๐ ๐๐ with all coordinates > ๐๐ /2 is mapped into the vertex (1, โฏ ,1) of ๐ธ๐ธ ๐๐ (on the ๐๐ -th layer); and, in general, all vertices of โฐ ๐๐ ๐๐ , which have ๐๐ coordinates > ๐๐ /2 (consequently, ๐๐ โ ๐๐ coordinates < ๐๐ /2 ), are mapped into the vertices of ๐๐ -th layer of ๐ธ๐ธ ๐๐ . Hereafter, all structures (vertices, chains, cubes, functions, etc.) in ๐ฏ๐ฏ ๐๐+1๐๐ will be referred to as origin ; and all structures (vertices, chains, cubes, functions, etc.) in binary cubes will be referred to as induced . For example, the induced binary cubes for โฐ ( , , ) , โฐ ( , , ) and โฐ ( , , ) , are given in Figure 3, (a), (b), and (c), correspondingly. (a) (b) (c) Fig. 3. The Algorithmic Framework
Let ๐น๐น be a monotone binary function (which should be recognized with the help of an oracle), defined on ๐ฏ๐ฏ ๐๐+1๐๐ , and let ๐๐ ๐น๐น denote its set of units of function ๐น๐น . Algorithm 1
In a theoretical level description, the algorithm implements the following steps: 1.
Apply the cube-splitting on ๐ฏ๐ฏ ๐๐+1๐๐ and let โฐ , โฏ , . โฐ | ๐ป๐ป๏ฟฝ | be the equivalence classes of the upper homogeneous elements.
000 001010100 101110 111 011 otes on Monotone Recognition in-Multi-Valued Grids
48 2.
Compose the corresponding induced binary cube ๐ธ๐ธ ๐๐ for every โฐ ๐๐ . 3. Apply the Hanselโs algorithm to recognize the induced Boolean function ๐๐ ๐๐ , defined on ๐ธ๐ธ ๐๐ as follows: for every ๐ฝ๐ฝ โ ๐ธ๐ธ ๐๐ , ๐๐ ๐๐ ( ๐ฝ๐ฝ ) = 1 if and only if ๐น๐น ( ๐๐ ) = 1 , where ๐๐ is the origin of ๐ฝ๐ฝ in ๐ฏ๐ฏ ๐๐+1๐๐ (for ๐๐ = 1, โฏ , ๏ฟฝ๐ป๐ป๏ฟฝ๏ฟฝ ) . 4. Transfer the recognition results into the ๐ฏ๐ฏ ๐๐+1๐๐ . Implementation
We consider the lexicographic ordering of the vertices of ๏ฟฝ๐ป๐ป๏ฟฝ๏ฟฝ , where the smallest numerical values of coordinates are coming first. Thus, the smallest vertex of
๐ป๐ป๏ฟฝ in this ordering is ( m+12 , m+12 , โฏ , m+12 ) if ๐๐ is odd, and it is the vertex ( ๐๐2 , ๐๐2 , โฏ , ๐๐2 ) , if ๐๐ is even; the greatest vertex is ( ๐๐ , ๐๐ , โฏ , ๐๐ ) . Henceforth, we will assume that ๐ป๐ป๏ฟฝ = { ๐๐ , ๐๐ , โฏ , ๐๐ ๐ป๐ป๏ฟฝ } is the lexicographically ordered set of upper homogeneous elements. The cube splitting of ๐ฏ๐ฏ ๐๐+1๐๐ assumes that we compose for every vertex ๐๐ ๐๐ = ( ๐ฃ๐ฃ ๐๐ , โฏ , ๐ฃ๐ฃ ๐๐ ๐๐ ) of ๐ป๐ป๏ฟฝ its vertical equivalence class โฐ ๐๐ ๐๐ , and the corresponding induced binary cube to this. But at this point we do not need to compose and keep (and further to map to the binary cube) the whole set โฐ ๐๐ ๐๐ ; instead, with every vertex ๐๐ ๐๐ = ( ๐ฃ๐ฃ ๐๐ , โฏ , ๐ฃ๐ฃ ๐๐ ๐๐ ) of ๐ป๐ป๏ฟฝ we will keep the following parameters: - the number ๐๐ ๐๐ ๐๐ of coordinates of ๐๐ ๐๐ differing from ๐๐ /2 , - this will determine the size of the induced binary cube ๐ธ๐ธ ๐๐ . When ๐๐ ๐๐ , that is the issue, is evident, we will just use the notion ๐๐ for this, - the positions of coordinates differing from ๐๐ /2 , we denote it by the vector ๐๐ ๐๐โ , and - the values of coordinates differing from ๐๐ /2 , we denote as the vector ๐๐ ๐๐ . ๐๐ , ๐๐ ๐๐โ , and ๐๐ ๐๐ will allow the easy reverse mapping, ๐ ๐ ๐๐ โถ ๐ธ๐ธ ๐๐ โถ โฐ ๐๐ ๐๐ , i.e., will allow to recover โฐ ๐๐ ๐๐ . For example, with the vertex (2,3,4) of ๐ฏ๐ฏ we keep: - numerical value 2, - this is the number of its coordinates differing from ๐๐ /2 , - indexes 2,3 - these are the coordinate indexes, where the values are differing from ๐๐ /2 , - and 3,4 are the values at the coordinates 2 and 3. โฐ ( , , ) is mapped into the 2-dimensional binary cube ๐ธ๐ธ according to 2 nd and 3 rd coordinates of (2,3,4), and the accompanying vectors are ๐๐ ๐๐โ = (2,3) and ๐๐ ๐๐ = (3,4) . The reverse mapping is as follows: given the pair (2,3,4) and ๐ธ๐ธ or alternatively, ๐๐ ๐๐โ , ๐๐ ๐๐ and ๐ธ๐ธ . Consider an arbitrary vertex of ๐ธ๐ธ , for example, let ๐ฝ๐ฝ๏ฟฝ = (1,0) , then it follows that the origin of ๐ฝ๐ฝ๏ฟฝ in โฐ ( , , ) is ๐๐๏ฟฝ = (2,3,0) , because: - the first component, missing at ๐๐ ๐๐โ , must be ๐๐ /2 , that is, ๐๐ = 2 , - the second component should not be inverted in accord to ๐ฝ๐ฝ๏ฟฝ = (1,0) , and, thus, ๐๐ = 3 , - the third component should be inverted, and thus, ๐๐ = 4 โ . In general, let ( ๐ฝ๐ฝ , โฏ , ๐ฝ๐ฝ ๐๐ ) be an arbitrary vertex of the ๐๐ -dimensional binary cube ๐ธ๐ธ ๐๐ , and let ( ๐ฃ๐ฃ , โฏ , ๐ฃ๐ฃ ๐๐ ) be the upper homogeneous vector of the origin of ๐ธ๐ธ ๐๐ , and suppose that ๐ ๐ , โฏ , ๐ ๐ ๐๐ are its coordinates differing from ๐๐ /2 . Then, the origin of ( ๐ฝ๐ฝ , โฏ , ๐ฝ๐ฝ ๐๐ ) is ( ๐๐ , โฏ , ๐๐ ๐๐ ) , where: . Aslanyan and H. Sahakyan ๐๐ ๐ ๐ ๐๐ = ๏ฟฝ ๐ฃ๐ฃ ๐ ๐ ๐๐ ๐๐๐๐ ๐ฝ๐ฝ ๐๐ = 1 ๐๐ โ ๐ฃ๐ฃ ๐ ๐ ๐๐ ๐๐๐๐ ๐ฝ๐ฝ ๐๐ = 0 for ๐๐ = 1, โฏ , ๐๐ (1) ๐๐ ๐๐ = ๐๐ /2 for ๐๐ โ ๐ ๐ , โฏ , ๐ ๐ ๐๐ . Implementation Details of Step 3 and Step 4
In this part, Algorithm 1 recognizes monotone Boolean functions in the ๏ฟฝ๐ป๐ป๏ฟฝ๏ฟฝ number of binary cubes of different sizes (some of the functions might be identically 0, but we do not know this fact beforehand), by applying the Hanselโs algorithm. Also at this step, we will not deal with the binary cubes themselves, and we will be using the chain algebras, and therefore, we have to map (by the reverse mapping) all induced structures (vertices, functions, chains, etc.) into their origins in ๐ฏ๐ฏ ๐๐+1๐๐ . For example, consider some monotone Boolean function ๐๐ ๐๐ on a ๐๐ -dimensional binary cube. If we obtain the value ๐๐ ๐๐ ( ๐ฝ๐ฝ๏ฟฝ ) on some vertex ๐ฝ๐ฝ๏ฟฝ (in the process of the Hanselโs algorithm), and know its origin upper homogeneous vertex ( ๐ฃ๐ฃ , โฏ , ๐ฃ๐ฃ ๐๐ ) and also its coordinates differing from ๐๐ /2 (let they be ๐ ๐ , โฏ , ๐ ๐ ๐๐ ), then we can set that ๐น๐น ( ๐๐๏ฟฝ ) = ๐๐ ๐๐ ๏ฟฝ๐ฝ๐ฝ๏ฟฝ๏ฟฝ , where the coordinate values of ๐๐๏ฟฝ are defined in accord to (1). Similarly, we can map chains from the induced binary cubes into the ๐ฏ๐ฏ ๐๐+1๐๐ . For example, the maximum length chain <(000), (100), (110), (111)> in the cube in Figure 2 (a) (which is induced to โฐ ( , , ) ), is mapped to the origin chain <(101), (301), (341), (343)> in ๐ฏ๐ฏ ๐๐+1๐๐ . Upon receipt of the oracleโs response for a given vertex of the binary cube - the response is mapped into the origin vertex of ๐ฏ๐ฏ ๐๐+1๐๐ . Certainly, the response value could also be extended by the monotonicity property to the other relevant vertices of ๐ฏ๐ฏ ๐๐+1๐๐ . But in this research we prefer and emphasize the opportunity of the parallel implementation of the recognition algorithms in all the induced binary cubes, and so we keep them as separate nonintersecting processes. Small Number of Units
Note that Algorithm 1 is worth applying when a large number of unit vertices of the monotone function appear in the upper homogeneous area
๐ป๐ป๏ฟฝ . However, in some cases, mostly coming from applications, the function to be recognized has a small number of unit vertices in the upper area
๐ป๐ป๏ฟฝ , or its complement has a small number of zero vertices in the lower homogeneous area
๐ป๐ป๏ฟฝ . In the latter case we can recognize the complement of the monotone function. For this reason, the following points will be taken into account: - โฐ ๐๐ ๐๐ can be defined for each vertex of ๐ป๐ป๏ฟฝ (obviously we will obtain the same set). In the example given in Figure 2 the highlighted sets of
๐ป๐ป๏ฟฝ will demonstrate โฐ ( , , ) , โฐ ( , , ) and โฐ ( , , ) , as well. - The mapping ๐๐ : โฐ ๐๐ ๐๐ โถ ๐ธ๐ธ ๐๐ will be defined as follows: for every vertex ( ๐๐ , โฏ , ๐๐ ๐๐ ) of โฐ ๐๐ ๐๐ let ( ๐๐ ๐ ๐ , โฏ , ๐๐ ๐ ๐ ๐๐ ) denote its subsequence with all coordinates differing from ๐๐ /2 . Identify ( ๐๐ ๐ ๐ , โฏ , ๐๐ ๐ ๐ ๐๐ ) with the binary sequence ๐ฝ๐ฝ = ( ๐ฝ๐ฝ , โฏ , ๐ฝ๐ฝ ๐๐ ) of length ๐๐ such that ๐ฝ๐ฝ ๐๐ = 1 if and only if ๐๐ ๐ ๐ ๐๐ < ๐๐ /2 . The vertex of โฐ ๐๐ ๐๐ with all coordinate values < ๐๐ /2 is mapped into the otes on Monotone Recognition in-Multi-Valued Grids
50 vertex (1, โฏ ,1) of ๐ธ๐ธ ๐๐ , - this is on the ๐๐ -th layer; the vertex of โฐ ๐๐ ๐๐ with all coordinate values < ๐๐ /2 is mapped into the vertex (0, โฏ ,0) of ๐ธ๐ธ ๐๐ , - this is on the -th layer; and, in general, all vertices of โฐ ๐๐ ๐๐ which have ๐๐ coordinates < ๐๐ /2 (consequently, ๐๐ โ ๐๐ coordinates > ๐๐ /2 ) are mapped into the vertices of ๐๐ -th layer of ๐ธ๐ธ ๐๐ . - The reverse mapping:
๐ ๐ ๐๐ : ๐ธ๐ธ ๐๐ โถ โฐ ๐๐ ๐๐ will be implemented as follows: let ( ๐ฝ๐ฝ , โฏ , ๐ฝ๐ฝ ๐๐ ) be an arbitrary vertex of the ๐๐ -dimensional binary cube ๐ธ๐ธ ๐๐ , and let ( ๐ฃ๐ฃ , โฏ , ๐ฃ๐ฃ ๐๐ ) be the lower homogeneous vector of the origin of ๐ธ๐ธ ๐๐ , where ๐ ๐ , โฏ , ๐ ๐ ๐๐ are coordinates differing from ๐๐ /2 . Then the origin of ( ๐ฝ๐ฝ , โฏ , ๐ฝ๐ฝ ๐๐ ) is ( ๐๐ , โฏ , ๐๐ ๐๐ ) , where: ๐๐ ๐ ๐ ๐๐ = ๏ฟฝ ๐ฃ๐ฃ ๐ ๐ ๐๐ ๐๐๐๐ ๐ฝ๐ฝ ๐๐ = 0 ๐๐ โ ๐ฃ๐ฃ ๐ ๐ ๐๐ ๐๐๐๐ ๐ฝ๐ฝ ๐๐ = 1 for ๐๐ = 1, โฏ , ๐๐ (2) ๐๐ ๐๐ = ๐๐ /2 for ๐๐ โ ๐ ๐ , โฏ , ๐ ๐ ๐๐ . Constraints
Consider the application, which is the generalized model of the known association rule mining - in case where in addition to the presence or absence of elements in itemsets, the number of their repetitions is also included. The details are given in [7]. Here we highlight the following constraints/restrictions that may appear with this problem. In terminology of supermarket basket analysis, here we distinguish two postulations: some item exists in the current basket, and second, which is the actual number of that item in the basket. Let ๐๐ ๐๐ be the repetition number of the ๐๐ -th element, for ๐๐ = 1, โฏ , ๐๐ . (1) the classic case is the (0,1) vector of item indicators in baskets, basket inventory. (2) ๐๐ + โฏ + ๐๐ ๐๐ โค ๐๐ , - the summary number of elementsโ repetitions (the basket volume) is restricted by ๐๐ , (3) ๐๐ ๐๐ โค ๐๐ ๐๐ , -the repetition number of each ๐๐ ๐๐ is restricted by ๐๐ ๐๐ , the item purchase restriction. In these cases, the problem deals with the recognition of monotone functions, where: (2) the zeros of the function appear in lower layers of the multivalued grid, (3) the zeros of the function appear in some homogeneous bottom area of the grid. In both cases it is more efficient to use the second algorithmic scheme of [6]. The idea is as follows. Let ๐น๐น be a monotone function defined on ๐ฏ๐ฏ ๐๐+1๐๐ . First we note that ๐๐ ๐น๐น โฉ ๐ป๐ป๏ฟฝ satisfies the monotonicity property, i.e., for arbitrary ๐๐ , ๐๐ of ๐ป๐ป๏ฟฝ , if ๐๐ โฅ ๐๐ then ๐น๐น ( ๐๐ ) โฅ ๐น๐น ( ๐๐ ) . Algorithm 2 Firstly identify the part of the monotone function belonging to
๐ป๐ป๏ฟฝ by one of the known resources of identification of monotone functions, and thus, reduce the size of the multi-valued grid. As a result we obtain ๐๐ ๐น๐น โฉ ๐ป๐ป๏ฟฝ . 2. Apply the cube-splitting according to ๐๐ ๐น๐น โฉ ๐ป๐ป๏ฟฝ , that considers the vertical equivalence classes โฐ , โฏ , . โฐ | ๐๐ ๐น๐น โฉ๐ป๐ป๏ฟฝ | only for the vertices of ๐๐ ๐น๐น โฉ ๐ป๐ป๏ฟฝ . 3. Implement 2-4 Steps of Algorithm 1. The algorithm can easily be adjusted for the identification of the complement of ๐น๐น in ๐ฏ๐ฏ ๐๐+1๐๐ . . Aslanyan and H. Sahakyan Resources
To implement Step 1 of Algorithm 2 we have the following resources of identification of monotone functions in
๐ป๐ป๏ฟฝ . a) The first resource is the known algorithm by V. Alexeyev [2]. We notice that applying the algorithm to identification of monotone functions on
๐ป๐ป๏ฟฝ (instead of ๐ฏ๐ฏ ๐๐+1๐๐ ) is a significant reduction of the work. The complexity of the algorithm ๐๐ on ๐ป๐ป๏ฟฝ will be: ๐๐ ( ๐๐ ) โค | ๐๐ | + ๏ฟฝ๐๐๐๐๐๐ ( ๐๐2 ) ๏ฟฝ โ | ๐๐ | , where ๐๐ and ๐๐ are the middle layers of ๐ป๐ป๏ฟฝ , defined accordingly. b) The second resource that we may use, is - applying the cube-splitting itself for identifying the function on
๐ป๐ป๏ฟฝ . We define the upper homogeneous area
๐ป๐ป๏ฟฝ๏ฟฝ of ๐ป๐ป๏ฟฝ ,: this is the set of all elements of ๐ฏ๐ฏ ๐๐+1๐๐ with all coordinate values โฅ ๐๐ /4 ; then 1. Apply the cube-splitting on
๐ป๐ป๏ฟฝ and find โฐ , โฏ , . โฐ ๐ป๐ป๏ฟฝ๏ฟฝ , equivalence classes according to the elements of
๐ป๐ป๏ฟฝ๏ฟฝ . 2.
Compose the corresponding induced binary cube ๐ธ๐ธ ๐๐ for every โฐ ๐๐ . 3. Apply the Hanselโs algorithm to recognize the induced Boolean function ๐๐ ๐๐ , defined on ๐ธ๐ธ ๐๐ as follows: for every ๐ฝ๐ฝ โ ๐ธ๐ธ ๐๐ , ๐๐ ๐๐ ( ๐ฝ๐ฝ ) = 1 if and only if ๐น๐น ( ๐๐ ) = 1 , where ๐๐ is the origin of ๐ฝ๐ฝ in ๐ป๐ป๏ฟฝ (for ๐๐ = 1, โฏ , ๏ฟฝ๐ป๐ป๏ฟฝ๏ฟฝ๏ฟฝ ) . 4. Transfer the recognition results to
๐ป๐ป๏ฟฝ . At this point we find ๐๐ ๐น๐น โฉ ๐ป๐ป๏ฟฝ , and then continue with: 5. Apply the cube-splitting according to ๐๐ ๐น๐น โฉ ๐ป๐ป๏ฟฝ , that is find the vertical equivalence classes โฐ , โฏ , . โฐ | ๐๐ ๐น๐น โฉ๐ป๐ป๏ฟฝ | only for the vertices of ๐๐ ๐น๐น โฉ ๐ป๐ป๏ฟฝ . 6. Implement 2-4 Steps of Algorithm 1. c) The cube-splitting can be applied recursively. The following resource is also worth mentioning that can be used in all cases/algorithms. This is the growing technique [8] in monotone Boolean function recognition and chain computation algebra [9].
5. Conclusion
The problem of query based algorithmic recognition of monotone binary functions defined in multi-valued grids is known as a hard problem. It was investigated by V. Korobkov, V. Alekseev, A.Serjantov, and others. It is known a chain-split type algorithm developed by V. Alekseev, where the complexity estimates were given in terms of sizes of the middle layers of the grid. A novel method of identification of monotone binary functions based on the partitioning of the grid into discrete structures isomorphic to binary cubes was proposed in our recent work, where a theoretical level description of two algorithmic schemes was introduced. This paper provides the implementation details of the algorithms, as well as focuses on the recognition of monotone binary functions with a small number of units /or zeros/ distributed in homogeneous areas of the grid. otes on Monotone Recognition in-Multi-Valued Grids Acknowledgement
This work is partially supported by the grant โ 18T -1B407 of the Science Committee of the Ministry of Education and Science of Armenia.
References [1] V.Korobkov,
On Monotone Functions of Algebra of Logic , Prob. Cyb, 13, 1965. [2] V.Alekseev, โOn deciphering of some classes of monotone many valued functionsโ,
USSR Computational Mathematics and Mathematical Physics , vol. 16, no. 1, pp. 189-198, 1976. [3] A.Serjantov, โOptimal algorithm for deciphering of some classes of monotone functionsโ,
Journal of Computational Mathematics and Math. Physics , vol. 23, no. 1, pp. 206-212, 1983. [4] N.Zolotyk and A.Chirkov, โOn the complexity of deciphering of threshold functions of many-valued logic โ, Proceedings of the XI International seminar โDiscrete mathematics and its applicationsโ, Commemorate on the 80th anniversary of academician Lupanov, pp. 63-77, 2012. [5] G. Hansel, โSur le nombre des fonctiones booleennes monotones de n variablesโ,
C. R. Acad. Sci. p. 262, 1966. [6] L. Aslanyan and H. Sahakyan, โThe splitting technique in monotone recognition โ , Discrete Applied Mathematics , vol. 216,pp. 502โ512, 2017. [7] L. Aslanyan and H. Sahakyan, โCube-split technique in quantitative association rule mining โ , Information Theories and Applications, vol. 24, no. 3, pp. 3-20, 2017. [8] L. Aslanyan and R. Khachatryan, โAssociation rule mining with n-dimensional unit cube chain split techniqueโ, Information Theories and Applications, vol. 1, no. 2, pp. 108-125, 2008. [9] G.Tonoyan, โThe successive splitting of vertices of an n-dimensional unit cube into chains and decoding problems of monotonic Boolean functionsโ, USSR Computational Mathematics and Mathematical Physics , vol. 19, no. 6, pp. 179-191, 1979.
Submitted 24.07.2019, accepted 28.11.2019.
ีีธีถีธีฟีธีถ ึีธึีถีฏึีซีกีตีซ ีณีกีถีกีนีธึีด ีขีกีฆีดีกึีชีฅึ ึีกีถึีธึีด
ิผึีธีถ ี. ิฑีฝีฌีกีถีตีกีถ ึ ีีกีฝีดีซีฏ ิฑ. ีีกีฐีกีฏีตีกีถ
ีี ิณิฑิฑ ิปีถึีธึีดีกีฟีซีฏีกีตีซ ึ ีกีพีฟีธีดีกีฟีกึีดีกีถ ีบึีธีขีฌีฅีดีถีฅึีซ ีซีถีฝีฟีซีฟีธึีฟ e-mail: [email protected], [email protected]
ิฑีดึีธึีธึีด
ิฑีตีฝ ีทีกึึีซ ีถีกีญีธึีค ีกีทีญีกีฟีกีถึีถีฅึีธึีด ีกีผีกีปีกึีฏีพีฅีฌ ีง ีดีธีถีธีฟีธีถ ีขีซีถีกึ ึีธึีถีฏึีซีกีตีซ ีพีฅึีฎีกีถีดีกีถ ีถีธึ ีดีธีฟีฅึีธึีดี ีฐีซีดีถีพีกีฎ ีขีกีฆีดีกึีชีฅึ ีขีกีฆีดีกีนีกึ ึีกีถึีซ ีญีธึีกีถีกึีคีกีฟีซีบ ีฟึีธีฐีดีกีถ ีดีฅีฉีธีคีซ ีพึีก , ีธึีฟีฅีฒ ีฟีฅีฝีกีฏีกีถ ีดีกีฏีกึีคีกีฏีธึีด . Aslanyan and H. Sahakyan ีกีผีกีปีกึีฏีพีฅีฌ ีง ีญีถีคึีซ ีฌีธึีฎีดีกีถ ีฅึีฏีธึ ีกีฌีฃีธึีซีฉีด /ีกีฌีฃีธึีซีฉีดีกีฏีกีถ ีฝีญีฅีดีก/ : ีีฅึีฏีก ีกีทีญีกีฟีกีถึีธึีด ีฟึีพีธึีด ีฅีถ ีกีตีค ีกีฌีฃีธึีซีฉีดีถีฅึีซ ีซึีกีฏีกีถีกึีดีกีถ ีดีกีถึีกีดีกีฝีถีฅึีจ, ีซีถีนีบีฅีฝ ีถีกึ ีคีซีฟีกึีฏีพีธึีด ีง ีกีตีถ ีคีฅีบึีจ, ีฅึีข ีดีธีถีธีฟีธีถ ึีธึีถีฏึีซีกีถ ีธึีถีซ ึีธึึ ีฉีพีธีพ ีดีฅีฏ ีกึีชีฅึีซ ีฃีกีฃีกีฉีถีฅึ: ิฒีกีถีกีฌีซ ีขีกีผีฅึ ` ีีธีถีธีฟีธีถ ึีธึีถีฏึีซีกีตีซ ีณีกีถีกีนีธึีด, ีขีกีฆีดีกึีชีฅึ ึีกีถึ, ีญีธึีกีถีกึีคีกีฟีซีบ ีฟึีธีฐีธึีด:
ะะฐะผะตัะบะธ ะพ ะผะพะฝะพัะพะฝะฝoะผ ัะฐัะฟะพะทะฝะฐะฒะฐะฝะธะธ ะฒ ะผะฝะพะณะพะทะฝะฐัะฝัั ัะตัะตัะบะฐั
ะะตะฒะพะฝ ะ.
ะัะปะฐะฝัะฝ ะธ ะัะผะธะบ ะ.
ะกะฐะฐะบัะฝ
ะะฝััะธััั ะฟัะพะฑะปะตะผ ะธะฝัะพัะผะฐัะธะบะธ ะธ ะฐะฒัะพะผะฐัะธะทะฐัะธะธ ะะะ ะ ะ e-mail: [email protected], [email protected]
ะะฝะฝะพัะฐัะธั
ะะพะฒัะน ะฟะพะดั ะพะด ะผะพะฝะพัะพะฝะฝะพะณะพ ัะฐัะฟะพะทะฝะฐะฒะฐะฝะธั ะฝะฐ ะพัะฝะพะฒะต ัะฐะทะฑะธะตะฝะธั ะผะฝะพะณะพะทะฝะฐัะฝะพะน ัะตัะตัะบะธ ะฝะฐ ะดะธัะบัะตัะฝัะต ััััะบัััั , ะธะทะพะผะพััะฝัะต ะฑะธะฝะฐัะฝัะผ ะบัะฑะฐะผ (ะผะตัะพะด โะบัะฑะธัะตัะบะพะณะพ ัะฐะทะฑะธะตะฝะธัโ) ะฟัะตะดะปะพะถะตะฝ ะฒ ัะตัะธะธ ะฟะพัะปะตะดะฝะธั ัะฐะฑะพั, ะณะดะต ะฝะฐ ัะตะพัะตัะธัะตัะบะพะผ ััะพะฒะฝะต ะดะฐะฝะพ ะพะฟะธัะฐะฝะธะต ะดะฒัั ะฐะปะณะพัะธัะผะพะฒ /ะฐะปะณะพัะธัะผะธัะตัะบะธั ัั ะตะผ/ ัะตัะตะฝะธั ะทะฐะดะฐัะธ. ะ ะดะฐะฝะฝะพะน ััะฐััะต ะฟัะธะฒะพะดะธััั ะฟะพะดัะพะฑะฝะพะต ะพะฟะธัะฐะฝะธะต ะดะตัะฐะปะตะน ัะตะฐะปะธะทะฐัะธะธ ััะธั ะฐะปะณะพัะธัะผะพะฒ, ะฐ ัะฐะบะถะต ัะฐััะผะฐััะธะฒะฐะตััั ัะปััะฐะน ัะฐัะฟะพะทะฝะฐะฒะฐะฝะธั ะผะพะฝะพัะพะฝะฝะพะน ััะฝะบัะธะธ ั ะฝะตะฑะพะปััะธะผ ัะธัะปะพะผ ะตะดะธะฝะธั, ััะพ ัะฒัะทะฐะฝะพ ั ััะดะพะผ ะฟัะฐะบัะธัะตัะบะธั ะฟัะธะปะพะถะตะฝะธะน . ะะปััะตะฒัะต ัะปะพะฒะฐ : ัะฐัะฟะพะทะฝะฐะฒะฐะฝะธะต ะผะพะฝะพัะพะฝะฝะพะน ััะฝะบัะธะธ, ะผะฝะพะณะพะทะฝะฐัะฝะฐั ัะตัะตัะบะฐ, ะบัะฑ ะธัะตัะบะพะต ัะฐะทะฑะธะตะฝะธะต ..