We now consider evaluating the Lyapunov exponent over the
integer domain
where hashing occurs. Several
features of equation (8) must be changed to evaluate the
exponent over
. First, the limits can be evaluated only for a finite
table size
, and not as
. Second,
the smallest error
which can be resolved for a given
is
exactly one. Thus, the best we can do is choose
,
thereby eliminating the denominator in the sum of equation (9).
Taking these differences into account, we can define the integer Lyapunov
exponent for a given number of iterations m as
where
This integer Lyapunov exponent can be easily calculated for any integer
iterator, and is independent of the initial value
for
full length probe sequences. The meaning of
the exponent has also significantly changed from that of the real
domain Lyapunov exponent, in part because all finite field
iterators are necessarily periodic. By definition, the integer
Lyapunov exponent produces a positive value for all non-trivial sequences.
In fact, the only iterator which will produce a zero Lyapunov exponent is
the trivial iterator
. Secondly, for
some iterators, the Lyapunov exponent may depend on the number of iterations
evaluated,
, as well as the table size
.
This is due to the fact that the table size forms an upper bound for the distance
between any two values
, limiting
the value of each term in the summation. Empirically it was found that
for most common hash functions, the integer Lyapunov exponent is a function
of table size when evaluated with m=N iterations.
The integer Lyapunov exponent, however, does preserve one important characteristic of the real Lyapunov exponent; it serves as a measure of the average distance that very close values will be separated by an average iteration. This is important when the input data distribution is nonuniform, because it is desirable to have similar keys (i.e., keys close in value) distributed in the hash table as widely as possible after only an iteration or two.