English

Optimal-Depth Sorting Networks

Data Structures and Algorithms 2016-11-30 v1 Discrete Mathematics

Abstract

We solve a 40-year-old open problem on the depth optimality of sorting networks. In 1973, Donald E. Knuth detailed, in Volume 3 of "The Art of Computer Programming", sorting networks of the smallest depth known at the time for n =< 16 inputs, quoting optimality for n =< 8. In 1989, Parberry proved the optimality of the networks with 9 =< n =< 10 inputs. In this article, we present a general technique for obtaining such optimality results, and use it to prove the optimality of the remaining open cases of 11 =< n =< 16 inputs. We show how to exploit symmetry to construct a small set of two-layer networks on n inputs such that if there is a sorting network on n inputs of a given depth, then there is one whose first layers are in this set. For each network in the resulting set, we construct a propositional formula whose satisfiability is necessary for the existence of a sorting network of a given depth. Using an off-the-shelf SAT solver we show that the sorting networks listed by Knuth are optimal. For n =< 10 inputs, our algorithm is orders of magnitude faster than the prior ones.

Keywords

Cite

@article{arxiv.1412.5302,
  title  = {Optimal-Depth Sorting Networks},
  author = {Daniel Bundala and Michael Codish and Luís Cruz-Filipe and Peter Schneider-Kamp and Jakub Závodný},
  journal= {arXiv preprint arXiv:1412.5302},
  year   = {2016}
}
R2 v1 2026-06-22T07:34:36.772Z