4.5 McMillan の不等式

4.1 節で,語頭符号は一意復号可能な符号の真に狭いクラスであることを見た(例 4.1.5).狭いクラスに制限しているのだから,読みながら区切れるという便利さの代わりに,平均符号長で損をしていてもおかしくない.本節はそうではないことを示す.鍵は,定理 4.2.1 の不等式が語頭性をまったく使わずに一意復号可能性だけから出る,という点にある.

証明では二項定理,すなわち実数と整数に対してが成り立つことを既知として使う.

一意復号可能な符号への拡張

定理 4.5.1(McMillan の不等式). を有限アルファベット,を整数とする.上の一意復号可能な元情報源符号,をその符号語長とすると

𝑥X𝐷(𝑥)1

が成り立つ.

証明. が空なら左辺はで主張は成り立つから,空でないとしてよい.𝐾 :=𝑥𝐷(𝑥)とおく.定義 4.1.1 より符号語は空でないのでであり,である.

の冪を長さごとに数え直す.整数をとると,積を展開して

𝐾𝑘=(𝑥1,,𝑥𝑘)X𝑘𝐷((𝑥1)++(𝑥𝑘))

である.列に対しての長さはちょうどであり,この値は以上以下である.そこで,での像の長さがになるの元の個数をと書くと

𝐾𝑘=𝑘max𝑚=𝑘𝑁(𝑚)𝐷𝑚

となる.

一意復号可能性を数え上げに変える.は単射だから,像の長さがであるの元は,長さの相異なる列に写る.長さの列は本しかないのでであり,上の和の各項は以下である.項の個数はだから

𝐾𝑘𝑘max𝑘+1𝑘max

を得る.これがすべてので成り立つ.

を超えられないことを見る.としてとおく.二項定理の展開はすべての項が正だから,のときの項だけを残して

𝐾𝑘=(1+𝛿)𝑘(𝑘2)𝛿2=𝑘(𝑘1)2𝛿2

である.上の評価と合わせると,すなわちがすべてので成り立つことになる.左辺はとともにいくらでも大きくなるので,これは矛盾である.よってである.

形式化: kraftSum_le_one_of_uniquelyDecodable (ソース)

形式化上の注記. 形式化は,定義 4.1.2 の一意復号可能性を二つに分けて仮定している.符号語の集合に対する述語(符号語を並べてつないだ列が,並べ方が違えば違う列になる)と,写像が単射であることの二つで,合わせると定義 4.1.2 と同じことを言っている.ただし,定義 4.1.2 の一意復号可能性からこの二つを取り出すにはの単射性が要り,それは命題 4.1.3 の後半にあたるので,対応する宣言はない.また,証明の中核にあたる数え上げの定理は Mathlib にあり,形式化はそれを本書の枠組みへつないでいる.

証明の中身は,語頭符号のときの数え上げ(定理 4.2.1)とは別のものである.あちらは深さで場所が重ならないことを一度数えただけだったが,こちらは文字の列をまとめて符号化し,を大きくして矛盾を出す.定理 4.2.1 が語頭性を回の数え上げに直せたのに対し,一意復号可能性から直に取り出せるのは「文字ぶんの列が相異なる列に写る」という形で,本節の証明はそれをについて効かせている.ならは指数で増えるのに,長さで数えた上界はについて一次でしか増えないという,増え方の差が矛盾を生んでいる.

系 4.5.2. を有限アルファベット,を整数とし,上に分布をもつ確率変数とする.上の任意の一意復号可能な元情報源符号についてである.

証明. の符号語長をとすると,定理 4.5.1 よりは Kraft の不等式を満たす.定理 4.3.2 を当ててを得る.

形式化上の注記. 下界には対応する宣言があるが,すべての記号の確率が正である場合について述べてあるので,本文の主張をそのまま覆ってはいない.宣言は entropyD_le_expectedLength_of_uniquelyDecodable (InformationTheory/Shannon/McMillanKraftBridge.lean) である.

系 4.5.3. を有限アルファベット,を整数とする.上の一意復号可能な元情報源符号に対し,上の元語頭符号で,各の符号語長がのそれに等しいものが存在する.

証明. の符号語長をとする.定義 4.1.1 よりであり,定理 4.5.1 よりである.定理 4.2.2 を当てればよい.

形式化上の注記. 系 4.5.3 に対応する単独の宣言はない.定理 4.5.1 の形式化と定理 4.2.2 の形式化を組み合わせれば得られるが,その組み合わせを書いた宣言はない.二つの宣言は符号アルファベットの表し方も違っていて,前者は大きさの有限集合として一般にとり,後者はからまでの整数に固定している.この取り替えも形式化では別に要る.

例 4.5.4(語頭符号への置き換え). 例 4.1.5 の符号は一意復号可能だが語頭符号ではない.その符号語長の組は(2) =2であり,同じ長さの組をもつ二元語頭符号として例 4.1.4がとれる.上のどの分布についても,二つの符号の平均符号長は等しい.

証明. 例 4.1.5 の符号語は01で,長さはである.例 4.1.4𝑐(2) =10も長さがで,例 4.1.4 の証明よりこの三つのあいだに語頭の関係はない.平均符号長は定義 4.1.1 より符号語長の組と分布だけで決まるから,二つの符号で同じ値になる.

系 4.5.2系 4.3.3 を並べると,下界は語頭符号に限っても一意復号可能な符号まで広げても同じである.系 4.5.3 はその理由をもっと直接に述べていて,一意復号可能な符号は,長さを一切変えずに語頭符号に取り替えられる.読みながら区切れるという性質は,ただで手に入るということである.したがって最小の平均符号長を求める問題は,Kraft の不等式を満たし,かつすべてのである長さの組のうちでを最小にするものを探す問題に,何も失わずに書き換えられる.系 4.2.5 より,この二つの条件を満たす長さの組はちょうど元語頭符号の符号語長の組である.次節は,符号アルファベットが文字の場合について,その最小を与える手続きを作る.

InformationTheory — 形式化検証つき情報理論教科書(レビュー版).数式は MathJax + AMS Euler で事前レンダリング.