13.6 二部記述と最小記述長

13.4 節13.5 節は,一つに固定した機械について,記述長・重み・停止の三つを調べてきた.本節は記述の作り方のほうに戻る.第12章 定義 12.2.1 の型による二段符号は,系列を「まず型を送り,次に型類の中の位置を送る」と分けて書いた.前半が系列の型を,後半が型だけでは決まらないぶんを担う.同じ分け方を,分布も情報源も持たない一つの自然数に当てるのが本節である.型にあたるのはを含む有限集合で,位置にあたるのはの中でのの番号である.

分け方を変えても記述の長さは変えられない,というのが本節の結論である.どんなをとっても,二つに分けた記述は定数のぶんを除いてより短くならず(定理 13.6.3),いちばんうまいをとればと定数の差まで縮む(定理 13.6.7).そのうえで,をどこまで説明していると言えるかを,定数のゆるみを許して定める.定めるのは枠だけである.モデルの大きさや記述長に制限を課したときにどのが残るかは,本節では扱わない.

有限集合を記述する

定義 13.6.1(有限集合の符号とモデルの記述長). 自然数の有限列に自然数を対応させる符号化を一つ固定する.有限列から自然数を求める手続きと,自然数から有限列を復元する手続きがどちらも書き下せるようなものをとる(たとえば,各項の二進表示の自己限定形(定義 13.4.3)をこの順につなぎ,先頭にもう一つを置いたビット列が表す自然数でよい).を空でない有限集合とし,の要素を小さい順に並べた有限列に,固定した符号化が与える自然数をと書く(定義 13.3.1 と同じ役どころの,別の符号化である.本節のはつねに有限集合を引数にとり,定義 13.3.1 のそれはつねに系列を引数にとる).モデルの記述長 と呼ぶ.

形式化: 符号 modelCode,モデルの記述長 modelComplexity (ソース)

形式化上の注記. 形式化が固定した符号化は,括弧の中に挙げたものではなく,Mathlib がもつ自然数の有限列の標準の符号化である.定義 13.6.1 が符号化に課しているのはどちらの向きの手続きも書き下せることだけで,本節の主張の証明もそれしか使わないから,どちらをとっても主張は成り立つ.符号化に依るのは,主張に現れる定数の値だけである.

括弧の中に挙げた符号化が実際に読み解けることは,定義 13.4.3 で見たとおりである.自己限定形はどこで終わるかを自分で告げるので,つないだ列を先頭から順に区切っていける.先頭にもう一つを置いたのは,全体を一つの自然数の二進表示として読むためで,そうしないと先頭のの並びが読み落とされる.の要素を小さい順に並べたのは,同じ集合に二つの列が対応しないようにするためである.

二部記述の長さは,考えとしては,を書く長さにの中での位置を書く桁を足したものである.位置は以上未満の自然数だから,桁はで足りる.

定義 13.6.2(二部記述の長さ). を空でない有限集合とし

2P(𝑆):=𝐾V(𝑆)+4log2|𝑆|

と定め,による 二部記述の長さ と呼ぶ(4.4 節の天井関数である).

形式化: twoPartLength (ソース)

は有限集合を引数にとる.第12章 定義 12.2.1は系列を引数にとり添字を持つので,二つは別の量である.第項がモデルの記述長(定義 13.6.1)で,第項が位置を書く長さにあたるが,そこに現れるのは桁数そのものではなく,その倍である.本書のに記述を渡す単位では,位置の桁に倍率が二度かかるからである.一度目は,位置とモデルの記述の切れ目が読む側に分かるように位置を自己限定形(定義 13.4.3)にするところ,二度目は,組み立てた記述をに渡すところで,どちらも長さを倍にする.次の定理の証明がその二段である.

定理 13.6.3(二部記述による上界). 定数があって,すべてのと,を含むすべての有限集合について

𝐾V(𝑥)2P(𝑆)+𝜒

が成り立つ.

証明. 復元する手続きを先に書き下す.を,位置を読む・モデルを復元する・その位置の要素を返す,の三段で次のように定める(第引数は使わない).位置を読むところでは,の二進表示から先頭のを落とした列をとし,の先頭から最初のまでのの個数をとして,そのの直後のビットを二進表示として読んだ自然数をとする.モデルを復元するところでは,の残りのビット列をとしてを求め,その値に固定した符号化の復元を当てて自然数の有限列を得る.最後に,その列の先頭を位置と数えて,位置にある項を返す.以上のどこかで形が合わなければ,は値を持たないとする(形が合わないのは,の二進表示が空列である,が現れない,の長さがビットに足りない,から自然数の有限列が得られない,列の項の個数が以下である,の五つの場合である).この対応は,有限個の場合分けと,を走らせるところと,固定した符号化から列を復元するところからなり,どれも計算の手続きで書き下せるから,Church–Turing のテーゼより部分計算可能であり,とくに 定義 13.1.3 の意味で機械である.定理 13.1.7 をこのに当てて定数をとり,と置く.

