InformationTheory.Shannon.Kolmogorov.Counting
Counting and the existence of incompressible strings #
There are fewer than 2 ^ k natural numbers of complexity below k, because
each such x is produced by a program shorter than k bits and the map sending
x to its shortest program is injective (a program's output is determined by the
program). Since there are only finitely many programs of length below k, only
finitely many x can be that simple, and — the type of naturals being infinite —
an incompressible x with k ≤ complexity x always exists.
Main statements #
incompressible_count—#{x | complexity x < k} < 2 ^ k.exists_incompressible— for everyksomexhask ≤ complexity x.
InformationTheory.Kolmogorov.progNat
sourceEncode a bit string as a positive natural number by reading it as the binary
digits below a leading sentinel 1. The sentinel makes the encoding injective
(the length is recoverable) and keeps a length-n string below 2 ^ (n + 1).
Equations
Instances For
Used by
InformationTheory.Kolmogorov.progNat_pos
sourceUsed by
InformationTheory.Kolmogorov.progNat_lt
sourceUsed by
InformationTheory.Kolmogorov.progNat_injective
sourceUsed by
InformationTheory.Kolmogorov.shortestProg
sourceA shortest program for x (attained by condComplexity_spec).
Equations
Instances For
Used by
InformationTheory.Kolmogorov.shortestNat
sourceThe natural-number code of x's shortest program.
Equations
Instances For
Used by
InformationTheory.Kolmogorov.shortestProg_length
sourceUsed by
InformationTheory.Kolmogorov.shortestProg_mem
sourceUsed by
InformationTheory.Kolmogorov.shortestNat_injective
sourceUsed by
InformationTheory.Kolmogorov.shortestNat_lt_of_lt
sourceUsed by
InformationTheory.Kolmogorov.complexity_lt_finite
sourceUsed by
InformationTheory.Kolmogorov.incompressible_count
sourceFewer than 2 ^ k naturals have complexity below k.
Used by
InformationTheory.Kolmogorov.exists_incompressible
sourceFor every bound k there is an incompressible x with k ≤ complexity x.
Used by
Conditional version #
The same counting bound holds relative to any condition y, needed for the
entropy-rate lower bound where the condition is the block length. The y = 0
declarations above are the unconditional specializations.
InformationTheory.Kolmogorov.shortestProgCond
sourceA shortest program for x under condition y (attained by condComplexity_spec).
Equations
Instances For
Used by
InformationTheory.Kolmogorov.shortestNatCond
sourceThe natural-number code of x's shortest program under condition y.
Equations
Instances For
Used by
InformationTheory.Kolmogorov.shortestProgCond_length
sourceUsed by
InformationTheory.Kolmogorov.shortestProgCond_mem
sourceUsed by
InformationTheory.Kolmogorov.shortestNatCond_injective
sourceUsed by
InformationTheory.Kolmogorov.shortestNatCond_lt_of_lt
sourceUsed by
InformationTheory.Kolmogorov.condComplexity_lt_finite
sourceUsed by
InformationTheory.Kolmogorov.condIncompressible_count
sourceFewer than 2 ^ k naturals have conditional complexity below k, for any
condition y.
@audit:ok