92 KAM Mathematical Colloquium
Peter van Emde Boas
Universiteit van Amsterdam
THE HISTORY OF THE VAN EMDE BOAS TREES
Tuesday November 18 2014 at 11:00, refektář room, first floor
KAM MFF UK
Malostranské nám. 25
118 00 Praha 1
Abstract
The stratified tree, also called van Emde Boas tree, is a data structure implementing the full repertoire of instructions manipulating a single subset of a finite ordered universe of size $u$ with the processing time per instruction $O(\log\log(u))$. Hence it improves upon the traditional comparison based tree structures for dense subsets. Examples exist where this improvement helps to speed-up algorithmic solutions of real problems; such applications can be found for example in graph algorithms, computational geometry and forwarding of packets on the internet.This data structure was invented during a three months postdoc residence at Cornell University in the fall of 1974. In my talk I want to describe the historical backgrounds against which the stratified trees were discovered and implemented.
In the literature today, the data structure is usually described by a direct recursive approach. However, this requires address calculations on the arguments which use multiplicative arithmetical instructions. These instructions were not allowed in the Random Access Machine model (RAM) which was the standard model in 1974. Therefore my early implementations of the stratified trees were based on a different approach which is best described as a binary-search-on-levels strategy. In this approach the address calculations were not required, and the structure could be implemented using pointers. The downside of this approach is that it leads to rather complex algorithms, which are still hard to present correctly even today. Another bad consequence was the super linear space consumption of the data structure, which was only eliminated three years later.