52
アルゴリズム 2011 1 11 , により, 2010 7 13 から 7 16 にかけて, 大学に おいて われた する ノート ある. , アルゴリズム して, program-size complexity (prefix- free Kolmogorov complexity れる) する , する 2 randomness (Martin-L¨ of randomness Chaitin randomness) , Chaitin Ω number ( れる) する らかにするこ ある. 1 , prefix-free らかにする. される prefix-free する Kraft , に引 される ある. 2 , program-size complexity する らかにする. program-size complexity , いる optimal prefix-free machine によって異 るが, , えられ るこ される. program-size complexity がこ において される , , 3 において, Chaitin randomness . 3 , Martin-L¨ of randomness Chaitin randomness . られる Kraft-Chaitin Theorem される ある. 4 , Chaitin Ω number らかにする. Ω number Chaitin random (したがって, Martin-L¨ of random ) あるこ される. また, Ω number づけを , Ω number Chaitin random があるこ . 1

アルゴリズム的情報理論入門 - ODN3 randomness 27 4 Chaitin numbers 39 1 prefix-free 集合 この章の目的は, prefix-free 集合の基本性質を明らかにすることである

  • Upload
    others

  • View
    0

  • Download
    0

Embed Size (px)

Citation preview

Page 1: アルゴリズム的情報理論入門 - ODN3 randomness 27 4 Chaitin numbers 39 1 prefix-free 集合 この章の目的は, prefix-free 集合の基本性質を明らかにすることである

アルゴリズム的情報理論入門

2011年 1月 11日

本稿は,只木孝太郎先生により, 2010年 7月 13日から 7月 16日にかけて,東北大学に

おいて行われた集中講義に関する講義ノートである.

本稿の目的は,アルゴリズム的情報理論の入門として, program-size complexity (prefix-

free Kolmogorov complexityとも呼ばれる)に関する性質,実数に関する 2つの randomness

の概念 (Martin-Lof randomnessと Chaitin randomness)の同値性, Chaitinの Ω number (停

止確率とも呼ばれる)に関する性質を明らかにすることである.

第 1章では, prefix-free集合の性質を明らかにする. この章で示される prefix-free集

合に関する Kraft の不等式は, 後にも頻繁に引用される重要な性質である. 第 2章では,

program-size complexityに関する性質を明らかにする. program-size complexityは,定義

に用いる optimal prefix-free machineによって異なるが,その差は,定数で一様に抑えられ

ることが示される. program-size complexityの一般的な上界がこの章において探求される

が, その結果は, 第 3章において, Chaitin randomnessの定義の動機となる. 第 3章では,

Martin-Lof randomnessと Chaitin randomnessの同値性を示す. この同値性の証明に用い

られる Kraft-Chaitin Theoremは様々な場面で利用される重要な定理である. 第 4章では,

Chaitinの Ω numberの性質を明らかにする. Ω numberは Chaitin randomな (したがって,

Martin-Lof randomな) 実数の具体例であることが示される. また, Ω numberとなる実数

の特徴づけを与え, Ω numberと Chaitin randomな実数との間に密接な関係があることを

見る.

1

Page 2: アルゴリズム的情報理論入門 - ODN3 randomness 27 4 Chaitin numbers 39 1 prefix-free 集合 この章の目的は, prefix-free 集合の基本性質を明らかにすることである

目次

1 prefix-free集合 2

2 program-size complexity 6

3 randomness 27

4 Chaitin Ω numbers 39

1 prefix-free集合

この章の目的は, prefix-free集合の基本性質を明らかにすることである. まず,有限 2進

列と実数の半開区間との間に対応を与え, prefix-free集合を実数の半開区間に関する言葉

で特徴づける. また, prefix-free集合は, Kraftの不等式と呼ばれる主張を成立させることを

見る.

定義 1.1. 0,1∗ で有限 2進列全体の集合を表し, Nで自然数全体の集合を表す. つまり,

0,1∗ = λ,0, 1,00,01, 10,11,000,001,010, · · · , (1)

N = 0,1,2,3, · · · . (2)

ここで, λは空列を表す.

注意 1.2. 0,1∗ と N の元は式 (1), (2)での表記の順で対応させ, 同一視する. 詳しく言

うと,ϕ(s) = 1s(2) − 1 (3)

で定まる ϕ : 0,1∗ → Nで対応させる. ここで, 1sは有限 2進列であり,有限 2進列 1と

有限 2進列 sの concatenation (連接)を表す. そして, 1s(2)は有限 2進列 1sで 2進表示さ

れる自然数を表す.

以下では,自然数の表示として 2進表示を用いる場合と 10進表示を用いる場合がある.

それらの表示を明確にする必要があるときには,添え字として 2進表示の場合は (2)を, 10

進表示の場合は (10)を付けて表示を明確にする.

2

Page 3: アルゴリズム的情報理論入門 - ODN3 randomness 27 4 Chaitin numbers 39 1 prefix-free 集合 この章の目的は, prefix-free 集合の基本性質を明らかにすることである

例 1.3. 式 (3)より以下が成立する.

ϕ(λ) = 1(2) − 1 = 0(10),

ϕ(0) = 10(2) − 1 = 1(10),

ϕ(1) = 11(2) − 1 = 2(10).

ϕは全単射である. 以下では,しばしば,有限 2進列 sと自然数 ϕ(s)とを同一視する.

定義 1.4. s, t ∈ 0,1∗ に対して, sは tの prefix (接頭語)であるとは,

∃u ∈ 0,1∗ (su= t) (4)

となることである. このとき, s⊂ tとかく.

例 1.5. 0 ⊂ 01であるが, 1 1 01である.

定義 1.6. L ⊂ 0,1∗ に対して, Lが prefix-freeであるとは,

∀ s, t ∈ L (s, t ⇒ s1 t) (5)

が成り立つことである. 言い換えれば,

∀ s, t ∈ L (s⊂ t ⇒ s= t) (6)

が成り立つことである.

例 1.7. 0,10は prefix-freeであるが, 1,10は prefix-freeではない.

prefix-free集合の幾何学的解釈

各 s ∈ 0,1∗ に対して,次式で定義される半開区間 I (s) ⊂ [0,1)を対応させる.

I (s) = [0.s,0.s+ 2−|s|). (7)

例 1.8. I (00) = [0.00,0.00+ 2−|00|) = [0,2−2) = [0, 14)であり, I (λ) = [0,1)である (下図を

見よ).

0 1

I (λ)

3

Page 4: アルゴリズム的情報理論入門 - ODN3 randomness 27 4 Chaitin numbers 39 1 prefix-free 集合 この章の目的は, prefix-free 集合の基本性質を明らかにすることである

0 1/2 1

I (0) I (1)

0 1/4 1/2 3/4 1

I (00) I (01) I (10) I (11)

図. 有限 2進列の幾何学的解釈

I (s)の定め方から,次の性質の成立は明らかである.

性質 1.9. 任意の s ∈ 0,1∗ に対して,

I (s) ) I (s0), I (s1) , ∅, (8)

I (s0)∩ I (s1) = ∅ (9)

が成立する.

性質 1.10.任意の s, t ∈ 0,1∗ に対して,

s⊂ t ⇐⇒ I (s) ⊃ I (t), (10)

I (s) ⊂ I (t) or I (s) ∩ I (t) = ∅ or I (s) ⊃ I (t) (11)

が成立する.

Proof. 任意に s, t ∈ 0,1∗ を取る. まず,以下を示す.

s= t =⇒ I (s) = I (t), (12)

s( t =⇒ I (s) ) I (t), (13)

s) t =⇒ I (s) ( I (t), (14)

s1 t & s2 t =⇒ I (s) ∩ I (t) = ∅. (15)

明らかに, s= t ならば, I (s) = I (t)である. s( t ならば, b1, · · · ,bn ∈ 0,1を sb1 · · ·bn = t

とすれば, (8)より,

I (s) ) I (sb1) ) I (sb1b2) ) · · · ) I (sb1 · · · bn) = I (t) (16)

を得る. s ) t ならば, (16)と同様にして, I (s) ( I (t) を得る. 最後に, s 1 t かつ s 2 t の

ときを考える. u ∈ 0,1∗ を, u ⊂ s, t となる有限 2進列の中で長さが最も長いものとす

4

Page 5: アルゴリズム的情報理論入門 - ODN3 randomness 27 4 Chaitin numbers 39 1 prefix-free 集合 この章の目的は, prefix-free 集合の基本性質を明らかにすることである

る. すると一般性を失うことなく, u0 ⊂ sかつ u1 ⊂ t と仮定することができる. したがっ

て, I (u0) ⊃ I (s) かつ I (u1) ⊃ I (t) である. 一方 (9)より, I (u0) ∩ I (u1) = ∅ であるので,

I (s) ∩ I (t) = ∅を得る.

さて, s ⊂ t ならば, I (s) ⊃ I (t)であることは,今まで示したことから明らかである. s 1 t

のときを考える. このとき, s 2 t ならば I (s) ∩ I (t) = ∅であり,一方, s ⊃ t ならば s ) t で