と,を含む有限集合をとる.だからは空でなく,が定まる.の要素を小さい順に並べたときのの位置を,先頭をと数えてとするとである.命題 13.1.5に当てて,かつを満たすビット列をとる.を,の二進表示の自己限定形(定義 13.4.3)の後ろにをつないだビット列とし,の先頭にを置いたビット列とする.先頭がだから,定義 13.1.2 よりが表す自然数の二進表示はそのものであり,の手続きはそこからをこの順に読み取る.よってであり,長さは

|𝑠|=(2|𝑖|+1)+𝐾U(𝑆)+1

だから,定理 13.1.7 よりである.

位置の桁数を抑える.と置くとだからである.ならである.なら,の二進表示の桁数をとして,先頭の桁がであることからであり,補題 8.2.5 よりである.どちらの場合もである.

に直す.命題 13.4.6のそれぞれに当てるとだから

𝐾V(𝑥)2(2|𝑖|+𝐾U(𝑆)+𝑏+2)+1=4|𝑖|+𝐾V(𝑆)+2𝑏+4

である.定義 13.6.2 より右辺は以下である.

形式化: prefixComplexity_le_twoPartLength (ソース)

定理 13.6.3 は,どんなをとっても,定数のぶんを除けばその二部記述の長さでを書けると言っている.裏を返せば,をうまく選んでも,二部記述の長さが定数のぶんを超えてを下回ることはない.

の選び方には両端がある.一方の端は一点集合で,モデルがそのものを書き下し,位置は何も担わない.もう一方の端はを含む大きな集合で,モデルはほとんど何も言わず,位置が全部を担う.定理 13.6.3 はどちらについても上界を与えるから,どちらへ寄せてもを定数のぶんを超えて下回ることはない.二つの端を長さで比べることに,本節のでは意味がない.定義 13.6.2 が位置の桁を倍しているので,位置が担うぶんだけが膨らみ,比べた差はその倍率を映すからである.以下では一点集合の端だけを押さえる.

命題 13.6.4. 定数があって,すべてのについてが成り立つ(定義 13.6.1 のとおり).

証明. 機械を先に作る.を次のように定める(第引数は使わない).の二進表示が空列なら値を持たない.そうでなければ,その二進表示から先頭のを落とした列をとし,を求めてその値をとし,を返す.を走らせるところと,一つの自然数からなる列に固定した符号化を当てるところは計算の手続きで書き下せるから,Church–Turing のテーゼよりは部分計算可能であり,とくに 定義 13.1.3 の意味で機械である.定理 13.1.7 をこのに当てて定数をとり,と置く.

とする.命題 13.1.5に当てて,かつを満たすビット列をとり,の先頭にを置いたビット列とする.先頭がだから,定義 13.1.2 よりが表す自然数の二進表示はそのものであり,である.よって 定理 13.1.7 よりである.命題 13.4.6のそれぞれに当てると

𝐾V({𝑥})=2𝐾U({𝑥})+12𝐾U(𝑥)+2𝑏+3=𝐾V(𝑥)+𝜒

である.

形式化: modelComplexity_singleton_le (ソース)

最小記述長

定義 13.6.5(最小記述長). に対し

2P(𝑥):=min{2P(𝑆):𝑆 は有限集合で 𝑥𝑆}

と定め,最小記述長 と呼ぶ.

形式化: mdlComplexity (ソース)

命題 13.6.6. とすると,かつを満たす有限集合が存在する.

証明. 一点集合を含む有限集合だから,定義 13.6.5 の最小をとる集合は空でない自然数の集合であり,最小元をもつ.その最小元はにほかならず,しかもを含むある有限集合についてのだから,そのが求めるものである.

形式化: mdlComplexity_spec (ソース)

定理 13.6.7. 定数があって,すべてのについて

2P(𝑥)𝐾V(𝑥)+𝜒かつ𝐾V(𝑥)2P(𝑥)+𝜒

が成り立つ.

証明. 命題 13.6.4 の定数を定理 13.6.3 の定数をとし,の大きいほうとする.とする.

の不等式を示す.だからであり,定義 13.6.2 よりである.一点集合を含む有限集合だから 定義 13.6.5 よりであり,命題 13.6.4 と合わせてである.

の不等式を示す.命題 13.6.6 よりかつを満たす有限集合がある.定理 13.6.3 をこのに当ててである.

形式化: mdlComplexity_sub_prefixComplexity_le (ソース)

定理 13.6.7 は,記述を二つに分けても損も得もしないと言っている.どんな分け方をしても,定数のぶんを除いてより短くはならず,いちばんよい分け方をとれば定数の差まで届く.したがって,二部記述に意味があるとすれば長さそのものではなく,どのがその長さを実現するかのほうである.について言えることを集めた対象であり,位置のほうはを知ってもなお残るばらつきである.

