On the monotone complexity of the shift operator
Igor S. Sergeev

TL;DR
This paper analyzes the complexity of minimal monotone circuits implementing a permutation operator on boolean vectors, providing new insights and alternative proofs for known bounds in monotone computational complexity.
Contribution
It establishes the exact asymptotic complexity of the monotone permutation operator and offers an alternative proof for the complexity of the monotone shift operator.
Findings
Complexity of monotone permutation operator is Θ(qn log n).
Provides an alternative proof for the Θ(n log n) bound of the monotone shift operator.
Enhances understanding of monotone circuit complexity for permutation functions.
Abstract
We show that the complexity of minimal monotone circuits implementing a monotone version of the permutation operator on boolean vectors of length is . In particular, we obtain an alternative way to prove the known complexity bound for the monotone shift operator on boolean inputs.
Peer Reviews
No public reviews on file for this paper yet. If you reviewed it on a platform where reviews are public (OpenReview, ICLR, NeurIPS, ICML), you can paste yours below so the community can read it here.
Videos
No videos yet. Explain this paper in a talk, walkthrough, or lecture? Add one.
Taxonomy
TopicsMatrix Theory and Algorithms · Mathematical Analysis and Transform Methods · Coding theory and cryptography
On the monotone complexity of the shift operator
Igor S. Sergeev111e-mail: [email protected]
Abstract
We show that the complexity of minimal monotone circuits implementing a monotone version of the permutation operator on boolean vectors of length is . In particular, we obtain an alternative way to prove the known complexity bound for the monotone shift operator on boolean inputs.
Introduction. The recent paper [1] shows that a plausible hypothesis from network coding theory implies a lower bound for the complexity of the -input boolean shift operator when implemented by circuits over a full basis. As a corollary, the same bound holds for the multiplication of -bit numbers. (Definitions of boolean circuits and complexity see e.g. in [12].) Curiously, nearly at the same time an upper bound for multiplication has been proved in [5]. Actually, for the shift operator, the bound is trivial.
The shift can be implemented by monotone circuits. Lamagna [7, 8] and independently Pippenger and Valiant [11] proved that its complexity is bounded by with respect to the circuits over the basis . Essentially the same bound was established by Chashkin [3] for the close problem of implementation of the real-valued shift operator by circuits over the basis of 2-multiplexors and binary boolean functions. We show that the argument from [3] works for the boolean setting as well thus obtaining yet another proof of the known result. On the other hand, an upper bound is easy to obtain when a suitable encoding of the shift value is chosen.
A version of the shift operator may be seen as a partially defined order- boolean convolution operator. It is known that the complexity of the convolution is [4], while the complexity of the corresponding shift operator is .
A more general form of shift is permutation. By analogy, one can introduce a monotone permutation operator. If a special encoding on the set of permutations is chosen, then the permutation operator on boolean inputs can be implemented with complexity employing the optimal sorting network from [2]. If size- boolean vectors are given as inputs, then there exists a version of the permutation operator, which is the restriction of the boolean matrix multiplication operator. The boolean matrix multiplication complexity is known to be [9, 10]. It can be compared with the complexity of the corresponding permutation operator. (The lower bound follows from the bound on the complexity of the shift operator.)
Preliminaries. Further, denotes the complexity of implementing the operator by circuits over the basis .
Let and be an antichain of cardinality . By , , denote the -matrix of boolean variables. Let denote the vector of boolean variables encoding elements of the antichain . By we denote the vector obtained from via a cyclic shift by positions to the right.
Monotone cyclic shift -operator is a partially defined operator taking values for , where .
Consider a few examples of encoding shift values. The vector , where is the componentwise negation, we call doubling of the vector . Typically, the shift value is encoded by its binary representation . For the monotone version, one can use doubling of . In this case, . The described encoding corresponds to the antichain .
Another natural choice for is the set of all weight-1 vectors in . In this case, . Let . Define
[TABLE]
The operator is called a cyclic boolean convolution of the vectors and .
By the definition of the shift operator, coincides with on inputs from . It can be checked that
[TABLE]
where is an undefined boolean vector, and for (here denotes the weight of the vector ). The complexity of convolution is known to be almost quadratic, [4]. Supposedly, a trivial upper bound is tight. At the same time, . We show below that in fact for any .
Now let be an antichain of cardinality . We can assign to its elements different permutations on the set . Denote . The monotone permutation operator is defined on inputs as , where the permutation corresponds to the value of . Since a cyclic shift is a special case of permutation, any permutation operator can be viewed as a shift operator defined on a larger domain.
Trivially, any permutation may be represented by the vector of numbers . Let denote the corresponding coding set (it constitutes an antichain).
Otherwise, permutations may be specified as square boolean matrices with all rows and columns having weight 1. Denote the set of such matrices by . The corresponding permutation operator performs the multiplication of the permutation matrix by the matrix of variables . Define
[TABLE]
Then is the operator of boolean product of matrices and . By definition, the operators and take the same values on inputs from . It is known that [10] (see also [12]), which means: the naive method to multiply boolean matrices is optimal. On the other hand, (see below). Moreover, we manage to show that for any , and this bound is achievable.
Upper complexity bounds. For let denote the monomial of variables corresponding to the vector . Let stand for the complexity of computation of the set of monomials .
Theorem 1**.**
.
*Proof. *The standard circuit for the shift operator consists of layers of multiplexors in each. It can be built according to the binary representation of the shift value . The first layer shifts the input by either 0 or 1 positions, depending on the value of the least significant bit of . The second layer shifts by 0 or 2 positions, etc.
The monotone circuit employs indicators of equality of bits of to zeros or ones. Instead of multiplexors, there are used similar monotone subcircuits that calculate operators of the form .
It remains to note that all boolean sums can be computed with complexity . ∎
In particular, since and , we obtain .
To derive the upper bounds on the complexity of the permutation operator, we use a circuit sorting elements with complexity provided by [2]. Such a circuit consists of comparator gates that order a pair of inputs.
Theorem 2**.**
**
* There exists an antichain such that .*
* .*
*Proof. *A set can be specified following the circuit . Assign to any permutation a linear order on the set of inputs of (in general, we do not consider these inputs boolean). Let receive inputs ordered in correspondence to a given permutation . Assign to each comparator a boolean parameter whose value is determined by the result of the comparison. Let the doubling of the vector of parameters , , encode a permutation .
Now, we transform the circuit to a monotone circuit for , replacing any comparator receiving vector inputs with a subcircuit that evaluates vectors and .
Let us prove . First, recode from to . To do this, one simply needs to compute positions of 1s in the columns of the matrix . The position of 1 in a weight-1 column may be calculated by a trivial circuit of linear complexity. Therefore, the complexity of the recoding is .
Next, arrange the inputs in accordance to the ordering of numbers with the use of the circuit . At each node of the obtained circuit two inputs are compared and, depending on the result of the comparison, the order of the vectors accompanied by the numbers is determined. The complexity of comparison is linear, so the complexity of the subcircuit at each node is . ∎
Lower complexity bounds. The proof of the following theorem closely follows the proof of the main result in [3].
Theorem 3**.**
For any choice of antichain of cardinality the following inequality holds: .
*Proof. *Essentially, it suffices to consider the case . Let be a monotone circuit of complexity that computes .
a) First, note that for any assignment for each , the circuit contains a path connecting the input and the output , and passing exclusively through the gates whose outputs return the function .
Indeed, by definition. It remains to check that if or , where and are monotone functions, then either or . From it follows that and . Assume that and . It means that under the assignment , for all . But then . A contradiction. The case follows by a dual argument.
So, moving from an output towards the inputs of the circuit, for any gate, we can select an appropriate input computing the function . Finally, we obtain the desired path.
b) Denote the path providing by the above argument by . Let stand for the number of paths , , passing through the gate in the circuit . Note that for all . Indeed, any assignment uniquely defines the function of variables computed at the output of any gate . Thus, does not belong to two different paths and . Consequently,
[TABLE]
c) Let us estimate the sum in another way. Denote by the number of paths passing through to the output . By construction, .
Consider the subcircuit obtained by combining all paths leading to the output , i.e. satisfying the condition . By construction, is a connected binary222Any vertex receives at most two incoming edges. directed graph with inputs and one output. We manage to bound following a simple argument from [6]333In [6], the argument was used to bound the monotone complexity of the boolean sorting operator, see also [12]..
Due to the binarity property, the subcircuit has an input at a distance of at least edges from the output. In other words, some path making up contains at least gates. Exclude this path and consider a subcircuit obtained by combining the remaining paths. Then, it contains a path of length at least . We proceed this way until there is no path remained. The argument leads to the bound
[TABLE]
following by
[TABLE]
Putting together (1) and (3), we establish the inequality .
d) For , we consider separately the components of the input and output vectors at the same positions. This results in groups of paths . The inequality (1) remains valid, and the inequality (2) holds for any of outputs. Thus, the required bound finally follows. ∎
Since a permutation operator is a more completely defined shift operator, as a corollary we establish for any .
The research is supported by RFBR grant, project no. 19-01-00294a.
The reference list from the paper itself. Each links out to its DOI / PubMed record.
- 1[1] Afshani P., Freksen C., Kamma L., Larsen K. G. Lower bounds for multiplication via network coding. ar Xiv:1902.10935.
- 2[2] Ajtai M., Komlós J., Szemerédi E. Sorting in c log n 𝑐 𝑛 c\log n parallel steps. Combinatorica. 1983. 3 (1), 1–19.
- 3[3] Chashkin A. V. On the complexity of a cyclic shift of a set of real numbers. Discrete Analysis and Operations Research. Ser. 1. 2006. 13 (4), 89–92 (in Russian). [Eng. translation in J. Applied and Industrial Math. 2007. 1 (2), 175–177.]
- 4[4] Grinchuk M. I., Sergeev I. S. Thin circulant matrices and lower bounds on the complexity of some Boolean operators. Discrete Analysis and Operations Research. 2011. 18 (5), 38–53 (in Russian). [Eng. translation in ar Xiv:1701.08557.]
- 5[5] Harvey D., van der Hoeven J. Integer multiplication in time O ( n log n ) 𝑂 𝑛 𝑛 O(n\log n) . Tech. report no. 02070778, HAL, 2019.
- 6[6] Lamagna E. A., Savage J. E. Combinational complexity of some monotone functions. Proc. 15th IEEE Symp. on Switching and Automata Theory. New Orleans, 1974, 140–144.
- 7[7] Lamagna E. A. The complexity of monotone functions. Ph.D. thesis. Brown Univ., 1975.
- 8[8] Lamagna E. A. The complexity of monotone networks for certain bilinear forms, routing problems, sorting, and merging. IEEE Trans. on Comp. 1979. 28 , 773–782.
