# Polynomial hash functions are reliable

## Abstract

Polynomial hash functions are well studied and widely used in various applications. They have gained popularity because of certain performances they exhibit. It has been shown that even linear hash functions are expected to have such performances. However, quite often we would like the hash functions to be reliable, meaning that they perform well with high probability; for some certain important properties even higher degree polynomials were not known to be reliable. We show that for certain important properties linear hash functions are not reliable. We give indication that quadratic hash functions might not be reliable. On the positive side, we prove that cubic hash functions are reliable. In a more general setting, we show that higher degree of the polynomial hash functions translates into higher reliability. We also introduce a new class of hash functions, which enables to reduce the universe size in an efficient and simple manner. The reliability results and the new class of hash functions are used for some fundamental applications: improved and simplified reliable algorithms for perfect hash functions and real-time dictionaries, which use significantly less random bits, and tighter upper bound for the program size of perfect hash functions.

## Keywords

Hash Function Finite Field Program Size Universal Classis High Degree Polynomial## Preview

Unable to display preview. Download preview PDF.

## References

- 1.N. Alon, L. Babai, and A. Itai. A fast and simple randomized parallel algorithm for the maximal independent set problem.
*J. of Alg.*, 7:567–583, 1986.CrossRefGoogle Scholar - 2.L. J. Carter and M. N. Wegman. Universal classes of hash functions.
*JCSS*, 18:143–154, 1979.Google Scholar - 3.B. Chor and O. Goldreich. On the power of two-point based sampling.
*J. Complexity*, 5:96–106, 1989.CrossRefGoogle Scholar - 4.M. Dietzfelbinger, A. R. Karlin, K. Mehlhorn, F. Meyer auf der Heide, H. Rohnert, and R. E. Tarian. Dynamic perfect hashing: Upper and lower bounds. Technical Report 70, Universität Paderborn, Gesamthochschule, Jan. 1991.
*Revised Version*of the paper of the same title that appeared in*FOCS '88*, pp. 524–531.Google Scholar - 5.M. Dietzfelbinger and F. Meyer auf der Heide. A new universal class of hash functions and dynamic hashing in real time. In
*ICALP '90*(LNCS 443), pp. 6–19, July 1990.Google Scholar - 6.M. L. Fredman, J. Komlós, and E. Szemerédi. Storing a sparse table with O(1) worst case access time.
*J. ACM*, 31(3):538–544, July 1984.CrossRefGoogle Scholar - 7.J. Gil and Y. Matias. Fast hashing on a PRAM-designing by expectation. In
*SODA '91*, pp. 271–280, Jan. 1991.Google Scholar - 8.J. Gil, Y. Matias, and U. Vishkin. Towards a theory of nearly constant time parallel algorithms. In
*FOCS '91*, pp. 698–710.Google Scholar - 9.C. T. M. Jacobs and P. van Emde Boas. Two results on tables.
*IPL*, 22(1):43–48, 1986.Google Scholar - 10.A. Joffe. On a set of almost deterministic k-independent random variables.
*The Annals of Prob.*, 2:161–162, 1974.Google Scholar - 11.A. R. Karlin and E. Upfal. Parallel hashing-an efficient implementation of shared memory. In
*STOC '86*, pp. 160–168.Google Scholar - 12.
- 13.C. P. Kruskal. L. Rudolph, and M. Snir. A complexity theory of efficient parallel algorithms.
*TCS*, 71:95–132, 1990.CrossRefGoogle Scholar - 14.M. Luby. A simple parallel algorithm for the maximal independent set problem.
*SIAM J. Comput.*, 15(4):1036–1053, 1986.CrossRefGoogle Scholar - 15.H. G. Mairson. The program complexity of searching a table. In
*FOCS '83*, pp. 40–75.Google Scholar - 16.G. Markowsky, L. J. Carter, and M. N. Wegman. Analysis of a universal class of hash functions. In
*MFCS '78*, pp. 345–354, 1978.Google Scholar - 17.K. Mehlhorn. On the program size of perfect and universal hash functions. In
*FOCS '82*, pp. 170–175.Google Scholar - 18.K. Mehlhorn.
*Data Structures and Algorithms*. Springer-Verlag, Berlin Heidelberg, 1984.Google Scholar - 19.K. Mehlhorn and U. Vishkin. Randomized and deterministic simulations of PRAMs by parallel machines with restricted granularity of parallel memories.
*Acta Inf.*, 21:339–374, 1984.Google Scholar - 20.N. Nisan. Pseudorandom generators for space-bounded computations. In
*STOC '90*, pp. 204–212.Google Scholar - 21.M. V. Ramakrishna and P.-A. Larson. File organization using composite perfect hashing.
*ACM Trans. Database Syst.*, 14(9);231–263. 1989.CrossRefGoogle Scholar - 22.A. G. Ranade. How to emulate shared memory. In
*FOCS '87*, pp. 185–194.Google Scholar - 23.A. G. Ranade, S. N. Bhatt, and S. L. Johnsson. The fluent abstract machine. In
*Proc. of the 5th MIT Conference on Advanced Research in VLSI*, pp. 71–93, 1988.Google Scholar - 24.J. P. Schmidt and A. Siegel. The spatial complexity of oblivious k-probe hash functions.
*SIAM J. Comput.*, 19(5):775–786, 1990.CrossRefGoogle Scholar - 25.A. Siegel. On universal classes of fast high performance hash functions, their time-space tradeoff, and their applications. In
*FOCS '89*, pp. 20–25.Google Scholar - 26.C. Slot and P. van Emde Boas. On tape versus core; an application of space efficient hash functions to the invariance of space. In
*STOC '84*, pp. 391–400.Google Scholar - 27.M. N. Wegman and L. J. Carter. New classes and applications of hash functions. In
*FOCS '79*, pp. 175–182.Google Scholar - 28.M. N. Wegman and L. J. Carter. New hash functions and their use in authentication and set equality.
*JCSS*, 22:265–279, 1981.Google Scholar - 29.A. C. Yao. Should tables be sorted?
*J. ACM*, 28(3);615–628, July 1981.CrossRefGoogle Scholar