UNIFORM HASHING IN CONSTANT TIME AND OPTIMAL SPACE

Many algorithms and data structures employing hashing have been analyzed under the uniform hashing assumption, i.e., the assumption that hash functions behave like truly random functions. Starting with the discovery of universal hash functions, many researchers have studied to what extent this theor...

Full description

Saved in:
Bibliographic Details
Published inSIAM journal on computing Vol. 38; no. 1; pp. 85 - 96
Main Authors PAGH, Anna, PAGH, Rasmus
Format Journal Article
LanguageEnglish
Published Philadelphia, PA Society for Industrial and Applied Mathematics 2008
Subjects
Online AccessGet full text

Cover

Loading…
More Information
Summary:Many algorithms and data structures employing hashing have been analyzed under the uniform hashing assumption, i.e., the assumption that hash functions behave like truly random functions. Starting with the discovery of universal hash functions, many researchers have studied to what extent this theoretical ideal can be realized by hash functions that do not take up too much space and can be evaluated quickly. In this paper we present an almost ideal solution to this problem: a hash function $h: U\rightarrow V$ that, on any set of $n$ inputs, behaves like a truly random function with high probability, can be evaluated in constant time on a RAM and can be stored in $(1+\epsilon)n\log |V| + O(n+\log\log |U|)$ bits. Here $\epsilon$ can be chosen to be any positive constant, so this essentially matches the entropy lower bound. For many hashing schemes this is the first hash function that makes their uniform hashing analysis come true, with high probability, without incurring overhead in time or space.
ISSN:0097-5397
1095-7111
DOI:10.1137/060658400