一致するのは定数の差までであって,値そのものではない.の値を返す手続きが無いことは 定理 13.5.1 で見たが,についても同じだ,とは 定理 13.6.7 からは出ない.本書はの計算可能性を述べない.

次の定義は,定数のゆるみを許して「を説明しきっている」という条件を書く.

コルモゴロフ十分統計量

定義 13.6.8(コルモゴロフ十分統計量). とする.有限集合ゆるみのコルモゴロフ十分統計量 であるとは,かつが成り立つことをいう.

形式化: IsSufficientStatistic (ソース)

語を一つ断っておく.第1章 1.9 節が十分と呼んだのは,確率変数を要約する統計量であった.本節が十分と呼ぶのは自然数を含む有限集合であって,確率変数でも統計量でもない.同じ「十分」を冠していても別の対象についての語なので,混ぜて読まないこと.読み方のほうは通じている.第1章ではを知ればについて以上のことは分からない,というのが十分の内容だった.本節では,を知ったあとに残るのはの中での位置だけで,その位置を書くのに要る長さはの記述と合わせてもゆるみの範囲で最短に収まっている,というのが内容である.どちらも「これ以上絞れるものは残っていない」という条件である.

命題 13.6.9. 定数があって,すべてのについて,一点集合のゆるみのコルモゴロフ十分統計量である.

証明. 命題 13.6.4 の定数をとし,とする.である.まただからであり,定義 13.6.2 よりである.命題 13.6.4 より右辺は以下だから,定義 13.6.8 の二つの条件が満たされる.

形式化: exists_isSufficientStatistic_singleton (ソース)

命題 13.6.9 は,定義 13.6.8 の退化した場合である.一点集合はそのものを書き下しているだけなのに,ある定数のゆるみをとればつねに十分統計量になる.定義 13.6.8 は単独では何も絞らない,ということである.

では,どういうを見たいのか.見たいのは,モデルの記述長がよりずっと短く,それでいて十分であるようなである.そういうがあれば,の記述は「短く書けるモデル」と「その中での位置」に割れていて,前者がの中の規則的な部分を,後者がモデルを知ってもなお残るばらつきを担う,と読める.第12章の型による二段符号で,前半が系列の型を,後半が型だけでは決まらないぶんを担っていたのと同じ構図である.本書はこの読みを主張にはしない.

系 13.6.10. 定数があって,すべてのについて

log2𝑃V(𝑥)𝜒2P(𝑥)2(log2𝑃V(𝑥))+1+𝜒

が成り立つ.

証明. 定理 13.6.7 の定数をとし,とする.左の不等式は,定理 13.4.10 の左の不等式と 定理 13.6.7 の第の不等式をつないで

log2𝑃V(𝑥)𝐾V(𝑥)2P(𝑥)+𝜒

とし,を移項すれば出る.右の不等式は,定理 13.6.7 の第の不等式と 定理 13.4.10 の右の不等式をつないで

2P(𝑥)𝐾V(𝑥)+𝜒2(log2𝑃V(𝑥))+1+𝜒

とすれば出る.

形式化上の注記. 系 13.6.10 に対応する単独の宣言は無い.定理 13.4.10 に紐付けた二つの宣言と 定理 13.6.7 に紐付けた宣言をつなげば得られる.三つはどれも同じ prefixComplexity を経由するので,つなぐときに対象を取り替える必要はない.

本章がを抑えた式を並べておく.命題 13.4.6は等式だから,いちばん細かい.定理 13.4.10とその倍にを足したもので挟んだ.定理 13.6.7と定数の差で一致することを言う.系 13.6.10 は後の二つを直接比べたもので,最小記述長とをとった万能確率も,やはり係数と定数のゆるみの範囲で互いを決める.三つのどれも,値を求める役には立たない.定理 13.2.3 のとおりを求める手続きは無く,定理 13.5.1 のとおりについても同じだからである.それでも三つが互いを定数と係数の範囲で決め合うことには意味がある.記述の短さ,でたらめなプログラムが当てる重みの大きさ,そして二つに分けた記述の短さが,同じ一つのことを測っているからである.

本章の出発点は,一本の系列の単純さを分布によらずに測ることだった.13.1 節から 13.3 節は素朴な記述長でそれを測り,1 文字あたりの平均がエントロピーに一致することを見た.13.4 節から本節までは機械を語頭のない形に取り替え,記述長が重みとも二部記述とも定数倍の範囲で同じものを測ることを見た.いっぽう,値を求める手続きが無いことを本章が示したのは,𝐾U定理 13.2.3),𝐾V定理 13.5.1),Ω定理 13.5.8)の三つである.測り方が定まっているのに測れない,というのが本章の残す形である.

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