The Bernoulli entropy identity (N4a) #
For the i.i.d. (Bernoulli) measure bern ν on the one-sided full shift Shift α₀ over a finite
alphabet, the Kolmogorov–Sinai entropy of the coordinate partition equals the single-symbol
Shannon entropy Hnu ν = ∑ i, negMulLog (ν {i}).toReal.
The argument is the classical computation that the entropy of an i.i.d. process is additive over coordinates:
- N4a.1 (cell mass). The depth-
njoin cell of the coordinate partition at an indexf : Fin n → α₀is the length-ncylinder{x | ∀ k : Fin n, x k = f k}, whosebern ν-mass is the product∏ k, (ν {f k}).toRealof single-symbol masses (Measure.infinitePi_pi). - N4a.2 (per-
nentropy). HenceksEntropySeq n = ∑ f, negMulLog (∏ k, p (f k))withp a := (ν {a}).toReal. The per-coordinate factorizationnegMulLog (∏ k, p (f k)) = ∑ k, (∏ j, p (f j)) * (-log (p (f k)))followed by the sum/product swapFinset.sum_prod_piFinset(and∑ a, p a = 1) collapses this ton * Hnu ν. - N4a.3 (Fekete limit). Since
ksEntropySeq n = n * Hnu ν, the averaged sequenceksEntropySeq n / nis eventually the constantHnu ν; by uniqueness of the Fekete limit (tendsto_ksEntropySeq), the partition entropy isHnu ν.
The system entropy identity (ksEntropy).toReal = Hnu ν then follows from the generator reduction
already proved on main (ksEntropy_eq_ksEntropyPartition_of_generating via
coordPartition_isGenerating), taking the ergodicity of the shift as a hypothesis (it is a
sibling node).
Main results #
N4a.0 — a real-analytic per-f factorization #
Per-coordinate factorization of negMulLog of a product. For any finite family
p : Fin n → ℝ of nonnegative reals,
negMulLog (∏ k, p k) = ∑ k, (∏ j, p j) * (-log (p k)). When every p k is nonzero this is the
distributivity of log over the product; when some p k = 0 both sides vanish (the product is
0, and on the right each summand carries the vanishing product factor; the convention
Real.log 0 = 0 keeps the k-summand 0 * 0 = 0).
N4a.1 — the depth-n join cell mass #
The depth-n join cell of the coordinate partition at f : Fin n → α₀ is the cylinder
{x | ∀ k : Fin n, x ↑k = f k}: the cell at coordinate k pulled back along shiftMap^[k] is
{x | x ↑k = f k} (because (shiftMap^[k] x) 0 = x k).
N4a.1 (cell mass). The bern ν-mass of the depth-n join cell at f : Fin n → α₀ is the
product ∏ k, ν {f k} of single-symbol masses (Measure.infinitePi_pi on the cylinder box).
N4a.2 — the per-n entropy is n * Hnu ν #
The single-symbol masses sum to 1: ∑ a, (ν {a}).toReal = 1.
N4a.2 (per-n entropy). The iterated-join entropy of the coordinate partition at depth n
is n * Hnu ν.
N4a — the headline partition identity #
N4a (partition entropy). The Kolmogorov–Sinai entropy of the coordinate partition for the
Bernoulli measure bern ν equals the single-symbol Shannon entropy Hnu ν.
N4a — the system entropy identity #
N4a (system entropy). For the Bernoulli shift, the Kolmogorov–Sinai entropy of the system
equals the single-symbol Shannon entropy Hnu ν.
The coordinate partition is a generator (coordPartition_isGenerating), so the Kolmogorov–Sinai
generator theorem (ksEntropy_eq_ksEntropyPartition_of_generating, on the Fin-reindexed
partition) identifies ksEntropy with the coordinate-partition entropy, which the partition
identity ties to Hnu ν. No ergodicity is needed: the generator reduction is unconditional (it
consumes only the generating property and the standard-Borel structure).