Core Concepts
Optimal non-adaptive cell probe data structures for storing dictionaries and evaluating n-wise independent hash functions.
Abstract
The paper presents optimal non-adaptive cell probe data structures for the dictionary problem and for evaluating n-wise independent hash functions.
For the dictionary problem, the authors construct a simple and provably optimal non-adaptive cell probe data structure that supports storing a set of n key-value pairs from [u] × [u] using s words of space and answering key lookup queries in t = O(lg(u/n)/ lg(s/n)) non-adaptive probes. This generalizes a previous solution for the membership problem.
The authors also present matching lower bounds for the non-adaptive static membership problem in the deterministic setting, showing that their dictionary algorithm and the preceding membership algorithm are optimal. This implies an inherent complexity gap between no adaptivity and one round of adaptivity for these problems.
Using the ideas underlying their dictionary data structure, the authors also obtain the first implementation of an n-wise independent family of hash functions with optimal evaluation time in the cell probe model.
The key technical ingredients are the use of non-contractive expander graphs and Hall's marriage theorem to construct the dictionary, and the use of a slightly stronger expander property along with a randomized weight assignment to construct the hash functions.
Stats
The data structure stores n key-value pairs from [u] × [u] using s memory cells of w = Θ(lg u) bits.
The query time is t = O(lg(u/n)/ lg(s/n)) non-adaptive probes.
The hash function evaluation time is also t = O(lg(u/n)/ lg(s/n)) cell probes.