Zig-zag Sort: A Simple Deterministic Data-oblivious Sorting Algorithm Running in $O(N N)$ Time
M. Goodrich. Proceedings of the 46th Annual ACM Symposium on Theory of Computing, стр. 684--693. New York, NY, USA, ACM, (2014)
DOI: 10.1145/2591796.2591830
Аннотация
We describe Zig-zag Sort---a deterministic data-oblivious sorting algorithm running in O(n log n) time that is arguably simpler than previously known algorithms with similar properties, which are based on the AKS sorting network. Because it is data-oblivious and deterministic, Zig-zag Sort can be implemented as a simple O(n log n)-size sorting network, thereby providing a solution to an open problem posed by Incerpi and Sedgewick in 1985. In addition, Zig-zag Sort is a variant of Shellsort, and is, in fact, the first deterministic Shellsort variant running in O(n log n) time. The existence of such an algorithm was posed as an open problem by Plaxton et al. in 1992 and also by Sedgewick in 1996. More relevant for today is the fact that the existence of a simple data-oblivious deterministic sorting algorithm running in O(n log n) time simplifies the "inner-loop" computation in several proposed oblivious-RAM simulation methods (which utilize AKS sorting networks), and this, in turn, implies simplified mechanisms for privacy-preserving data outsourcing in several cloud computing applications.
%0 Conference Paper
%1 goodrich14
%A Goodrich, Michael T.
%B Proceedings of the 46th Annual ACM Symposium on Theory of Computing
%C New York, NY, USA
%D 2014
%I ACM
%K aks algorithm expander galactic halver shellsort sorting sorting.network zig-zag
%P 684--693
%R 10.1145/2591796.2591830
%T Zig-zag Sort: A Simple Deterministic Data-oblivious Sorting Algorithm Running in $O(N N)$ Time
%X We describe Zig-zag Sort---a deterministic data-oblivious sorting algorithm running in O(n log n) time that is arguably simpler than previously known algorithms with similar properties, which are based on the AKS sorting network. Because it is data-oblivious and deterministic, Zig-zag Sort can be implemented as a simple O(n log n)-size sorting network, thereby providing a solution to an open problem posed by Incerpi and Sedgewick in 1985. In addition, Zig-zag Sort is a variant of Shellsort, and is, in fact, the first deterministic Shellsort variant running in O(n log n) time. The existence of such an algorithm was posed as an open problem by Plaxton et al. in 1992 and also by Sedgewick in 1996. More relevant for today is the fact that the existence of a simple data-oblivious deterministic sorting algorithm running in O(n log n) time simplifies the "inner-loop" computation in several proposed oblivious-RAM simulation methods (which utilize AKS sorting networks), and this, in turn, implies simplified mechanisms for privacy-preserving data outsourcing in several cloud computing applications.
%@ 978-1-4503-2710-7
@inproceedings{goodrich14,
abstract = {We describe Zig-zag Sort---a deterministic data-oblivious sorting algorithm running in O(n log n) time that is arguably simpler than previously known algorithms with similar properties, which are based on the AKS sorting network. Because it is data-oblivious and deterministic, Zig-zag Sort can be implemented as a simple O(n log n)-size sorting network, thereby providing a solution to an open problem posed by Incerpi and Sedgewick in 1985. In addition, Zig-zag Sort is a variant of Shellsort, and is, in fact, the first deterministic Shellsort variant running in O(n log n) time. The existence of such an algorithm was posed as an open problem by Plaxton et al. in 1992 and also by Sedgewick in 1996. More relevant for today is the fact that the existence of a simple data-oblivious deterministic sorting algorithm running in O(n log n) time simplifies the "inner-loop" computation in several proposed oblivious-RAM simulation methods (which utilize AKS sorting networks), and this, in turn, implies simplified mechanisms for privacy-preserving data outsourcing in several cloud computing applications.},
acmid = {2591830},
added-at = {2016-10-27T12:14:17.000+0200},
address = {New York, NY, USA},
author = {Goodrich, Michael T.},
biburl = {https://www.bibsonomy.org/bibtex/2c5be11564061611db20b87cf75a21605/ytyoun},
booktitle = {Proceedings of the 46th Annual ACM Symposium on Theory of Computing},
doi = {10.1145/2591796.2591830},
interhash = {3a936a377e8fd9cf4a7eee96d683a40b},
intrahash = {c5be11564061611db20b87cf75a21605},
isbn = {978-1-4503-2710-7},
keywords = {aks algorithm expander galactic halver shellsort sorting sorting.network zig-zag},
location = {New York, New York},
numpages = {10},
pages = {684--693},
publisher = {ACM},
series = {STOC '14},
timestamp = {2016-11-01T13:12:14.000+0100},
title = {Zig-zag Sort: A Simple Deterministic Data-oblivious Sorting Algorithm Running in $O(N \log N)$ Time},
year = 2014
}