A Hash Table Without Hash Functions And How To Get The Most Out Of Your Random Bits
Kuszmaul William. Arxiv 2022
[Paper]
ARXIV
Independent
This paper considers the basic question of how strong of a probabilistic
guarantee can a hash table, storing -bit key/value
pairs, offer? Past work on this question has been bottlenecked by limitations
of the known families of hash functions: The only hash tables to achieve
failure probabilities less than require access to
fully-random hash functions – if the same hash tables are implemented using
the known explicit families of hash functions, their failure probabilities
become .
To get around these obstacles, we show how to construct a randomized data
structure that has the same guarantees as a hash table, but that avoids
the direct use of hash functions. Building on this, we are able to construct a
hash table using random bits that achieves failure probability for an arbitrary positive constant .
In fact, we show that this guarantee can even be achieved by a succinct
dictionary, that is, by a dictionary that uses space within a
factor of the information-theoretic optimum.
Finally we also construct a succinct hash table whose probabilistic
guarantees fall on a different extreme, offering a failure probability of while using only random bits. This latter result
matches (up to low-order terms) a guarantee previously achieved by
Dietzfelbinger et al., but with increased space efficiency and with several
surprising technical components.
Similar Work