This book offers a comprehensive introduction to algorithmic information theory: it defines plain and prefix Kolmogorov complexity, explains the incompressibility method, relates complexity to Shannon information, and develops tests of randomness culminating in Martin-Löf randomness and Chaitin’s Ω. It surveys links to computability theory, mutual information, algorithmic statistics, Hausdorff dimension, ergodic theory, and data compression, providing numerous exercises and historical notes. By unifying complexity and randomness, it supplies rigorous tools for measuring information content, proving combinatorial lower bounds, and formalizing the notion of random infinite sequences, thus shaping modern theoretical computer science.
Looking at a sequence of zeros and ones, we often feel that it is not random, that is, it is not plausible as an outcome of fair coin tossing. Why? The answer is provided by algorithmic information theory: because the sequence is compressible, that is, it has small complexity or, equivalently, can be produced by a short program. This idea, going back to Solomonoff, Kolmogorov, Chaitin, Levin, and others, is now the starting point of algorithmic information theory. The first part of this book is a textbook-style exposition of the basic notions of complexity and randomness; the second part covers some recent work done by participants of the “Kolmogorov seminar” in Moscow (started by Kolmogorov himself in the 1980s) and their colleagues. This book contains numerous exercises (embedded in the text) that will help readers to grasp the material.