There have been many instances in the literature where an algorithm with running time of the form O(na) is improved to an algorithm with running time O(na/ logbn) for some constants a and b. The "four Russians" algorithm for Boolean matrix multiplication is perhaps one of the most well known examples.#R##N##R##N#In this talk, we will look at a few selected recent examples of this phenomenon, including the 3-SUM problem, the problem of detecting affine degeneracy in a point set, Klee's measure problem, and the all-pairs shortest paths problem. (The selection is not comprehensive but is biased towards the speaker's own expertise.) Bit tricks, table lookups, and constructions of small decision trees are used to achieve many of these polylogarithmic-factor speedups, but often the applications of these techniques require interesting ideas.
['Timothy M. Chan']
The art of shaving logs