We consider the classical problem of sorting an input array containing $n$ elements, where each element is described with a $k$-bit comparison-key and a $w$-bit payload. A long-standing open problem is whether there exist $(k + w) \cdot o(n \log n)$-sized boolean circuits for sorting. We show that one can overcome the $n\log n$ barrier when the keys to be sorted are short. Specifically, we prove that there is a circuit with $(k + w) \cdot O(n k) \cdot \poly(\log^*n - \log^* (w + k))$ boolean gates capable of sorting any input array containing $n$ elements, each described with a $k$-bit key and a $w$-bit payload. Therefore, if the keys to be sorted are short, say, $k < o(\log n)$, our result is asymptotically better than the classical AKS sorting network (ignoring $\poly\log^*$ terms); and we also overcome the $n \log n$ barrier in such cases. Such a result might be surprising initially because it is long known that comparator-based techniques must incur $\Omega(n \log n)$ comparator gates even when the keys to be sorted are only $1$-bit long (e.g., see Knuth's "Art of Programming" textbook). To the best of our knowledge, we are the first to achieve non-trivial results for sorting circuits using non-comparison-based techniques. We also show that if the Li-Li network coding conjecture is true, our upper bound is optimal, barring $\poly\log^*$ terms, for every $k$ as long as $k = O(\log n)$.
翻译:我们考虑对含有 $ 元 元素的输入阵列进行排序的经典问题, 其中每个元素用 $( k+ w) 比较键和 $- wit 有效载荷来描述 。 一个长期的开放问题是, 是否有 $( k+ w)\ cdot o (n\ log n) 的布林值大小 。 我们显示, 当要排序的密钥短时, 一个人可以克服 $( $) n美元 的屏障。 具体地说, 我们证明, 每个元素都有 $( k+ w)\ cdot O (n k) 和 美元 美元 美元 美元 (cd) 的电路路路路段 。 一个长期的开关是 $( logn) = 美元 美元 (w) 美元 美元 的内端端端端值 。 当我们最短的密的密钥只显示时, 我们的结果比 美元 美元 。