なくてはならず, I (s) ( I (t)となる. したがって,何れにせよ, I (s) 2 I (t)である. このよう

にして, (10)が成立する.

また, s, tについて,s⊂ t or s⊃ t or (s1 t & s2 t)

であるから,最初に示した性質より, (11)を得る.

定理 1.11. L ⊂ 0, 1∗ に対して,

Lは prefix-free⇔ ∀ s, t ∈ L (s, t ⇒ I (s) ∩ I (t) = ∅). (17)

Proof. 以下のように論理式を変形できる.

Lは prefix-free⇐⇒ ∀ s, t ∈ L (s, t ⇒ s1 tかつ s2 t)

⇐⇒ ∀ s, t ∈ L (s, t ⇒ I (s) 2 I (t)かつ I (s) 1 I (t)) (∵ (10)より)

⇐⇒ ∀ s, t ∈ L (s, t ⇒ I (s) ∩ I (t) = ∅). (∵ (11)より)

定理 1.12(Kraftの不等式). L ⊂ 0,1∗ を prefix-freeとする. このとき,∑

s∈L 2−|s| ≤ 1が成

り立つ.

2種類の証明を与える.

(幾何学的証明). 任意の s ∈ 0, 1∗ に対し, I (s) ⊂ [0,1)であり,また, I (s)の長さを |I (s)|で表すと |I (s)| = 2−|s| である. 一方, (17)より,異なる s, t ∈ Lに対し, I (s) ∩ I (t) = ∅である.

したがって, ∑s∈L

2−|s| =∑s∈L|I (s)| =

∣∣∣∣∣∣∣∪s∈L I (s)

∣∣∣∣∣∣∣ ≤ |[0,1)| = 1.

(別証明). Lが無限集合の場合のみを考える. L = s1, s2, · · · とし, Lk = s1, s2, · · · , skと

5

Page 6: アルゴリズム的情報理論入門 - ODN3 randomness 27 4 Chaitin numbers 39 1 prefix-free 集合 この章の目的は, prefix-free 集合の基本性質を明らかにすることである

する. Lは prefix-freeなので, Lkもまた prefix-freeである. nと Vi (i ∈ 1, · · · , k)を

n = max|s1| , · · · , |sk|,Vi = t ∈ 0,1n | si ⊂ t

と定める. Vi ⊂ 0,1n より,∪k

i=1 Vi ⊂ 0,1n が成り立つ. また, Lk は prefix-freeなので,

Vi ∩ V j = ∅ (i , j)である. よって,

k∑i=1

#Vi = #

k∪i=1

Vi

≤ #0,1n = 2n (18)

である. 一方, #Vi = 2n−|si | であるから,不等式 (18)の左辺に代入し,両辺を 2nで割ると,

k∑i=1

2−|si | ≤ 1 (19)

が得られる. 各 k ∈ Nについて,不等式 (19)が成立するので,

∑s∈L

2−|s| = limk→∞

k∑i=1

2−|si | ≤ 1

が成り立つ.

2 program-size complexity

この章の目的は, optimal (prefix-free) machineと program-size complexityを定義し,そ

れらの性質を調べることである. machineとは, 定義域が 0,1∗ の prefix-freeな部分集

合であるような partial recursive function (部分再帰的関数) のことをいう. まず, optimal

machineを定義して,そのような machineの存在や性質を調べる. 次に, optimal machine

を用いて,有限 2進列 sに対する program-size complexityH(s)の概念を導入し,上界に関

する事実を中心に H(s)の性質を調べる. そして,任意の optimal machineVについて,集合

V−1(s) = p ∈ 0,1∗ | V(p) = sの性質を調べる.

一般に,関数 f の定義域を dom(f )で表し,値域を ran(f )で表す.

定義 2.1. partial recursive functionf : 0,1∗ −→ 0,1∗ が (prefix-free) machineであると

は, dom(f )が prefix-freeであることをいう.

例 2.2. “恒等写像”のmachineによる表現:

6

Page 7: アルゴリズム的情報理論入門 - ODN3 randomness 27 4 Chaitin numbers 39 1 prefix-free 集合 この章の目的は, prefix-free 集合の基本性質を明らかにすることである

1. partial recursive functionI : 0,1∗ → 0,1∗ を

dom(I ) = 0,1∗,I (s) = s

で定める. 例えば, 0,01 ∈ dom(I )なので, dom(I )は prefix-freeではない. したがっ

て, I はmachineではない.

2. 一般に s ∈ 0,1∗ に対し, s= b1b2 · · · bn (ここで, bi = 0 or 1)とおき,

s= 0b10b20 · · ·0bn1

で sを定義する. 但し,空列 λについては, λ = 1と定める. すると, s 7→ sは単射で

ある. h : 0,1∗ → 0,1∗ を,

dom(h) = s | s ∈ 0,1∗,h(s) = s

(20)

と定義する. dom(h)は prefix-freeで,かつ, hは partial recursive functionなので, h

はmachineである.

定義 2.3. 任意の machineM と任意の s ∈ 0,1∗ に対し, HM(s)を

HM(s) = min |p| | p ∈ 0,1∗かつ M(p) = s (21)

と定める. 但し, |p| | p ∈ 0,1∗かつ M(p) = s = ∅のときは,

HM(s) = +∞ (22)

と定める.

M を解凍アルゴリズム (展開アルゴリズム)であると考えると, HM(s)は M によって s

に展開される最も短い入力列の長さを表す.

例 2.4. 例 2.2のmachinehについて,

Hh(s) = min |p| | p ∈ 0,1∗かつ h(p) = s= min|s| = |s| = 2|s| + 1

(23)

が成立する.

定義 2.5. machineU が optimal であるとは,

∀M : machine ∃d ∈ N ∀ s ∈ 0,1∗ (HU(s) ≤ HM(s) + d) (24)

であることをいう.

7

Page 8: アルゴリズム的情報理論入門 - ODN3 randomness 27 4 Chaitin numbers 39 1 prefix-free 集合 この章の目的は, prefix-free 集合の基本性質を明らかにすることである

定理 2.6. U をmachineとする. このとき, U が optimalであることは,次と同値である:

∀M : machine∃d ∈ N ∀ p ∈ dom(M) ∃q ∈ dom(U) (U(q) = M(p)かつ |q| ≤ |p|+d). (25)

Proof. Mを machineとし, d ∈ Nとする. このとき,次を示せばよい.

∀s ∈ 0,1∗ (HU(s) ≤ HM(s) + d)

⇔ ∀ p ∈ dom(M) ∃q ∈ dom(U) (U(q) = M(p)かつ |q| ≤ |p| + d).(26)

(26)の⇒を示す. 任意の s ∈ 0,1∗ に対し,

HU(s) ≤ HM(s) + d (27)

が成り立つと仮定する. 任意に p ∈ dom(M) を取る. 明らかに, p ∈ q ∈ 0,1∗ | M(q) =

M(p) であるから, HM の定義より,

HM(M(p)) = min |q| | q ∈ 0,1∗かつ M(q) = M(p) ≤ |p|

を得る. この不等式と仮定 (27)より,

HU(M(p)) ≤ HM(M(p)) + d ≤ |p| + d (28)

が成立する. 不等式 (28)より, HU(M(p)) , ∞ であるから,ある q ∈ dom(U) が存在して,

U(q) = M(p)かつ |q| = HU(M(p))を満たす. 再び不等式 (28)より, |q| ≤ |p| + dである.

(26)の⇐を示す. 任意の p ∈ dom(M)に対し,

∃q ∈ dom(U) (U(q) = M(p)かつ |q| ≤ |p| + d) (29)

が成り立つと仮定する. 任意に s ∈ 0,1∗ を取る. M(p) = sとなる p ∈ 0,1∗ が存在しないとき,すなわち, HM(s) = ∞のときは,明らかに,

HU(s) ≤ HM(s) + d

が成立する. そうでないときを考える. p0 を M(p) = sを満たす pのうちで長さが最小の

もの,すなわち,HM(s) = |p0|かつ M(p0) = s

であるとする. 仮定 (29)より,ある q0 ∈ dom(U)が存在し,

U(q0) = M(p0) = sかつ |q0| ≤ |p0| + d = HM(s) + d

を満たす. したがって,HU(s) ≤ |q0| ≤ HM(s) + d

が成立する.

8

Page 9: アルゴリズム的情報理論入門 - ODN3 randomness 27 4 Chaitin numbers 39 1 prefix-free 集合 この章の目的は, prefix-free 集合の基本性質を明らかにすることである

次の定理は,後に証明を与える. (25ページを見よ.)

定理 2.7. optimal machineが存在する.

定理 2.8. U と U′ を optimal machineとする. このとき,

∃ c ∈ N ∀ s ∈ 0,1∗ |HU(s) − HU′(s)| ≤ c

が成り立つ.

Proof. Uは optimalなので,ある d ∈ Nが存在して,

∀ s ∈ 0,1∗ (HU(s) ≤ HU′(s) + d)

が成立する. 同様に, U′ は optimalなので,ある d′ ∈ Nが存在して,

∀ s ∈ 0,1∗ (HU′ (s) ≤ HU(s) + d′)

が成立する. よって, c = maxd,d′と定めれば,

∀ s ∈ 0,1∗ (|HU(s) − HU′(s)| ≤ c)

を得る.

この定理により,任意の optimal machineU, U′ について HU と HU′ との誤差は高々定

数で一様に抑えられることが分かる.

定義 2.9. optimal machineU を一つ固定する. H : 0,1∗ → Nを

H(s) = HU(s)

で定める. この H(s) を sの program-size complexity (Kolmogorov complexity)と呼

ぶ.

次の定理は, optimal machineの定義,及び, H(s)の定義から明らかに成り立つ.

定理 2.10.∀M : machine ∃d ∈ N ∀s ∈ 0,1∗ (H(s) ≤ HM(s) + d).

sに依存しない定数 dを無視すれば, H(s)は,あらゆる解凍 (展開)アルゴリズムを考え

たときの最適圧縮時の sのサイズである.

9

Page 10: アルゴリズム的情報理論入門 - ODN3 randomness 27 4 Chaitin numbers 39 1 prefix-free 集合 この章の目的は, prefix-free 集合の基本性質を明らかにすることである

定義 2.11.任意の s ∈ 0,1∗ に対し, s∗ を

s∗ = minU−1(s)

(= min p ∈ dom(U) | U(p) = s)(30)

と定める.

定理 2.12.任意の s ∈ 0,1∗ に対し,

s= U(s∗)かつ H(s) = |s∗|かつ s∗ , λ

が成立する.

Proof. s= U(s∗)と H(s) = |s∗|は s∗ の定義,及び, U の全射性よりその成立は明らかであ

る. s∗ , λを示す.

s∗ = λ を仮定する. このとき, λ ∈ dom(U) となる. dom(U) は prefix-freeなので

dom(U) = λが成り立つ. したがって, ran(U) = sであるが,これは U の全射性に矛盾す

る.

定理 2.13. ∑s∈0,1∗

2−H(s) ≤ 1.

Proof. Kraftの不等式と定理 2.12より,

1 ≥∑

p∈dom(U)

2−|p| ≥∑

s∈0,1∗2−|s

∗ | =∑

s∈0,1∗2−H(s)

が成り立つ.

N+ を

N+ = N \ 0(= 1,2,3,4, · · · )

と定める.

定理 2.14.以下が成立する:

(i) : ∀n ∈ N+ #s ∈ 0,1∗ | H(s) < n < 2n,

(ii) : ∀n ∈ N+ ∃s ∈ 0,1n H(s) ≥ |s|,(iii) : H(s)は非有界,つまり, ∀n ∈ N+ ∃s ∈ 0, 1∗ H(s) ≥ n,

(iv) : lims→∞

H(s) = ∞.

10

Page 11: アルゴリズム的情報理論入門 - ODN3 randomness 27 4 Chaitin numbers 39 1 prefix-free 集合 この章の目的は, prefix-free 集合の基本性質を明らかにすることである

Proof. (i) を示す. 任意に n ∈ N+ を取る. 任意の s ∈ 0,1∗ に関して,

H(s) < n ⇐⇒ |s∗| < n

であり, s 7→ s∗ は単射である. 長さが n未満の有限列の個数は 2n − 1個であるから, s∗ < n

を満たす s ∈ 0,1の個数は高々 2n − 1個である. したがって,

#s ∈ 0,1∗ | H(s) < n < 2n

が成立する.

(ii) を示す. 任意に n ∈ N+ を取る. #0,1n = 2nであるから, (i) より,ある s ∈ 0,1nが存在して,

H(s) ≥ n = |s|

を満たす.

(iii) は,次に示す (iv) の系として得られる.

(iv) を示す. 任意に n ∈ N+ を取る. このとき, ある t ∈ 0,1∗ が存在して, 任意の

s ∈ 0,1∗ で s> t(つまり, ϕ(s) > ϕ(t))を満たすとき,

H(s) ≥ n

が成り立つことを示せばよい. (i) より, s ∈ 0,1∗ | H(s) < n は有限集合である.

その最大値を t とおく. 任意に s′ ∈ 0,1∗ で s′ > t を満たすものを取る. すると,

s′ < s ∈ 0,1∗ | H(s) < nより, H(s′) ≥ nが成立する.

定理 2.15(H(s)の一般的な上界 I).

∃d ∈ N ∀ s ∈ 0,1∗ (H(s) ≤ 2 |s| + d).

Proof. machinehを例 2.2のものとする. 例 2.4より,任意の s ∈ 0,1∗ に対して,

Hh(s) = 2 |s| + 1

である. したがって,定理 2.10より,ある d′ ∈ Nが存在して,任意の s ∈ 0,1∗ に対して,

H(s) ≤ Hh(s) + d′ = 2 |s| + d′ + 1

を満たす.

定理 2.16(H(s)の一般的な上界 II) . ある d ∈ Nが存在して,任意の s ∈ 0,1∗ に対し,

H(s) ≤ |s| + H(|s|) + d

が成立する.

11

Page 12: アルゴリズム的情報理論入門 - ODN3 randomness 27 4 Chaitin numbers 39 1 prefix-free 集合 この章の目的は, prefix-free 集合の基本性質を明らかにすることである

Proof. partial functionM : 0,1∗ → 0,1∗ を定義域を

dom(M) = ps | U(p) = |s|

と定め, U(p) = |s|のとき, M(ps)の値を

M(ps) = s

と定める.

主張. M は well-definedである.

∵ 任意に p, p′, s, s′ ∈ 0,1∗ で ps= p′s′ かつ U(p) = |s| かつ U(p′) = |s′| を満たすものを取る. このとき, s = s′ を示せばよい. ps= p′s′ より, p ⊂ p′ または p ⊃ p′ である.

p, p′ ∈ dom(U) かつ dom(U) は prefix-freeであるので, p = p′ が成り立つ. したがって,

ps= p′s′ = ps′ より, s= s′ を得る. (主張)

次に, M がmachineであることを示す.

主張. dom(M)は prefix-freeである.

∵任意に q,q′ ∈ dom(M)で q ⊂ q′ を満たすものを取る. このとき, q = q′ を示せばよい.

q,q′ ∈ dom(M)より, p, p′, s, s′ ∈ 0,1∗ で

q = psかつ q′ = p′s′かつ U(p) = |s|かつ U(p′) =∣∣∣s′∣∣∣

を満たすものが存在する. ps = q ⊂ q′ = p′s′ より, p ⊂ p′ または p ⊃ p′ が成り

立つ. p, p′ ∈ dom(U) かつ dom(U) は prefix-freeなので, p = p′ が成立する. よって,

|s| = U(p) = U(p′) = |s′|を得る. したがって, |q| = |ps| = |p′s′| = |q′|である. q ⊂ q′ より,

q = q′ が成立する. (主張)

主張. M : 0,1∗ → 0,1∗ は partial recursive functionである.

∵ M は 0,1∗ から 0,1∗ への部分関数であることは明らかなので, recursiveであるこ

とを示せばよい. M を計算する Algorithm Aを次のように定める.

Algorithm A .入力 t ∈ 0,1∗ が与えられたとき,

[1]: t = λならば, rejectする (無限ループする). そうでなければ, [2] へ進む.

[2]: 各 i = 1,2, · · · , |t| に対し, pi , si ∈ 0,1∗ を pi si = t かつ |pi | = i で定義する.

U(p1),U(p2), · · · ,U(p|t|) を時分割で並列計算する. その最中,もしある i について, U(pi)

の計算が停止したら [3] へ進む.

[3]: U(pi) = |si |ならば, si を出力して停止する. そうでなければ, rejectする.

12

Page 13: アルゴリズム的情報理論入門 - ODN3 randomness 27 4 Chaitin numbers 39 1 prefix-free 集合 この章の目的は, prefix-free 集合の基本性質を明らかにすることである

Aは M を計算するので M は recursiveである. (主張)

以上より, M は machineであることが分かった. したがって,定理 2.10より,定数 dが

存在して,∀ s ∈ 0,1∗ H(s) ≤ HM(s) + d (31)

が成立する. 任意に s ∈ 0,1∗ に取る. |s|に対し,定義 2.11の |s|∗ を考えると, U(|s|∗) = |s|なので, M(|s|∗ s) = sである. したがって,

HM(s) ≤ ||s|∗ s| = ||s|∗| + |s| = H(|s|) + |s| = |s| + H(|s|)

が成立する. 不等式 (31)と合わせると,

H(s) ≤ HM(s) + d ≤ |s| + H(|s|) + d

が得られる. ここで, dは sに依存しない. したがって,定理は証明された.

系 2.17(H(s)の一般的な上界 III) . ある d ∈ Nが存在して,任意の s ∈ 0,1に対し,

H(s) ≤ |s| + 2 log2(|s| + 1)+ d

が成立する.

Proof. ある d ∈ Nが存在して,任意の n ∈ Nに対し,

H(n) ≤ 2 log2(n+ 1)+ d (32)

を示せば,定理 2.16より,示すべき主張が従う.

式 (3)の ϕ : 0,1∗ → Nを用いて, sを s= ϕ−1(n)と定める.このとき, n = ϕ(s) = 1s(2)−1

であり,よって, 1s(2) = n+ 1である. したがって, |1s| = blog2(n+ 1)c + 1であり,

|s| = blog2(n+ 1)c

を得る. 定理 2.15より,

H(n) = H(s) ≤ 2 |s| + d ≤ 2 log2(n+ 1)+ d + 1

が得られる. ここで,定数 d + 1は nに依存しないので,定理が証明された.

注意 2.18.適当に U を選び直せば,定理 2.16において, d = 1とできる. そのためには,

U′(ip) =

U(p) i = 0のとき,

M(p) i = 1のとき(33)

13

Page 14: アルゴリズム的情報理論入門 - ODN3 randomness 27 4 Chaitin numbers 39 1 prefix-free 集合 この章の目的は, prefix-free 集合の基本性質を明らかにすることである

と定める (M は U′ に依存して決まるので再帰定理を使って定める). U が optimalである

から, U′ も optimalとなる.

しかしながら, U をどう選び直そうと,定理 2.16において, d = 0とすることはできない.

すなわち,次は成り立たない:

∀ s ∈ 0,1∗ H(s) ≤ |s| + H(|s|). (34)

これを見るため, (34)が成り立つと仮定して,矛盾を導こう. はじめに,定理 2.13より,∑s∈0,1∗

2−H(s)

は収束することに注意する. (34)より,

∑s∈0,1∗

2−H(s) ≥∑

s∈0,1∗2−|s|−H(|s|) =

∞∑n=0

∑s∈0,1n

2−|s|−H(|s|)

=

∞∑n=0

2n · 2−n−H(n) =

∞∑n=0

2−H(n)

=∑

s∈0,1∗2−H(s)

が成り立つが,これは (34)でつねに等号が成り立つことを意味する. したがって,

∀ s ∈ 0,1∗ H(s) = |s| + H(|s|)

が成り立つ. 一方,定理 2.10より,ある d ∈ Nが存在して,

∀n ∈ N H(0n) ≤ H(n) + d

が成り立つ. この 2式を合わせると,

∀n ∈ N n ≤ H(n) + d

が得られる. しかし, (32)が成り立つので, n→ ∞とすると矛盾が得られる.

H(s) の一般的な上界として, 定理 2.15では 2 |s| + d であったものが, 系 2.17では

|s| + 2 log2(|s| + 1)+ dと,より小さく改善されている. それでは,この上界はどこまで小さ

く取ることが可能であろうか?この疑問に答えるのが次の定理 2.19と定理 2.21である.

はじめに,定理 2.19は, H(s)の一般的な上界の “下界” を与えている.

14

Page 15: アルゴリズム的情報理論入門 - ODN3 randomness 27 4 Chaitin numbers 39 1 prefix-free 集合 この章の目的は, prefix-free 集合の基本性質を明らかにすることである

定理 2.19.任意の関数 f : N→ Rに対して,

∀ s ∈ 0, 1∗ H(s) ≤ |s| + f (|s|) (35)

ならば∞∑

n=0

2− f (n) ≤ 1. (36)

Proof. ∀ s ∈ 0,1∗ H(s) ≤ |s| + f (|s|)と仮定すると,定理 2.13より,

1 ≥∑

s∈0,1∗2−H(s) ≥

∑s∈0,1∗

2−|s|− f (|s|) =∞∑

n=0

∑s∈0,1n

2−|s|− f (|s|) =∞∑

n=0

2n · 2−n− f (n) =

∞∑n=0

2− f (n)

が成り立つ.

系 2.20.次の 2つはどちらも成り立たない:

∃d ∈ N ∀ s ∈ 0, 1∗ (H(s) ≤ |s| + d), (37)

∃d ∈ N ∀ s ∈ 0, 1∗ (H(s) ≤ |s| + log2(|s| + 1)+ d). (38)

Proof. 仮に (37)が成り立つとすると,定理 2.19より, f (n) = dなる関数 f : N → Rに対して (36)が成り立つはずである. しかし,それは

∞∑n=0

2− f (n) =

∞∑n=0

2−d = ∞

に反する.

同様にして,仮に (38)が成り立つとすると, f (n) = log2(n+ 1)+ dなる関数 f : N → Rに対して (36)が成り立つはずである. しかし,それは

∞∑n=0

2− f (n) =

∞∑n=0

2− log2(n+1)−d = 2−d∞∑

n=0

1n+ 1

= ∞

に反する.

したがって特に, (37)が成り立たないことから, H(s)の一般的な上界では, |s|に加えて,

定理 2.16の H(|s|) や系 2.17の 2 log2(|s| + 1)などのような非有界な項が必ず必要である

ことがわかる.

一方,次の定理は,定理 2.19で与えた H(s)の一般的な上界の下界が,実は “下限” になっ

ていることを保証するものである.

15

Page 16: アルゴリズム的情報理論入門 - ODN3 randomness 27 4 Chaitin numbers 39 1 prefix-free 集合 この章の目的は, prefix-free 集合の基本性質を明らかにすることである

定理 2.21.任意の total recursive functionf : N→ Nに対して,

∞∑n=0

2− f (n) < ∞ (39)

ならば∃d ∈ N ∀ s ∈ 0, 1∗ H(s) ≤ |s| + f (|s|) + d. (40)

Proof. 証明は,後述の Krfat-Chaitin Theorem (定理 3.9)による. これは演習問題として残

しておく.

Kraft-Chaitin Theoremを用いることで,更に,次の定理が証明できる.

定理 2.22.任意の total recursive functionf : N→ Nに対して,

∞∑n=0

2− f (n) ≤ 1 (41)

ならば,ある optimal machineVが存在して,

∀ s ∈ 0,1∗ HV(s) ≤ |s| + f (|s|) + 1 (42)

が成り立つ.

すなわち,定理 2.21の定数 dは, f に更に制約を入れれば, H(s)に定義に用いる optimal

machineを適当に選び直すことにより, 1にすることができるのである. しかしながら,こ

の定数 dを 0にすることはできない. 次の定理は,これを主張するものである.

定理 2.23.次の主張は成り立たない: 任意の total recursive functionf : N→ Nに対して,

∞∑n=0

2− f (n) ≤ 1 (43)

ならば,ある optimal machineVが存在して,

∀ s ∈ 0,1∗ HV(s) ≤ |s| + f (|s|) (44)

となる.

Proof. 条件 ∀n ∈ N f (n) = n+ 1で定義される total recursive functionf : N → Nを考えよう. このとき,

∞∑n=0

2− f (n) =

∞∑n=0

2−n−1 = 1 (45)

16

Page 17: アルゴリズム的情報理論入門 - ODN3 randomness 27 4 Chaitin numbers 39 1 prefix-free 集合 この章の目的は, prefix-free 集合の基本性質を明らかにすることである

が成り立っている.

さて, Vを任意の optimal machineとする. このとき,逆に, (44)が成り立つものと仮定し

て,矛盾を導こう. この仮定により,次が成り立つ:∑s∈0,1∗

2−H(s) ≥∑

s∈0,1∗2−|s|− f (|s|) =

∞∑n=0

∑s∈0,1n

2−|s|− f (|s|)

=

∞∑n=0

2n · 2−n− f (n) =

∞∑n=0

2− f (n)

= 1.

ここで,最後に (45)を使った. したがって,定理 2.13より,∑s∈0,1∗

2−H(s) = 1

が成り立つ. ところが,後述の定理 4.5により,∑s∈0,1∗

2−H(s)

は Chaitin randomであることが示される. これは,∑s∈0,1∗

2−H(s)

が有理数にはなりえないことを意味し,矛盾が生じる.

一般に,部分関数 F : 0,1∗ → 0,1∗ と s ∈ 0,1∗ に対し,

F−1(s) = p ∈ dom(F) | F(p) = s

と定める.

定理 2.24. optimal machineは 0,1∗ への全射である. すなわち, V を optimal machineと

すると,任意の s ∈ 0,1に対して, V−1(s) , ∅が成立する.

Proof. machinehを例 2.2のものとする. optimal machineの定義 2.5より,ある d ∈ Nが存在して,任意の s ∈ 0,1∗ に対し,

HV(s) ≤ Hh(s) + d = 2 |s| + d + 1

が成立する. したがって,任意の s ∈ 0,1∗ に対して, HV(s) < ∞となり,

|p| | p ∈ 0,1∗かつ V(p) = s , ∅

が成立する. これゆえ, V−1(s) , ∅となる.

17

Page 18: アルゴリズム的情報理論入門 - ODN3 randomness 27 4 Chaitin numbers 39 1 prefix-free 集合 この章の目的は, prefix-free 集合の基本性質を明らかにすることである

定理 2.24より, 任意の optimal machineV に対して, HV(s) は 0,1∗ を定義域とするtotal functionである. しかしながら, HV(s) は計算可能ではない. すなわち,次の定理が成

り立つ.

定理 2.25.任意の optimal machineVに対して, HV(s)は total recursive functionではない.

Proof. 逆に, HV(s)は total recursive functionであると仮定して,矛盾を導く.定理 2.14 (iii)

と同様の証明により,関数 HV(s) は非有界であることがわかる. したがって,与えられた

n ∈ N+ に対して, 0,1∗ の各元 sについて,順番に HV(s)を計算して行くことにより,いつ

か n ≤ HV(s)となる s ∈ 0,1∗ が見つかる.

これゆえ,ある partial recursive functionΨ : N+ → 0,1∗ が存在し,

n ≤ HV(Ψ(n))

が成り立つことがわかる. 一方, optimal machineの定義から,任意の n ∈ N+ に対して,

HV(Ψ(n)) ≤ H(n) +O(1)

が成り立つことを示すことができる. これら 2つの不等式と (32)を合わせると, 任意の

n ∈ N+ に対して,n ≤ 2 log2(n+ 1)+O(1)

が成り立つ. この両辺を nで割って, n→ ∞とすれば, 1 ≤ 0が得られ矛盾が生じる.

V を optimal machineとする. 定理 2.24より, V は全射であるから, HV(s)は次の等式を

満たす:HV(s) = min |p| | p ∈ V−1(s) .

以下では, optimal machineVに対する,集合 V−1(s)の性質について調べる. はじめに,次の

定理を証明しよう.

定理 2.26.任意のmachineCに対して,あるmachineDが存在し,次の (i), (ii), (iii) が成り

立つ:

(i) 任意の s ∈ 0,1∗ に対して, HD(s) = HC(s).

(ii) 任意の s ∈ 0,1∗ に対して, D−1(s)は有限集合.

(iii) ある partial recursive functionf : 0,1∗ → N+ が存在して,

dom(f ) = s ∈ 0,1∗ | D−1(s) , ∅ かつ ∀ s ∈ dom(f ) #D−1(s) ≤ f (s).

18

Page 19: アルゴリズム的情報理論入門 - ODN3 randomness 27 4 Chaitin numbers 39 1 prefix-free 集合 この章の目的は, prefix-free 集合の基本性質を明らかにすることである

Proof. Cを任意の machineとする. そして, Cのグラフ Graph(C)を,

Graph(C) = (p, s) ∈ 0,1∗ × 0,1∗ | C(p) = s

で定義する.ここで, C : 0,1∗ → 0,1∗は partial recursive functionなので,集合Graph(C)

は r.e.であることに注意しよう. もし, Graph(C)が有限集合ならば, s ∈ 0, 1∗ | C−1(s) ,

∅ も有限集合であり,任意の s ∈ 0,1∗に対して, C−1(s)も有限集合である.したがって,こ

の場合, D = Cかつ dom(f ) = s ∈ 0,1∗ | C−1(s) , ∅ かつ ∀ s ∈ dom(f ) f (s) = #C−1(s)

とおくことにより, (i), (ii), (iii) が成り立つ. これゆえ,以下では, Graph(C)は無限集合と仮

定する.

(p1, s1), (p2, s2), (p3, s3), . . . を,無限集合でかつ r.e.集合である Graph(C)の,ある特定の

recursive enumerationとする. このとき,明らかに,次の (a), (b)を満たす partial recursive

functiong: 0,1∗ → N+ が存在する:

(a) dom(g) = s | ∃ i ∈ N+ si = s.(b) ∀ s ∈ dom(g) g(s) = min i ∈ N+ | si = s.

この gに基づいて, partial recursive functionD : 0,1∗ → 0,1∗ を次の条件で定義する:

D−1(s) =

pi

∣∣∣ i ∈ N+ & si = s & |pi | ≤ |pg(s)|

if s ∈ dom(g),∅ otherwise

明らかに,このような partial recursive functionD は存在する. 長さが |pg(s)| 以下の有限 2

進列の個数を数えることにより,任意の s ∈ dom(g)に対して,

#D−1(s) ≤ 2|pg(s) |+1 − 1

が成り立ち,それゆえ,特に, D−1(s) は有限集合であることがわかる. したがって,この D

に対して, (ii) が成り立つ. 更に, partial recursive functionf : 0,1∗ → N+ を, dom( f ) =

dom(g)かつ ∀ s ∈ dom( f ) f (s) = 2|pg(s) |+1−1で定義することにより,この Dに対して, (iii)

も成り立つことがわかる.

次に,この Dがmachineであることを確認しよう. Dの定義から,

∀ s ∈ 0,1∗ D−1(s) ⊂ C−1(s) (46)

が成り立つ. したがって,

dom(D) =∪

s∈0,1∗D−1(s) ⊂

∪s∈0,1∗

C−1(s) = dom(C)

19

Page 20: アルゴリズム的情報理論入門 - ODN3 randomness 27 4 Chaitin numbers 39 1 prefix-free 集合 この章の目的は, prefix-free 集合の基本性質を明らかにすることである

が成り立ち, dom(C)は prefix-freeなので, dom(D)も prefix-freeである. このようにして,

partial recursive functionDは machineであることがわかる.

最後に, D に対して, (i) が成り立つことを示そう. C(p) = sかつ |p| = HC(s) と仮定す

る. このとき, (p, s) ∈ Graph(C) であり,それゆえ, s ∈ domgとなる. C(pg(s)) = sなので,

|p| ≤ |pg(s)|であり, p ∈ D−1(s)が成り立つ. したがって, D(p) = sであり, HD(s) ≤ |p|が成り立つ. このようにして,

∀ s ∈ 0,1∗ HD(s) ≤ HC(s) (47)

が成り立つ. 一方, (46)から,

∀ s ∈ 0,1∗ HD(s) ≥ HC(s) (48)

が成り立つ. これら (47)と (48)から, Dに対して, (i) が成り立つことがわかる.

上の定理から,次の定理 2.27が証明できる. 定理 2.27は,任意の optimal machineV に

対して, HV(s)の値を一切変えることなく, V−1(s)がつねに有限集合となるように V を修

正することができる. それも, #V−1(s)がある total recursive functionf (s)で上から抑えら

れるように Vを修正することができると主張する.

定理 2.27. 任意の optimal machineV に対して, ある optimal machineW と, ある total

recursive functionf : 0,1∗ → Nが存在し,任意の s ∈ 0,1∗ に対し,

HW(s) = HV(s) かつ #W−1(s) ≤ f (s)

が成立する.

Proof. Vを任意の optimal machineとする. このとき,定理 2.26から,次の (a), (b), (c)を

満たす machineWが存在する:

(a) 任意の s ∈ 0,1∗ に対して, HW(s) = HV(s).

(b) 任意の s ∈ 0,1∗ に対して, W−1(s)は有限集合.

(c) ある partial recursive functionf : 0,1∗ → N+ が存在して,

dom(f ) = s ∈ 0,1∗ |W−1(s) , ∅ かつ ∀ s ∈ dom(f ) #W−1(s) ≤ f (s).

V は optimalなので, (a)より, W も optimalである. したがって, 定理 2.24と (c)か

ら, dom( f ) = 0,1∗ である. これゆえ, f は total recursive functionであり, また, ∀ s ∈0,1∗ #W−1(s) ≤ f (s)も成り立つ.

20

Page 21: アルゴリズム的情報理論入門 - ODN3 randomness 27 4 Chaitin numbers 39 1 prefix-free 集合 この章の目的は, prefix-free 集合の基本性質を明らかにすることである

定理 2.28. 任意の optimal machineV と,任意の total recursive functionf : 0,1∗ → Nに対して,

∀ s ∈ 0,1∗ #V−1(s) ≤ f (s)

ならば,有限個を除く全ての s ∈ 0,1∗ に対して,

#V−1(s) < f (s)

が成り立つ.

Proof. はじめに, partial functionh: 0,1∗ → Nを,以下の条件 (a), (b)で定義する:

(a) dom(h) = s ∈ 0,1∗ | #V−1(s) = f (s) .(b) h(s) = min |p| | p ∈ V−1(s) for everys ∈ dom(h).

Vは optimalなので, ∀ s ∈ 0,1∗ V−1(s) , ∅である. したがって,任意の s ∈ 0,1∗ に対して, min |p| | p ∈ V−1(s) は自然数として適切に定義されていることに注意されたい. そし

て, ∀ s ∈ 0, 1∗ #V−1(s) ≤ f (s)かつ f は total recursive functionなので, h: 0,1∗ → Nはpartial recursive functionであることがわかる. 他方,条件 (b)から,任意の s ∈ dom(h)に対

して,h(s) = H(s) (49)

が成り立つ.

さて,逆に,無限個の s ∈ 0,1∗ に対して, #V−1(s) = f (s) が成り立つと仮定して,矛盾

を導こう. このとき,明らかに, dom(h)は無限集合である. すると,定理 2.14 (iii)と同様の

証明により,関数 hは非有界であることがわかる. したがって,与えられた n ∈ N+ に対して, partial recursive functionhのグラフを列挙して行くことにより,いつか n ≤ h(s)となる

s ∈ dom(h)が見つかる.

これゆえ, (49)に注意すると,ある partial recursive functionΨ : N+ → 0,1∗ が存在し,

n ≤ H(Ψ(n))

が成り立つことがわかる. 一方,定理 2.10を用いて,任意の n ∈ N+ に対して,

H(Ψ(n)) ≤ H(n) +O(1)

が成り立つことを示すことができる. これら 2つの不等式と (32)を合わせると, 任意の

n ∈ N+ に対して,n ≤ 2 log2(n+ 1)+O(1)

が成り立つ. この両辺を nで割って, n→ ∞とすれば, 1 ≤ 0が得られ矛盾が生じる.

21

Page 22: アルゴリズム的情報理論入門 - ODN3 randomness 27 4 Chaitin numbers 39 1 prefix-free 集合 この章の目的は, prefix-free 集合の基本性質を明らかにすることである

次の定理 2.29は,定理 2.27の “上界関数” f (s)を, tightにとることは全く不可能である

ことを示している.

定理 2.29. 任意の optimal machineV と,任意の total recursive functionf : 0,1∗ → Nに対して,

∀ s ∈ 0,1∗ #V−1(s) ≤ f (s)

ならばlims→∞

f (s) − #V−1(s)

= ∞

が成立する.

Proof. Vを任意の optimal machineとし,任意の total recursive functionf : 0,1∗ → Nに対して,

∀ s ∈ 0,1∗ #V−1(s) ≤ f (s) (50)

と仮定する. はじめに,整数の集合 Qを,

Q = k ∈ Z | k ≤ f (s) − #V−1(s) for all but finitely manys ∈ 0,1∗

で定義する. (50)より, 0 ∈ Qであり, Qは空集合でないことに注意しよう.

さて,逆に,lims→∞

f (s) − #V−1(s)

, ∞

と仮定して,矛盾を導こう. このとき,ある M ∈ Nが存在して,無限個の s ∈ 0,1∗ に対して, f (s) − #V−1(s) ≤ M が成り立つ. したがって,明らかに,任意の k ∈ Qに対して, k ≤ M

が成り立つ. これゆえ, Qは, Zの空でない部分集合であり,かつ上に有界である. したがっ

て, Qは最大限 k0を持つ. 当然, k0 ∈ Qであり,有限個を除く全ての s ∈ 0, 1∗ に対して,

k0 ≤ f (s) − #V−1(s) (51)

が成り立つ.

もし仮に,有限個を除く全ての s ∈ 0,1∗ に対して, k0 < f (s) − #V−1(s) が成り立つと

すると, k0 + 1 ∈ Qであり, k0 が Qの最大限であることに反する. したがって,無限個の

s ∈ 0, 1∗ に対して, k0 ≥ f (s) − #V−1(s)が成り立つ. これゆえ, (51)より, 0,1∗ のある有限部分集合 Eが存在し,任意の s ∈ 0,1∗ \ Eに対して,

k0 ≤ f (s) − #V−1(s)

22

Page 23: アルゴリズム的情報理論入門 - ODN3 randomness 27 4 Chaitin numbers 39 1 prefix-free 集合 この章の目的は, prefix-free 集合の基本性質を明らかにすることである

が成り立ち,同時に,無限個の s ∈ 0,1∗ \ Eに対して,

k0 = f (s) − #V−1(s)

が成り立つ.

ここで, total functiong: 0,1∗ → Nを,

g(s) =

#V−1(s) if s ∈ E,f (s) − k0 otherwise

で定義する. 明らかに, ∀ s ∈ 0,1∗ #V−1(s) ≤ g(s)であり, gは total recursive functionで

ある. 更に,無限個の s ∈ 0,1∗ に対して, #V−1(s) = g(s)が成り立つ. しかしながら,これ

らは定理 2.28と矛盾する.

系 2.30. 任意の optimal machineV に対して, ∀ s ∈ 0,1∗ V−1(s) は有限集合であるなら

ば, #V−1(s)は (sの関数として)有界ではない.

Proof. 逆に, #V−1(s)は有界であると仮定して,矛盾を導こう. このとき,ある M ∈ Nが存在し,任意の s ∈ 0, 1∗ に対して,

#V−1(s) ≤ M

が成り立つ. さて, total recursive functionf : 0,1∗ → Nを, ∀ s ∈ 0, 1∗ f (s) = M で定義

すると,明らかに, ∀ s ∈ 0,1∗ #V−1(s) ≤ f (s)が成り立つ. したがって,定理 2.29から,

lims→∞

f (s) − #V−1(s)

= ∞

が得られる. 一方で, f の定義から,

∀ s ∈ 0,1∗ f (s) − #V−1(s) ≤ M

が成り立つので,矛盾が生じる.

次の定理 2.31は,定理 2.27とは逆に,任意の optimal machineVに対して, HV(s)の値を

一切変えることなく, V−1(s)がつねに無限集合となるように Vを修正することができると

主張する.

定理 2.31. 任意の optimal machineVに対して,ある optimal machineWが存在して,任意

の s ∈ 0, 1∗ に対し,

HW(s) = HV(s) かつ W−1(s)は無限集合

が成立する.

23

Page 24: アルゴリズム的情報理論入門 - ODN3 randomness 27 4 Chaitin numbers 39 1 prefix-free 集合 この章の目的は, prefix-free 集合の基本性質を明らかにすることである

Proof. Vを任意の optimal machineとする. はじめに,ある s0 ∈ 0,1∗ について, V−1(s0)

は少なくとも 2つの元を持つことを証明する. ある s0 ∈ 0,1∗ について, V−1(s0)が無限集

合の場合は,明らかにこれが成り立つ. したがって,以下では,任意の s0 ∈ 0,1∗ に対して,

V−1(s0)は有限集合であると仮定する.

このとき, 系 2.30から, ある s0 ∈ 0,1∗ が存在し, #V−1(s0) ≥ 2 が成り立つ. した

がって, V−1(s0) は, |q| ≥ |r | なる 2つの元 qと r を持つ. 全単射の total recursive function

b: 0,1∗ × N→ Nを 1つ選び, partial recursive functionW: 0,1∗ → 0,1∗ を,次の条件

で定義する:

W−1(s) =

(V−1(s) \ q

)∪ q0b(s,i)1 | i ∈ N if s= s0,

V−1(s) ∪ T(s) otherwise

で定義する. 但し,ここで,

T(s) = q0b(s,i)1 | i ∈ N & HV(s) ≤ |q| + b(s, i) + 1

である. 集合 (s,n) ∈ 0,1∗ × N | HV(s) ≤ n は r.e.なので,明らかに,このような partial

recursive functionWは存在する.

bは全単射なので, q0b(s0,i)1 | i ∈ N は無限集合であり,任意の s, s0に対し, T(s)も無

限集合である. したがって,任意の s ∈ 0,1∗ に対し,

W−1(s)は無限集合

が成り立つ.

他方,

dom(W) =∪

s∈0,1∗W−1(s)

⊂(( ∪

s∈0,1∗V−1(s)

)\ q)∪ q0k1 | k ∈ N

= (dom(V) \ q) ∪ q0k1 | k ∈ N

(52)

が成り立つ. dom(V)は prefix-freeかつ q ∈ dom(V)なので, (52)の最右辺は prefix-freeで

ある. したがって,最左辺の domWも prefix-freeであり, Wは machineである.

最後に,∀ s ∈ 0,1∗ HW(s) = HV(s) (53)

が成り立つことを示す. V は optimalなので,これにより, Wも optimalであることがわか

る. さて, s= s0の場合, r ∈ V−1(s) \ q,かつ,任意の k ∈ Nに対して, |q| <∣∣∣q0k1

∣∣∣であるこ24

Page 25: アルゴリズム的情報理論入門 - ODN3 randomness 27 4 Chaitin numbers 39 1 prefix-free 集合 この章の目的は, prefix-free 集合の基本性質を明らかにすることである

とに注意すると, HW(s) = HV(s)が成り立つことがわかる. 他方, s , s0 の場合,集合 T(s)

は HV(s)よりも短い有限列を有していないことから,再び, HW(s) = HV(s)が成り立つこと

がわかる. このようにして, (53)が成り立つ.

ここで,定理 2.7,つまり, optimal machineの存在を証明する.

(定理 2.7の証明). 一般に algorithmAが計算する partial recursive functionを fAと書くこ

とにする. 任意の algorithmAに対して, algorithmAを次のように定義する.

Algorithm A. 入力 t ∈ 0, 1∗ が与えられたとき,

[1]: 集合変数 Lを用意し, L← ∅と初期化して, [2]へ進む.

[2]: 0,1∗ \ Lの全ての元に対し, fAの値

fA(λ), fA(0), fA(1), fA(00), fA(01), fA(10), fA(11), · · ·

を並列に計算する. ある s ∈ 0, 1∗ \ Lに対し, fA(s)の計算が停止したなら, [3]へ進む.

[3]: L ∪ s が prefix-freeで, かつ, s = t ならば, FA(s) を出力して停止する. L ∪ s がprefix-freeで,かつ, s, tならば, L← L∪sと書き変えて [2]へ戻る. L∪sが prefix-free

でなければ, rejectする.

各 algorithm Aに対し, dom(fA)は prefix-freeとは限らないが, dom(fA)は prefix-freeで

ある. したがって, fA は machineである. また, algorithm Aに対し, dom(fA)が prefix-free

(つまり, fA が machine)ならば, fA = fA である. (ここで, dom(fA)が prefix-freeでない場

合は, fA , fAである.また, fA = fA′ であるとき, fA = fA′ であることは一般には言えない.)

Algorithm B .入力 t ∈ 0,1∗ が与えられたとき,

[1]: 0i ⊂ t かつ 0i+1 1 t を満たす (唯一の)自然数 i ≤ |t|が, i = |t| (つまり, t = 0|t|)ならば

rejectし,そうでなければ [2] へ進む.

[2]: p ∈ 0, 1∗ を 0i1p = t として定め, fAi(p)を計算する. (但し, Ai は i 番目に小さいゲー

デル数を持つ algorithmを表す.) もし計算が終了すれば,その値を出力し停止する.

fBが machineである事を示す. そのためには, dom(fB)が prefix-freeであることを示せ

ば十分である. Algorithm Bの定め方から, fBの定義域 dom(fB)は,

dom(fB) = 0i1p | i ∈ Nかつ p ∈ dom(fAi) (54)

である. 任意の q,q′ ∈ dom(fB) に対し, q ⊂ q′ と仮定する. q = q′ を示す. i, i′ ∈ N とp, p′ ∈ 0, 1∗ を

q = 0i1pかつ q′ = 0i′1p′

を満たすものとして取る. q ⊂ q′ より, 0i1 ⊂ 0i′1p′ である. よって, i = i′ を得る.

q,q′ ∈ dom(fB)であるから,式 (54)より, p, p′ ∈ dom(fAi) = dom(fAi′ )である. また, q ⊂ q′

25

Page 26: アルゴリズム的情報理論入門 - ODN3 randomness 27 4 Chaitin numbers 39 1 prefix-free 集合 この章の目的は, prefix-free 集合の基本性質を明らかにすることである

かつ i = i′ より, p ⊂ p′ である. dom(fAi) は prefix-freeなので, p = p′ が得られる. した

がって, q = q′ が成立する.

fBが optimal machineである事を示す. 任意に machineM を取る. このとき,

∃d ∈ N ∀s ∈ 0,1∗ (H fB(s) ≤ HM(s) + d)

を示せばよい. i ∈ N を M = fAi として選ぶ. M は machineであるから, domfAi は

prefix-freeである. よって, fAi= fAi = M を得る.

d = i + 1

として定める. 任意に s ∈ 0,1∗ を取る.

H fB(s) ≤ HM(s) + d (55)

を示す. M−1(s) = ∅(つまり, HM(s) = ∞) のときは, 明らかに不等式 (55)は成立する.

M−1(s) , ∅のときを考える. p ∈ 0,1∗ を

M(p) = sかつ |p| = HM(s)

を満たすものとして選ぶ. p ∈ dom(M) = dom(fAi)なので,式 (54)より, 0i1p ∈ dom(fB)で

ある. Algorithm Bの定め方から, fB(0i1p) = fAi(p) = M(p) = sである. したがって,

H fB(s) ≤∣∣∣0i1p

∣∣∣ = i + 1+ |p| = HM(s) + d,

つまり,不等式 (55)が成立する.

これまで見てきたように, program-size complexityH(s) は, program-sizeの概念を用

いて定義されている. しかし, 以下で見るように, program-sizeの概念を用いることなく

H(s) を定義することも可能である. はじめに, universal probabilitymを導入し, H(s) を

− log2 m(s)として定義するのである. universal probabilityは次のように定義される.

定義 2.32 (universal probability). 関数 r : 0,1∗ → [0,1] が lower-computable semi-

measureであるとは,∑s∈0,1∗

r(s) ≤ 1 かつ 集合 (a, s) ∈ Q × 0,1∗ | a < r(s) は r.e.

であることをいう. また, lower-computable semi-measuremが universal probability であ

るとは,任意の lower-computable semi-measurer に対して,ある c ∈ N+ が存在し,

∀ s ∈ 0,1∗ r(s) ≤ cm(s)

であることをいう.

26

Page 27: アルゴリズム的情報理論入門 - ODN3 randomness 27 4 Chaitin numbers 39 1 prefix-free 集合 この章の目的は, prefix-free 集合の基本性質を明らかにすることである

次の事実が成立する.

事実 2.33.任意の optimal machineVに対して, sに関する写像 2−HV(s) は, universal proba-

bility である.

事実 2.33は, 本質的に, Chaitin [1]の Theorem 3.4と同じもので, この Theoremは,

Kraft-Chaitin Theoremから証明される. 事実 2.33により, 任意の universal probabilitym

に対し,H(s) = − log2 m(s) +O(1) (56)

が成立する. よって, H(s)を HU(s)で定義する代わりに,ある特定の universal probability

mを用いて, H(s)をH(s) = − log2 m(s)

として定義することができる. このとき, (56)で示されているように,定義の違いに伴う値

の差は,定数で一様に抑えられる. なお,この高々定数の違いは,アルゴリズム的情報理論

の理論展開に影響を与えない.

2−H(s) が universal probabilityである事実を用いれば, Kraft-Chaitin Theoremに訴えるこ

となく,アルゴリズム的情報理論の様々な不等式が証明できる. 例えば, 2−H(s) が universal

probabilityである事実から, Kraft-Chaitin Theoremに訴えることなく,比較的簡単に,下記

の定理 3.8の⇐が証明できる. しかし,定理 4.12の⇒の証明のように,不等式でなく等式

を示す場合には, Kraft-Chaitin Theoremを直接用いる必要に迫られる.

3 randomness

この章の目的は, 実数に関する 2 つの randomnessの概念, Martin-Lof randomnessと

Chaitin randomnessを定義し,両者の同値性を示すことである. まず, Martin-Lof random-

nessの導入の動機付けを行い, それに基づいて, Martin-Lof randomnessの定義を与える.

他方, program-size complexityH(s)を用いて, Chaitin randomnessの概念を定義する. そし

て,両者の同値性を示す.

定義 3.1. 実数 α ∈ [0,1)に対し, αの 2進展開を

α = 0.b1b2b3 · · · , (bi = 0 or 1)

とする. 但し, 2進展開が 2通り可能な場合は, 0を無限個含む 2進展開を選ぶものとする.

n ∈ N+ に対し, α nをα n = b1b2b3 · · · bn

27

Page 28: アルゴリズム的情報理論入門 - ODN3 randomness 27 4 Chaitin numbers 39 1 prefix-free 集合 この章の目的は, prefix-free 集合の基本性質を明らかにすることである

と定める.

例 3.2. α = 5/8の場合を考える.

α = 0.101000000· · ·

なので,α 6 = 101000

である. このとき, α = 0.100111111· · · として, α 6 = 100111とはしないことに注意せ

よ.

0,1+ を空列以外の有限列の集合,つまり,

0,1+ = 0,1∗ \ λ

と定める.

性質 3.3. 任意の実数 α ∈ [0,1)と任意の s ∈ 0,1+ に対して,

α ∈ I (s) ⇐⇒ α |s| = s

が成立する.

Proof. I(s)の定め方,及び, α |s|の定め方から,この性質の成立は明らかである.

Martin-Lof randomnessの概念は [0, 1)上の実数に対して定義される. Martin-Lof ran-

domnessの定義を与える前に,まず,その動機づけを行う.

以下では, 0,1の無限列 ωと,その無限列を 2進展開に持つ [0,1)の実数 0.ωとを同一視

する. 確率 1/2で表か裏が出るコインを無限回投げて,表なら 0,裏なら 1として, 0, 1の

無限列,すなわち, [0,1)の実数を生成することを考える. 直観に従うと,このようにして得

られる実数 (0,1の無限列)は “ランダムな” 実数であると考えられる. すなわち,無限回の

コイン投げの結果,確率 1でランダムな実数が得られる. より数学的に言えば,実数の集合

RAND ⊂ [0,1)をRAND = α ∈ [0,1) | αはランダム

とおけば,L (RAND) = 1

である. ここで, L は R上の Lebesgue外測度を表す. したがって, NONRANDを RAND

の [0,1)上での補集合,つまり,

NONRAND = [0,1) \ RAND

28

Page 29: アルゴリズム的情報理論入門 - ODN3 randomness 27 4 Chaitin numbers 39 1 prefix-free 集合 この章の目的は, prefix-free 集合の基本性質を明らかにすることである

とおけば,L (NONRAND) = 0

となるべきである. すなわち, [0,1)のランダムでない実数は (Lebesgue(外)測度に関して)

零集合を成すはずである. しかし,任意の零集合がランダムでない実数からなるわけでは

ない. なぜなら,任意の零集合がランダムでない実数からなるとすれば,任意の α ∈ [0,1)

に対して,L (α) = 0

なので, [0,1)のすべての実数がランダムでない実数になってしまう.

どのような零集合が NONRANDの部分集合になるかを見るために,次の集合 A ⊂ [0,1)

を考える:A = 0.t1t2t3 · · · | ∀ i ∈ N+ (ti ∈ 00,10) .

Aの元はランダムでないと考えられる. なぜなら,偶数 bitは必ず 0だし, 1の後には必ず 0

が現れるからである. したがって,

A ⊂ NONRAND

である. (しかし, 0.0100· · · ∈ NONRAND \ Aなので, A , NONRANDである.) また, Aは

零集合である. これは次のようにして証明される. 任意の n ∈ N+ に対し, Cn ⊂ 0,1∗ とAn ⊂ [0, 1)を

Cn = t1 · · · tn | ∀i (ti ∈ 00,10),

An =∪s∈Cn

I (s)

と定める. すると,

A =∞∩

n=1

An,

L (An) = 2n2−2n = 2−n ≤ 2−n, (n ∈ N+)

である. これら 2つの関係式より,

L (A) ≤ L (An) ≤ 2−n→ 0, (n→ ∞)

となり, Aは零集合であることが分かる. ここで, Cn は nに関して, uniformに帰納的に可

算である.

29

Page 30: アルゴリズム的情報理論入門 - ODN3 randomness 27 4 Chaitin numbers 39 1 prefix-free 集合 この章の目的は, prefix-free 集合の基本性質を明らかにすることである

さて,この例に促されて,次のように構成的零集合の概念を導入する. 一般に [0,1)の部

分集合 Bに対し, nに関して uniformに帰納的可算な Cnn∈N+ があって,

B =∞∩

n=1

∪s∈Cn

I (s),

L (∪s∈Cn

I (s)) ≤ 2−n

となるとき, (Bは零集合であるが)Bは構成的零集合と呼ぶことにする. したがって,先の

例の Aは構成的零集合である. α ∈ [0,1)に対して, αがランダムでないとは,ある構成的

零集合 Bが存在して, α ∈ Bであるとして定義する. algorithmは可算無限個しかないので

可算無限個の構成的零集合 B1, B2, · · · が存在する. したがって,

NONRAND =∞∪

i=1

Bi

である. そして,

L (NONRAND) ≤∞∑

i=1

L(Bi) = 0

なので, 確かに NONRANDは零集合になっている. 以上の考察に基づいて, Martin-Lof

randomnessの概念を次のように導入する.

定義 3.4 (Martin-Lof randomness). C ⊂ N+ × 0,1∗ に対して, Cが Martin-L of testであ

るとは, Cが r.e. (帰納的可算, recursively enumerable)であり,かつ,任意の n ∈ N+ に対し,∑s∈Cn

2−|s| ≤ 2−n (57)

が成り立つこととして定める. ここで, Cnは

Cn = s ∈ 0, 1∗ | (n, s) ∈ C (58)

として定められる集合である. そして,任意の実数 α ∈ [0,1)に対して, α が Martin-L of

randomであるとは,

∀C : Martin-Lof test ∃n ∈ N+ ∀ k ∈ N+ α k < Cn (59)

が成り立つこととして定める.

30

Page 31: アルゴリズム的情報理論入門 - ODN3 randomness 27 4 Chaitin numbers 39 1 prefix-free 集合 この章の目的は, prefix-free 集合の基本性質を明らかにすることである

注意 3.5.

(i) ∀ s ∈ 0,1∗ 2−|s| = L (I (s)),

(ii) ∃n ∈ N+ ∀ k ∈ N+ α k < Cn ⇐⇒ α <∞∩

n=1

∪s∈Cn

I (s).

Proof. (i) は明らかであり, (ii) は性質 3.3から従う.

定理 3.6. H ⊂ N+ × 0,1∗ を

H = (n, s) ∈ N+ × 0,1∗ | H(s) + n ≤ |s|

で定める. このとき, H はMartin-Lof testである.

Proof. H が r.e.であるを示す. 次のような algorithm Aを考える.

Algorithm A .入力 (n, s) ∈ N+ × 0,1∗ が与えられたとき,

[1]:集合変数 Lを用意し, L← ∅と初期化して [2] へ進む.

[2]:0,1∗ \ Lの全ての元に対し, U の値

U(λ),U(0),U(1),U(00),U(01),U(10),U(11),U(000), · · ·

を時分割で並列に計算する. ある p ∈ 0,1∗ \ Lについて U(p)の計算が停止したなら, [3]

へ進む.

[3]:U(p) = sかつ |p| + n ≤ |s|ならば停止する. そうでなければ, L← L ∪ pと書き変えて[2] へ戻る.

あとは,∀n ∈ N+

∑s∈Hn

2−|s| ≤ 2−n

であることを示せばよい. さて,任意に n ∈ N+ を取る. すると,任意の s ∈ 0,1∗ に対して,

s ∈Hn ⇐⇒ H(s) + n ≤ |s|

31

Page 32: アルゴリズム的情報理論入門 - ODN3 randomness 27 4 Chaitin numbers 39 1 prefix-free 集合 この章の目的は, prefix-free 集合の基本性質を明らかにすることである

であるので, ∑s∈Hn

2−|s| ≤∑s∈Hn

2−H(s)−n

≤ 2−n∑s∈Hn

2−H(s)

≤ 2−n∑

s∈0,1∗2−H(s)

≤ 2−n (∵定理 2.13)

が成立する. これで, H がMartin-Lof testであることが示された.

Martin-Lof randomnessとは独立に, H(s)による圧縮率不可能性に基づいて, [0,1)上の

実数に対するランダム性を次のように定義する.

定義 3.7 (Chaitin randomness). 任意の実数 α ∈ [0,1)に対して, αが Chaitin random であ

るとは,∃d ∈ N+ ∀n ∈ N+ n− d ≤ H(α n) (60)

が成り立つこととして定める.

すなわち, 実数 α ∈ [0,1)が Chaitin randomであるとは, α の 2進展開の任意の prefix

が,高々定数 dだけしか圧縮できない場合をいう.

定理 3.8 (Martin-Lof randomnessと Chaitin randomnessの同値性). 任意の α ∈ [0,1)に対

して,αは Martin-Lof random⇐⇒ αは Chaitin random

が成立する.

(⇒の証明). 対偶を示す. αが Chaitin randomでないと仮定する. このとき,

∀n ∈ N+ ∃ k ∈ N+ H(α k) + n < k

である. さて,定理 3.6でのMartin-Lof testH を取る.

∀n ∈ N+ Hn = s ∈ 0,1∗ | H(s) + n ≤ |s|

なので,∀n ∈ N+ ∃ k ∈ N+ α k ∈Hn

32

Page 33: アルゴリズム的情報理論入門 - ODN3 randomness 27 4 Chaitin numbers 39 1 prefix-free 集合 この章の目的は, prefix-free 集合の基本性質を明らかにすることである

が成り立つ. したがって,

∃C : Martin-Lof test ∀n ∈ N+ ∃ k ∈ N+ α k ∈ Cn

であり, αはMartin-Lof randomではない.

⇐を示すために,次の 2つの定理を利用する.

定理 3.9 (Kraft-Chaitin Theorem). f : N+ → Nを

∞∑n=1

2− f (n) ≤ 1

を満たす total recursive functionとする. このとき,ある total recursive functiong : N+ →0,1∗ が存在して,

(i) gは単射,

(ii) g(N+) = g(n) | n ∈ N+は prefix-free集合,

(iii) ∀n ∈ N+ (|g(n)| = f (n))

を満たす.

定理 3.10.次が成り立つ:

T は r.e.集合 (帰納的可算集合) ⇐⇒ ∃A : algolithm (Aは T を生成する).

ここで, argorithmAが T を生成するとは, Aは入力を必要とせず,起動すると永久に停止

することなく T の元を t1, t2, t3 · · · と 1つずつ出力していくことをいう.但し, ti , t j (i , j)

であり, T = t1, t2, · · · である. 尚, T が有限集合の場合もあることに注意すること.

まず, これらの定理を使って, 定理 3.8の ⇐ を示す. その後に, 定理 3.9を示す. 定理

3.10は示さないが,これは再帰理論において基本的な定理である.

(定理 3.8の⇐の証明). 対偶を示す. α ∈ [0,1)が Martin-Lof randomでないと仮定する.

このとき,ある Martin-Lof testCが存在して,

∀n ∈ N+ ∃k ∈ N+ (α k ∈ Cn) (61)

が成り立つ. C ⊂ N+ × 0,1∗ は r.e.集合なので, D ⊂ N+ × 0,1∗ を

D = (n, s) ∈ N+ × 0,1∗ | (2n, s) ∈ C

33

Page 34: アルゴリズム的情報理論入門 - ODN3 randomness 27 4 Chaitin numbers 39 1 prefix-free 集合 この章の目的は, prefix-free 集合の基本性質を明らかにすることである

で定めれば, Dも r.e.集合である. 定理 3.10より, Dはある algorithmAで

(n1, s1), (n2, s2), (n3, s3), · · ·

と生成される. さて,関数 f : N+ → Nを

∀k ∈ N+ ( f (k) = |sk| − nk)

で定義する. この f は total recursive functionである. このとき,

∞∑k=1

2− f (k) =

∞∑k=1

2−|sk|+nk =∑

(n,s)∈D2−|s|+n =

∑(2n,s)∈C

2−|s|+n

=

∞∑n=1

∑s∈C2n

2−|s|+n =

∞∑n=1

2n∑s∈C2n

2−|s|

≤∞∑

n=1

2n2−2n (∵ Cは Martin-Lof test)

=

∞∑n=1

2−n = 1

となる.したがって定理 3.9より,ある total recursive functiong : N+ → 0,1∗ が存在して,

(i) gは単射,

(ii) g(N+)は prefix-free集合,

(iii) ∀k ∈ N+ (|g(k)| = f (k) = |sk| − nk)

を満たす. 次のような algorithm Bを考える.

Algorithm B .入力 t ∈ 0,1∗ が与えられたとき,

[1]:数変数 kを用意し, k← 1と初期化して, [2] へ進む.

[2]:g(k)を計算して [3] へ進む.

[3]:g(k) = tならば, [4] へ進む. そうでなければ, k← k+ 1と書き換えて, [2]へ戻る.

[4]:skを出力して停止する.

Algorithm Bの定め方から,dom(fB) = g(N+)

である. したがって, gの性質 (ii) より, fBは machineである. また, gの性質 (i) より, gは

単射であるから,∀k ∈ N+ ( fB(g(k)) = sk)

34

Page 35: アルゴリズム的情報理論入門 - ODN3 randomness 27 4 Chaitin numbers 39 1 prefix-free 集合 この章の目的は, prefix-free 集合の基本性質を明らかにすることである

であることも分かる. したがって, gの性質 (iii) と合わせると,任意の k ∈ N+ に対して,

H fB(sk) ≤ |g(k)| = f (k) = |sk| − nk

を得る. よって, (2n, s) ∈ Cならば, (n, s) ∈ Dであり,したがって,

∃k ∈ N+((n, s) = (nk, sk))

であるから,

∀n ∈ N+∀s ∈ 0,1∗((2n, s) ∈ C⇒ H fB(s) ≤ |s| − n) (62)

が成り立つ.

一方,仮定 (61)より,∀n ∈ N+ ∃k ∈ N+ (2n, α k) ∈ C

が成り立つ. よって, (62)より,

∀n ∈ N+ ∃k ∈ N+ (H fB(α k) ≤ |α k| − n = k− n)

が成り立つ. 定理 2.10より,

∃d ∈ N ∀n ∈ N ∃k ∈ N+ (H(α k) ≤ k− n+ d

となるので, αは Chaitin randomではない.

Kraft-Chaitin Theorem (定理 3.9)の証明を行う.

(定理 3.9の証明). 次の条件を満たす関数 g: N+ → 0,1∗ を考える:

g(n) =

0f (1) if n = 1,

mins ∈ 0,1 f (n) | s < g(1), · · · ,g(n− 1)かつ  

        g(1), · · · ,g(n− 1), sは prefix-free if n > 1.

(63)

もし,この条件 (63)を満たす gが存在すれば,それは total recursive functionであることが

分かる. さらに gは満たすべき性質 (i),(ii),(iii) を持つことも分かる. したがって,条件 (63)

を満たす gの存在さえ示せば,証明は完了する. それを示すためには,

∀n ∈ N+ ∃g : 1,2, · · · ,n → 0,1∗ (gは条件 (63)を満たす) (64)

35

Page 36: アルゴリズム的情報理論入門 - ODN3 randomness 27 4 Chaitin numbers 39 1 prefix-free 集合 この章の目的は, prefix-free 集合の基本性質を明らかにすることである

を示せば十分である. n ∈ N+ についての性質 P(n)を,

P(n) ⇐⇒ ∃g : 1, 2, · · · ,n → 0,1∗ ∃l ∈ N ∃t1, · · · , tl ∈ 0, 1∗

(gは条件 (63)を満たす

かつ ∀i (|ti | < |ti+1|かつ 0.ti+1 < 0.ti)

かつ g(1), · · · ,g(n), t1, · · · , tlは prefix-free

かつ ((n∪

k=1

I (g(k))) ∪ (l∪

i=1

I (ti))) = [0,1))

(65)

と定める. 任意の n ∈ N+ について P(n)が成立すれば,明らかに (64)が成り立つ. 以下,任

意の n ∈ N+ について P(n)が成立することを,帰納法で示す.

0 1/4 1/2 3/4 1t1 t2 t3

g(1) g(3) g(2) g(4)

図. n = 4, l = 3のとき

P(1)を示す. g : 1 → 0,1∗ をg(1) = 0f (1)

で定義する. さらに,

l = f (1),

ti = 0i−11 (i = 1,2, · · · , l)

と定める. すると,各 i = 1,2, · · · , l − 1について,

|ti | < |ti+1|かつ 0.ti+1 < 0.ti

であり,g(1), t1, · · · , tlは prefix-freeかつ (I (g(1))∪ (∪l

i=1I (ti))) = [0,1)

である. 例として, f (1) = 3のときは,下の図のようになる.

0 1/8 1/4 1/2 1

g(1) t1 t2 t3

図. f (1) = 3のとき

36

Page 37: アルゴリズム的情報理論入門 - ODN3 randomness 27 4 Chaitin numbers 39 1 prefix-free 集合 この章の目的は, prefix-free 集合の基本性質を明らかにすることである

したがって, P(1)は成り立つ.

次に, n ∈ N+ に対し, P(n) を仮定し, P(n + 1) を示す. P(n) を仮定しているので,

g : 1,2, · · · ,n → 0,1∗, l ∈ N+, t1, · · · , tl ∈ 0,1∗ を (65)の右辺を満たすものとして取

る. これらを用いて g′ : 1,2, · · · ,n, n+ 1 → 0,1∗ を次のように定義する. まず,

∀k ∈ 1,2, · · · , n (g′(k) = g(k))

と定める. 条件 (63)を満たすように g′(n+ 1)は

g′(n+ 1) = mins ∈ 0,1 f (n+1) |s < g(1),g(2),g(3), · · · ,g(n)かつ g(1), g(2),g(3), · · · ,g(n), sは prefix-free

で定義するが,最小値を取るこの集合が空でないことを次のように確かめる.

始めに, f (n+ 1) ≥ |t1|を示す.

1 =n∑

k=1

|I (g(k))| +l∑

i=k

|I (ti)| (∵ g, t1, · · · , tlの取り方から)

=

n∑k=1

2−|g(k)| +l∑

k=1

2−|t(i)| =n∑

k=1

2− f (k) +

l∑k=1

2−|t(i)|

<

n∑k=1

2− f (k) +

∞∑k=|t1|

2−k (∵ |t1| < |t2| < · · ·なので)

=

n∑k=1

2− f (k) + 2−|t1|+1

である. f についての仮定∑∞

k=1 2− f (k) ≤ 1より,

n+1∑k=1

2− f (k) ≤ 1

であるから,先の不等式の両辺に f (n+ 1)を加えるて 1を引くことで,

2− f (n+1) < 2−|t1|+1

を得る. したがって, f (n+ 1) > |t1| + 1であり, f (n+ 1) ≥ |t1|である.

場合分けにより, P(n+ 1)を示す.

(イ). ∃i ( f (n+ 1) = |ti |)の場合を考える. この場合,

ti = mins ∈ 0,1 f (n+1) |s < g(1),g(2),g(3), · · · ,g(n)かつ g(1),g(2),g(3), · · · ,g(n), sは prefix-free

37

Page 38: アルゴリズム的情報理論入門 - ODN3 randomness 27 4 Chaitin numbers 39 1 prefix-free 集合 この章の目的は, prefix-free 集合の基本性質を明らかにすることである

であるから, g′(n+ 1) = ti である. このとき, P(n+ 1)において gとして g′, t′1, · · · , t′l′ として t1, · · · , ti−1, ti+1, · · · , tl を選べば P(n+ 1)が成り立つことが分かる.

(ロ). ∀i ( f (n+ 1) , |ti |)の場合を考える. h ∈ 1,2, · · · , nを

f (n+ 1) > |ti |

を満たす最大の i として定める. この場合,

th0f (n+1)−|th| = mins ∈ 0,1 f (n+1) |s < g(1),g(2),g(3), · · · ,g(n)かつ g(1),g(2), g(3), · · · ,g(n), sは prefix-free

であるから, g′(n+ 1) = th0f (n+1)−|th| である. そして, th,1, th,2, · · · , th, f (n+1)−|th| ∈ 0,1∗ を,

th,1 = th1, th,2 = th01, · · · , th, f (n+1)−|th| = th0f (n+1)−|th|−11

と定める. このとき, P(n+ 1)において gとして g′, t′1, · · · , t′l′ として

t1, · · · , th−1, th,1, · · · , th, f (n+1)−|th|, tn+1, · · · , tl

を選べば, P(n+ 1)が成り立つことが分かる.

th

g(n+ 1) th,1 th,2 th,3

図. f (n+ 1)− |th| = 3のとき

定義 3.11(universal Martin-Lof test). U を Martin-Lof testとする. U が universalである

とは,任意の Martin-Lof testC に対し,

∞∩n=1

∪s∈Cn

I (s) ⊂∞∩

n=1

∪s∈Un

I (s)

が成り立つことである.

従って,次が成り立つ.

定理 3.12. U を universal Martin-Lof testとする. このとき,任意の実数 α ∈ [0,1)に対し

て, αがMartin-Lof randomであることと,次が成り立つことは同値である:

∃n ∈ N+ ∀ k ∈ N+ α k < Un.

38

Page 39: アルゴリズム的情報理論入門 - ODN3 randomness 27 4 Chaitin numbers 39 1 prefix-free 集合 この章の目的は, prefix-free 集合の基本性質を明らかにすることである

定理 3.6と定理 3.8の⇐から次が成り立つ。

定理 3.13.定理 3.6のH は, universal Martin-Lof testである.

4 Chaitin Ω numbers

この章の目的は, Chaitinの Ω numberの持つ性質を明らかにすることである. まず, Ω

numberの定義をし,これらの数は Chaitin randomになることを示す. 次に, Ω numberと

なる実数の特徴づけを与える.

定義 4.1 (ChaitinΩ numbers). Vを optimal machineとする. 実数 ΩV ∈ [0,1)を

ΩV =∑

p∈dom(V)

2−|p| (66)

で定める.

この定義において,ΩV が収束し,ΩV ≤ 1であることは Kraftの不等式から導かれること

に注意せよ.

定理 4.2. 任意の optimal machineVについて,ΩV は Chaitin randomである.

Proof. dom(V)は無限集合かつ r.e.であり,ある algorithmで p1, p2, · · · と生成される. し

たがって,

ΩV =

∞∑i=1

2−|pi |

である. ωをΩV = 0.ω

となるような 0,1の片側無限列とする. ただし, ωは 1を無限個含むものとする. そして,

ωnを ωの長さ nの prefixとする. ωは 1を無限個含むので,

0.ωn < ΩV

であり,また,

limk→∞

k∑i=1

2−|pi | = ΩV

39

Page 40: アルゴリズム的情報理論入門 - ODN3 randomness 27 4 Chaitin numbers 39 1 prefix-free 集合 この章の目的は, prefix-free 集合の基本性質を明らかにすることである

である. よって,ある partial recursive functionf : 0,1∗ → N+ が存在し,

∀n ∈ N+ (0.ωn <

f (ωn)∑i=1

2−|pi |)

が成り立つ. 任意の n ∈ N+ に対して,

0.ωn <

f (ωn)∑i=1

2−|pi | < ΩV ≤ 0.ωn11· · · = 0.ωn + 2−n

であるから,∞∑

i= f (ωn)+1

2−|pi | < 2−n

となり,∀n ∈ N+ ∀i > f (ωn)(|pi | > n))

が成り立つ. したがって,任意の n ∈ N+ に対して,

p ∈ dom(V) | |p| ≤ n ⊂ pi | i ∈ 1, · · · , f (ωn)

が成り立つ. よって,任意の n ∈ N+ に対して,

V(p) | p ∈ dom(V) & |p| ≤ n ⊂ V(pi) | i ∈ 1, · · · , f (ωn)

である. 各 n ∈ N+ に対し, snを

sn = maxV(pi) | i ∈ 1, · · · , f (ωn) + 1

とおけば,HV(sn) > n

となる. したがって,ある partial recursive functionψ : 0,1∗ → 0,1∗ が存在し,

∀n ∈ N+(HV(ψ(ωn)) > n)

を満たす.∃d ∈ N∀s ∈ dom(ψ) (HV(ψ(s)) ≤ HV(s) + d)

が成り立つので,∃d ∈ N∀n ∈ N(n < HV(ωn) + d) (67)

であり,したがってまた,∃d ∈ N∀n ∈ N(n < H(ωn) + d) (68)

40

Page 41: アルゴリズム的情報理論入門 - ODN3 randomness 27 4 Chaitin numbers 39 1 prefix-free 集合 この章の目的は, prefix-free 集合の基本性質を明らかにすることである

である. 仮に ω が 0を有限個しか含まないとすると, ある定数 d ∈ N が存在し, 任意の

n ∈ N+ に対して,

H(ωn) ≤ H(n) + d

≤ 2 log2(n+ 1)+ d

となり, (67)に反する. したがって, ωは 0を無限個含む. よって,

∀n ∈ N+ (ΩV n = ωn)

である. よって, (68)より,ΩV は Chaitin randomとなる.

定義 4.3 (ChaitinΩ numberの変種). Vを optimal machineとする. 実数 ΘV ∈ [0,1)を

ΘV =∑

HV(s)<|s|2−|s| (69)

で定める. ここで,和は HV(s) < |s|を満たす全ての有限列 sについて取るものである.

この定義において, ΘV が収束し, ΘV < 1であることは,次のようにしてわかる.

ΘV =∑

HV(s)<|s|2−|s| <

∑HV(s)<|s|

2−HV(s) ≤∑

s∈0,1∗2−HV(s) ≤ ΩV ≤ 1.

定理 4.4. 任意の optimal machineVについて, ΘV は Chaitin randomである.

Proof. はじめに, s ∈ 0,1∗ | HV(s) < |s| は無限集合であることを見よう. V は optimal

なので,∀n ∈ N HV(0n) ≤ H(n) +O(1)

の成立を示すことができる. (32)と合わせると,

∀n ∈ N HV(0n) ≤ 2 log2(n+ 1)+O(1)

が得られるが,充分大きい全ての n ∈ Nに対して,この右辺は n = |0n|よりも小さい. した

がって, s ∈ 0,1∗ | HV(s) < |s| は無限集合であることがわかる.

更に,明らかに, s ∈ 0,1∗ | HV(s) < |s| は r.e.であり,ある algorithmで s1, s2, · · · と生成される. したがって,

ΘV =

∞∑i=1

2−|si |

である. τをΘV = 0.τ

41

Page 42: アルゴリズム的情報理論入門 - ODN3 randomness 27 4 Chaitin numbers 39 1 prefix-free 集合 この章の目的は, prefix-free 集合の基本性質を明らかにすることである

となるような 0,1の片側無限列とする.ただし, τは 1を無限個含むものとする.そして, τn

を τの長さ nの prefixとする. τは 1を無限個含むので,

0.τn < ΘV

であり,また,

limk→∞

k∑i=1

2−|si | = ΘV

である. よって,ある partial recursive functionf : 0,1∗ → N+ が存在し,

∀n ∈ N+ 0.τn <

f (τn)∑i=1

2−|si |

が成り立つ. 任意の n ∈ N+ に対して,

0.τn <

f (τn)∑i=1

2−|si | < ΘV ≤ 0.τn11· · · = 0.τn + 2−n

であるから,∞∑

i= f (τn)+1

2−|si | < 2−n

となり,∀n ∈ N+ ∀ i > f (τn) |si | > n

が成り立つ. したがって,任意の n ∈ N+ に対して,

s ∈ 0,1n | HV(s) < n = si | i ∈ 1, · · · , f (τn)かつ |si | = n

が成り立つ.

ここで,定理 2.14 (ii)と同様にして,

∀n ∈ N+ ∃ s ∈ 0,1n HV(s) ≥ n

が成り立つことに注意すると,

∀n ∈ N+ s ∈ 0,1n | HV(s) < n , 0,1n

であることがわかる.

したがって,各 n ∈ N+ に対し, tnを

tn = min(0,1n \ si | i ∈ 1, · · · , f (τn) )

42

Page 43: アルゴリズム的情報理論入門 - ODN3 randomness 27 4 Chaitin numbers 39 1 prefix-free 集合 この章の目的は, prefix-free 集合の基本性質を明らかにすることである

とおけば,これは正しく定義され,HV(tn) ≥ n

が成り立つ.

これゆえ,ある partial recursive functionψ : 0,1∗ → 0,1∗ が存在し,

∀n ∈ N+ HV(ψ(τn)) ≥ n

を満たす.

後は,定理 4.2の ΩV の場合と同様にして, ΘV は Chaitin randomとなる.

定理 4.5. 任意の optimal machineVに対して,次の実数は Chaitin randomである:∑s∈0,1∗

2−HV(s).

上記定理は,定理 4.2と下記定理から,成立することがわかる.

定理 4.6. 任意の optimal machineVに対して,ある optimal machineWが存在して,∑s∈0,1∗

2−HV(s) = ΩW, (70)

∀ s ∈ 0,1∗ HV(s) = HW(s) − 1 (71)

が成り立つ.

Proof. Vを任意の optimal machineとする. はじめに, (n, s) ∈ N × 0,1∗ | n > HV(s)はr.e.集合であることに注意する. また,これは,明らかに,無限集合である. したがって,ある

total recursive functionE : N+ → N × 0,1∗ が存在して,

(a) Eは単射,

(b) E(N+) = (n, s) ∈ N × 0,1∗ | n > HV(s)

を満たす. ここで, 2つの total recursive functionf : N+ → Nと h: N+ → 0, 1∗ を,条件

∀n ∈ N+ ( f (n),h(n)) = E(n)

で導入しよう. すると,次が成り立つことがわかる:

∞∑n=1

2− f (n) =∑

n>HV(s)

2−n =∑

s∈0,1∗

∞∑n=HV(s)+1

2−n =∑

s∈0,1∗2−HV(s) ≤ 1. (72)

43

Page 44: アルゴリズム的情報理論入門 - ODN3 randomness 27 4 Chaitin numbers 39 1 prefix-free 集合 この章の目的は, prefix-free 集合の基本性質を明らかにすることである

ここで, 2番目の和は, n > HV(s)を満たす全ての (n, s) ∈ N × 0,1∗ にわたっている. した

がって, Kraft-Chaitin Theorem (定理 3.9)より,ある total recursive functiong: N+ → 0, 1∗

が存在して,

(i) gは単射,

(ii) g(N+)は prefix-free集合,

(iii) ∀n ∈ N+ |g(n)| = f (n)

を満たす.

さて, partial recursive functionW: 0,1∗ → 0,1∗ を,以下の条件 (A), (B)で定義する:

(A) dom(W) = g(N+),

(B) ∀n ∈ N+ W(g(n)) = h(n).

gと hは total recursive functionであり,また, gは単射なので,明らかに,このような partial

recursive functionWは存在する. 更に, g(N+)は prefix-freeなので, Wは machineである.

まず,次が成り立つことに注意する. ここで,最後に (72)を使った.

ΩW =∑

p∈dom(W)

2−|p| =∑

p∈g(N+)

2−|p| =∞∑

n=1

2−|g(n)| =∞∑

n=1

2− f (n) =∑

s∈0,1∗2−HV(s).

したがって, (70)が成り立つ. hが全射であることに注意すると,任意の s ∈ 0,1∗ に対して, h(n) = sなる n ∈ N+ が確かに存在して,

HW(s) = min |g(n)| | h(n) = s = min f (n) | h(n) = s = minn ∈ N | n > HV(s) = HV(s) + 1

が成り立つことがわかる. したがって, (71)が成り立つ. また, V が optimalなので,この式

から, Wも optimalであることがわかる.

Vを任意の optimal machineとする. Chaitinは,∑p∈dom(V)

2−|p| と∑

s∈0,1∗2−HV(s)

が Chaitin randomであることを示した. これは, 上で見てきたことである. 更に, Chaitin

は,それらの一般化である ∑p∈V−1(A)

2−|p| と∑s∈A

2−HV(s)

44

Page 45: アルゴリズム的情報理論入門 - ODN3 randomness 27 4 Chaitin numbers 39 1 prefix-free 集合 この章の目的は, prefix-free 集合の基本性質を明らかにすることである

も Chaitin randomであることを示した. ここで, A ⊂ 0,1∗ は任意の r.e.な無限集合であ

り, V−1(A) = p ∈ dom(V) | V(p) ∈ A である. 以下では,ある一般的な定理 (定理 4.7およ

び定理 4.8)を証明した上で,後者の事実を,前者の事実に還元することにより証明する.

はじめに, 任意の machineM, 任意の集合 A ⊂ 0,1∗, 任意の n ∈ N に対して, 集合

SM(A; n)と SM(A; n)を,

SM(A; n) = p ∈ dom(M) | |p| = n & M(p) ∈ A ,SM(A; n) = s ∈ A | HM(s) = n

で定義する. このとき,次の定理が成り立つ.

定理 4.7. Vの任意の optimal machineとし, A ⊂ 0,1∗ を任意の r.e.な無限集合とする. こ

のとき,ある optimal machineWが存在し,任意の n ∈ Nに対し,

SV(A; n) = SW(0,1∗; n),

#SV(A; n) = #SW(0,1∗; n)

が成り立つ.

Proof. Vの任意の optimal machineとし, A ⊂ 0,1∗ を任意の r.e.な無限集合としよう.

このとき, ある total recursive functionΨ : 0,1∗ → 0,1∗ が存在して, Ψ は単射, かつ,

Ψ(0,1∗) = Aが成り立つ. さて, partial recursive functionW: 0,1∗ → 0,1∗ を,以下の

条件 (i), (ii) で定義する:

(i) dom(W) = p ∈ dom(V) | V(p) ∈ A ,(ii) ∀ p ∈ dom(W) Ψ(W(p)) = V(p).

Ψ の性質から, 明らかに, このような partial recursive functionW は存在する. 更に,

dom(W) ⊂ dom(V)であり, dom(V)は prefix-freeなので, dom(W)も prefix-freeである. し

たがって, Wはmachineである.

Vは optimalなので,ある d ∈ Nが存在し,任意の s ∈ 0,1∗ に対して,

HV(Ψ(s)) ≤ HV(s) + d (73)

が成り立つ. 一方, Wの定義から,任意の s ∈ 0,1∗ に対して,

p ∈ domW |W(p) = s = p ∈ domV | V(p) = Ψ(s) (74)

が成り立つことがわかる. これゆえ,任意の s ∈ 0, 1∗ に対して,

HW(s) = HV(Ψ(s)) (75)

45

Page 46: アルゴリズム的情報理論入門 - ODN3 randomness 27 4 Chaitin numbers 39 1 prefix-free 集合 この章の目的は, prefix-free 集合の基本性質を明らかにすることである

が成り立つ. これと (73)を合わせると,任意の s ∈ 0,1∗ に対して,

HW(s) ≤ HV(s) + d

が得られる. したがって, Vは optimalなので, Wも optimalである.

Ψ(0,1∗) = Aなので, (74)より,

p ∈ domW |W(p) ∈ 0,1∗ = p ∈ domV | V(p) ∈ A

が成り立つ. したがって, n ∈ Nに対して,

SV(A; n) = SW(0,1∗; n)

が成り立つ.他方,Ψは単射,かつ,Ψ(0,1∗) = Aなので, (75)より,任意の n ∈ Nに対して,

#SV(A; n) = #SW(0,1∗; n)

が成り立つ.

定理 4.8. Vの任意の optimal machineとし, A ⊂ 0,1∗ を任意の r.e.な無限集合とする. こ

のとき,ある optimal machineWが存在し,∑p∈V−1(A)

2−|p| =∑

p∈dom(W)

2−|p|, (76)

∑s∈A

2−HV(s) =∑

s∈0,1∗2−HW(s) (77)

が成り立つ.

Proof. Vの任意の optimal machineとし, A ⊂ 0,1∗ を任意の r.e.な無限集合とする. この

とき,定理 4.7より,ある optimal machineWが存在し,任意の n ∈ Nに対し,

SV(A; n) = SW(0,1∗; n), (78)

#SV(A; n) = #SW(0,1∗; n) (79)

が成り立つ. まず, (78)より,

∑p∈V−1(A)

2−|p| =∞∑

n=0

#SV(A; n)2−n =

∞∑n=0

#SW(0,1∗; n)2−n

=∑

p∈dom(W)

2−|p|

46

Page 47: アルゴリズム的情報理論入門 - ODN3 randomness 27 4 Chaitin numbers 39 1 prefix-free 集合 この章の目的は, prefix-free 集合の基本性質を明らかにすることである

が成り立つ. 他方, (79)より,∑s∈A

2−HV(s) =

∞∑n=0

#SV(A; n)2−n =

∞∑n=0

#SW(0,1∗; n)2−n

=∑

s∈0,1∗2−HW(s)

が成り立つ.

定理 4.2,定理 4.5,定理 4.8から,次が成り立つ.

定理 4.9. Vの任意の optimal machineとし, A ⊂ 0,1∗ を任意の r.e.な無限集合とする. こ

のとき, ∑p∈V−1(A)

2−|p| と∑s∈A

2−HV(s)

は Chaitin randomである.

以下では,Ω numberとなる実数の特徴づけについて,考察する.

定義 4.10. αを実数とする.このとき, αが left-computableであるとは,ある total recursive

function f : N+ → Qが存在し, f は単調増加で,かつ, limn→∞ f (n) = αが成り立つことを

いう.

上の定義より,次の定理の成立は明らかである.

定理 4.11.任意の optimal machineVに対し,ΩV は left-computableである.

定理 4.12.実数 αを 0 < α < 1であるとする. このとき,次が成立する.

αは left-computable,かつ, Chaitin random

⇐⇒ ∃V : optimal machine (α = ΩV).

Proof. ⇐の証明. 定理 4.2と定理 4.11より明らか.

⇒の証明. 定理 3.8より, αは Martin-Lof randomである. また, αは left-computableな

ので,ある total recursive functionf : N+ → Qが存在し, f は単調増加で,かつ,

limn→∞

f (n) = α

が成り立つ. ここで, dom(U)はある algorithmで P1, P2,· · · と生成されることに注意しよう. さて,次の algorithm Aを考える. A が受理する r.e.集合 Cは Martin-Lof testであるこ

とを示す.

47

Page 48: アルゴリズム的情報理論入門 - ODN3 randomness 27 4 Chaitin numbers 39 1 prefix-free 集合 この章の目的は, prefix-free 集合の基本性質を明らかにすることである

Algorithm A .入力 (n, s) ∈ N+ × 0,1∗ が与えられたとき,

[1]: k := 1, l := 1と初期化する.

[2]: g(k) := f (l)とする.

[3]:I (s) ⊂ [g(k),g(k) + 2−|Pk|−n)かつ ∀t ( s (I (t) 1 [g(k),g(k) + 2−|Pk|−n)

ならば,停止する. そうでなければ, [4] へ進む.

[4]: l := leastl ( f (l) ≥ g(k) + 2−|Pk|−n)と定め, [5] へ進む.

[5]: k := k+ 1と定め, [2] へ戻る.

Cについて,次の不等式が成り立つ.

∑s∈Cn

2−|s| ≤∑

k∈dom(g)

|[g(k), g(k) + 2−|Pk|−n)| ≤∞∑

k=1

2−|Pk|−n = 2−nΩV ≤ 2−n. (80)

よって, CはMartin-Lof testである.

αは Chaitin randomであるから,ある n ∈ Nが存在して,

α <∪s∈Cn

I (s) (81)

が成り立つ. 以下では, (81)を満たす n ∈ N+ を固定して議論する. Algorithm Aの定め方

より,∀k ∈ N+ (g(k)+ 2−|Pk|−n ≤ g(k+ 1)) (82)

である. (81)より,

α <∞∪

k=1

[g(k),g(k) + 2−|Pk|−n] (83)

が従う. ある k, l ∈ N+ で, [4]から [5] に進めないとすると,

g(k) ≤ f (l) < f (l + 1), · · · < g(k) + 2−|Pk|−n

となり,g(k) < α ≤ g(k) + 2−|Pk|−n

を得るが, これは (81) に反する. また algorithm Aより, g(k)k∈N+ は無限列であり,

f (l)l∈N+ の部分列となる. したがって,

limk→∞

g(k) = α

48

Page 49: アルゴリズム的情報理論入門 - ODN3 randomness 27 4 Chaitin numbers 39 1 prefix-free 集合 この章の目的は, prefix-free 集合の基本性質を明らかにすることである

となる. h : N+ → Qをh(k) = g(k+ 1)− g(k) − 2−|Pk|−n

と定める. hは total recursive functionである. すると,

α =

∞∑k=1

2−|Pk|−n + g(1)+∞∑

k=1

h(k)

が成立する. g(1), 及び, 各 n ∈ N+ に対する h(n) は正の有理数であるから, ある total

recursive functiona : N+ → Nが存在して,

α =

∞∑k=1

2−|Pk|−n +

∞∑i=1

2−a(i) (84)

を満たす. よって, b : N+ → Nを

∀i ∈ N+(b(2i − 1) = |Pi | + n & b(2i) = a(i)) (85)

で定めると,これは total recursive functionであり,かつ,

1 > α =∞∑

i=1

2−b(i) (86)

を満たす. 定理 3.9より,

(i) vは単射

(ii ) v(N+) = v(n) | n ∈ N+は prefix-free

(iii ) ∀n ∈ N+(|v(n)| = b(n))

を満たす total recursive functionv : N+ → 0,1∗ が存在する. 次の algorithm Bを考える.

Algorithm B .入力 q ∈ 0,1∗ に対して,

[1]:v(1), v(2), · · · と計算していき, q = v(i)となる i を探し,見つかったなら [2] へ進む.

[2]:i が奇数ならば, U(P(i+1)/2)を出力して,停止する. そうでなければ, λを出力して,停止

する.

Algorithm Bの定め方から, dom(fB) = v(N+)であり,右辺は (ii) より prefix freeなので,

fBは machineである. さて,任意の s ∈ 0,1∗ に対して,ある i ∈ N+ が存在して,

s∗ = Pi (87)

である. 再び, algorithm Bの定め方から, (87)を満たす i ∈ N+ に対して,

fB(v(2i − 1)) = U(Pi) = U(s∗) = s

49

Page 50: アルゴリズム的情報理論入門 - ODN3 randomness 27 4 Chaitin numbers 39 1 prefix-free 集合 この章の目的は, prefix-free 集合の基本性質を明らかにすることである

が成立する. したがって,以下の不等式が成立する.

H fB(s) ≤ |v(2i − 1)|= b(2i − 1) (∵ (iii ))

= |Pi | + n (∵ (85))

= |s∗| + n

= H(s) + n

この不等式から, fBが optimal machineであることが分かる. 一方,

α =

∞∑i=1

2−b(i) (∵ (86))

=

∞∑i=1

2−|v(i)| (∵ (iii ))

=∑

P∈v(N+)

2−|P|

である. dom(fB) = v(N+)であったから,

α = Ω fB

を得る. 以上で定理は示された.

定理 4.12は以下のように拡張される. はじめにいくつか定義を与える.

定義 4.13(Ω-likeness). α, βを left computableな実数とする.このとき, αが βを dominate

するとは,ある計算可能な有理数の上昇列 ann∈N と bnn∈N と, c ∈ N+ が存在して,

limn→∞

an = α, (88)

limn→∞

bn = β, (89)

∀n ∈ N c(α − an) ≥ β − bn (90)

を満たすことを言う. また, left computableな実数 α が Ω-like であるとは, α が, 任意の

left computableな実数を dominateすることを言う.

定義 4.14(universality). ann∈N を計算可能かつ収束する有理数の上昇列とする. このと

き, ann∈N が universalであるとは,任意の計算可能かつ収束する有理数の上昇列 bnn∈Nに対して,ある c ∈ N+ が存在して,

∀n ∈ N c(α − an) ≥ β − bn (91)

であることを言う. 但し,ここで, α = limn→∞ anかつ β = limn→∞ bnとする.

50

Page 51: アルゴリズム的情報理論入門 - ODN3 randomness 27 4 Chaitin numbers 39 1 prefix-free 集合 この章の目的は, prefix-free 集合の基本性質を明らかにすることである

以上の定義の下,定理 4.12は次のように拡張される.

事実 4.15. α ∈ (0,1)を left computableな実数とする. このとき,以下は同値:

(i) αは Chaitin random;

(ii) αは Martin-Lof random;

(iii) αは Ω-like;

(iv) 任意の left-computableな実数 βに対して, H(β n) ≤ H(α n) +O(1);

(v) optimal machineVが存在して, α = ΩV となる;

(vi) universal probabilitymが存在して, α =∑

s∈0,1∗ m(s)となる;

(vii) 任意の計算可能な, αに収束する有理数の上昇列は universal;

(viii) 計算可能な, αに収束する有理数の上昇列で universalであるものが存在する.

事実 4.15は、arXiv:0805.2691の Theorem 3.4である. 事実 4.15の歴史的経緯について

は, arXiv:0805.2691の Section 3の最後を参照されたい. arXiv:0805.2691の Theorem 4.6

では,事実 4.15を partial randomnessの文脈で一般化している. Theorem 4.6で T = 1と

した場合が,事実 4.15である. 事実 4.15の証明は, arXiv:0805.2691の Section 3の最後で

挙げた個々の文献にあたるより,一般化である Theorem 4.6の証明を読むのが,わかり易

いと思う. (個々の文献の証明を再構成した,読み易い証明を与えたつもりである. )

謝辞

本講義ノートは, 2010年 7月の東北大学大学院理学研究科数学専攻における集中講義

の内容に加筆したものです. 講義の機会を与えて下さった田中一之先生に深く感謝します.

また,講義ノートの大部分は,田中一之研究室の大学院生である石田和弘,小本健司,樋口

幸治郎の皆さんがノートを取り,作成したものです. 読み易いノートにまとめた大学院生

の皆さんに感謝します.

なお,本講義ノートの内容の研究は,科研費 基盤研究 (C) (20540134),総務省 戦略的情

報通信研究開発推進制度 (SCOPE), JST CRESTの助成に基づいて行われました. 関係各位

に感謝します.

2011年 1月

只木孝太郎

51

Page 52: アルゴリズム的情報理論入門 - ODN3 randomness 27 4 Chaitin numbers 39 1 prefix-free 集合 この章の目的は, prefix-free 集合の基本性質を明らかにすることである

参考文献

[1] G. J. Chaitin, A theory of program size formally identical to information theory, J. Assoc.

Comput. Mach., vol.22, pp.329-340, 1975.

[2] G. J. Chaitin, Algorithmic Information Theory, Cambridge University Press, Cambridge,

1987.

[3] A. Nies, Computability and Randomness. Oxford University Press Inc., New York, 2009.

[4] R. G. Downey and D. R. Hirschfeldt, Algorithmic Randomness and Complexity.

Springer-Verlag, 2010.

52