A mechanism is provided for constructing log-n-wise-independent hash functions that can be evaluated in O(1) time. A probabilistic argument shows that for fixed ε<1, a table of nε random words can be accessed by a small O(1)-time program to compute one important family of hash functions. An explicit algorithm for such a family, which achieves comparable performance for all practical purposes, is also given. A lower bound shows that such a program must take Ω(k /ε) time, and a probabilistic arguments shows that programs can run in O(k2/ε2) time. An immediate consequence of these constructions is that double hashing using these universal functions has (constant factor) optimal performance in time, for suitably moderate loads. Another consequence is that a T-time PRAM algorithm for n log n processors (and nk memory) can be emulated on an n-processor machine interconnected by an n×log n Omega network with a multiplicative penalty for total work that, with high probability, is only O(1)
Published in:
Foundations of Computer Science, 1989., 30th Annual Symposium on
Date of Conference:
30 Oct-1 Nov 1989
- Page(s):
-
20
-
25
- Meeting Date :
-
30 Oct 1989-01 Nov 1989
- Print ISBN:
-
0-8186-1982-1
- INSPEC Accession Number:
-
3753884
- Conference Location :
-
Research Triangle Park, NC
- Digital Object Identifier :
-
10.1109/SFCS.1989.63450
- Product Type:
-
Conference Publications