 
Summary: Dynamical System Representation of Open Address Hash Functions
Gregory L. Heileman y Chaouki T. Abdallah y Bernard M. E. Moret z Bradley J. Smith y
heileman@eece.unm.edu chaouki@eece.unm.edu moret@cs.unm.edu bsmith@eece.unm.edu
Department of Electrical and Computer Engineering y
Department of Computer Science z
University of New Mexico, Albuquerque, NM 87131
Introduction. Number theory and probabilistic analyses have typically been used to justify the use of
various probing strategies for open address hashing. For example, Guibas and Szemeredi [1], and later
Lueker and Molodowitch [3], have shown that double hashing offers a good approximation to uniform
hashing if the hash function is assumed to select table entries with equal probability. In this paper we use
an analysis based on nonlinear dynamical systems theory to provide a similar result, without making any
probabilistic assumptions about the data distribution. The key to our approach is the ability to express hash
functions as dynamical systems. Below we demonstrate for the first time how some important families of
hash functions can be expressed as dynamical systems. After this, we provide an analysis of linear double
hashing that demonstrates the potential usefulness of representing hash functions in this fashion.
Hashing Functions as Dynamical Systems. We will consider three important families of hash func
tions: quadratic hashing, linear double hashing, and exponential double hashing. Quadratic hashing is an
extension of linear probing that makes the probe sequence nonlinearly dependent on the probe number n.
For any ordinary hash function h that performs a mapping from a key space to a table space of size m, the
family of quadratic hash functions is given by
