Lecture Notes on Algorithmic Information Theory
Charles Alexandre Bédard
TL;DR
These notes present Algorithmic Information Theory as a unification of computation and information, grounding information content in the shortest descriptions of individual strings rather than probabilities. The core framework builds plain and prefix Kolmogorov complexity, proves the invariance principle, and derives the Coding Theorem linking description length to universal probability, while addressing uncomputability and incompleteness through the Halting Probability $\Omega$. The exposition questions Hilbert-style formalism, demonstrates the limits of formal systems via Chaitin's incompleteness, and highlights the deep connections between information, randomness, and mathematical truth. Together, these ideas illuminate how algorithmic randomness, induction, and the limits of axioms shape our understanding of computation and knowledge.
Abstract
Algorithmic information theory roots the concept of information in computation rather than probability. These lecture notes were constructed in conjunction with the graduate course I taught at Università della Svizzera italiana in the spring of 2023. The course is intended for graduate students and researchers seeking a self-contained journey from the foundations of computability theory to prefix complexity and the information-theoretic limits of formal systems. My exposition ignores boundaries between computer science, mathematics, physics, and philosophy -- an approach I consider essential when explaining inherently multidisciplinary fields. Lecture recordings are available online. Among other topics, the notes cover bit strings, codes, Shannon information theory, computability theory, the universal Turing machine, the Halting Problem, Rice's Theorem, plain algorithmic complexity, the Invariance Theorem, incompressibility, Solomonoff's induction, self-delimiting Turing machines, prefix algorithmic complexity, the halting probability Omega, Chaitin's Incompleteness Theorem, The Coding Theorem, lower semi-computable semi-measures, and the chain rule for algorithmic complexity.
