Three applications of Kolmogorov-complexity

Kolmogorov-CoMplexity has turned out to be a very useful tool in proving lower bounds [5], [6], [7]. Here we will give further applications of Kolmogorov-Complexity. Firstly we will greatly simplify two well-known lower bound proofs: (a) the n(n logn/loglog n) lower bound for on-line-multiplication, originally proven in [2], [4], (b) the n(n 2 /log n) lower bound for a time-space trade-off in sorting [9]. We will also improve this bound to n(N 2 loglog N/log N). Secondly we will demonstrate how to use Kolmogorov-Complexity in analysing proba-bilistic algorithms: (c) We analyse in an elementary way the routing algorithm for n-dimensional cubes given in [10]. 1. The concept of Kolmogorov-Complexity Let C be the class of one-dimensional Turing-machines with tape-alphabet {O,I,B}. Let U be an universal machine in C. For w 1 ,w 2 E{O,I}* define the Kolmogorov-Complexity [3] by: K(w 1 {W 2 }: =the length of the shortest o/ 1 s t r i ng (" pro gram I' J p, s uc h t hat U with input pBw2 computes wI and stops. K(w): =K(wlempty string). 45 Because one program p can only generate one word w, we have Fact I : Let w 2 E{O,l}* , then i) *{wl E{O,1}*IK(w 1 IW 2) ~n} <2 n + 1 _1 i i) (Especially) there exists a string w E{O,l}n with K(wlw 2) ~n If K(wl the empty string) =n , then w i s called a random string. Two easy consequences of Fact 1 are Fact 2: (Strings with low complexity are improbable). Let w 2 E{O,l}* be fixed and determine wI E{O,l}n by tossinq a fair coin n times, then for all c Fact 3: (Random strings are locally n almost random). Let w =w 1 w 2 w 3 E{O,l} be random. Then, with w'w 2 : =w 1 w 3 ' We need the following notation. For w: =w 1 w 1 w 2 w2"" ,w n w n Ol ·