On Ramanujan's Q(n)-Function

Abstract. This study provides a detailed analysis of a function which Knuth discovered to play a central role in the analysis of hashing with linear probing. The function, named after Knuth Q(n), is related to several of Ramanujan's investigations. It surfaces in the analysis of a variety of algorithms and discrete probability problems including hashing, the birthday paradox, random mapping statistics, the "rho" method for integer factorization, union--find algorithms, optimum caching, and the study of memory conflicts. A process related to the complex asymptotic methods of singularity analysis and saddle point integrals permits to precisely quantify the behaviour of the Q(n) function. In this way, tight bounds are derived. They answer a question of Knuth (The Art of Computer Programming, Vol. 1, 1968, [Ex.]), itself a rephrasing of earlier questions of Ramanujan in 1911-1913.


Here are the addresses of my coauthors:

This paper is available in the Tex, Dvi, and PostScript format.
If you go to the homepage of Philippe Flajolet, you will find, amongst a lot of interesting things, a postscript version of this paper, which includes the graphics!
(Back to List of Papers)