順序数 Ordinal Number


|| 順序な数

読んだまま「順番を表す数」のことです。自然数みたいな。

厳密にはもっと広い意味ですけど、こう思ってて問題ありません。

スポンサーリンク





目次


自然数と順序数「順番をつける数」

   有限順序数「つまりは自然数のこと」

   無限順序数「自然数よりも大きな大きさの順番」



・順序数の定義「推移律と三分律を満たす集合」

・順序数の帰納的定義「簡単な定義」

・順序数の再帰的定義「ちょっと込み入った定義」

   再帰定義の具体的な処理「実際になにしてるか」



・順序数の種類「大体三つに分かれてる」

   後続順序数「前を持ってる順序数」

   極限順序数「前のやつとこれの間に数がある」








数学の核って言って良いレベルで超重要な項目です。

てか『順序』関連の項目は基本的に全て超大事。



なにせ人間の直観に一番近い数的概念は「順序付け」です。

人間はこのために数を扱うと言っても過言ではありません。

こじつければ全部そうなんじゃないですか?




そんな「順序」を表す数とくれば、そりゃあ大事でしょう。

むしろ大事じゃないわけないです。

なのでこれは確実に押さえておきましょう。







順序数と自然数


まずは『順序数』の直観的な話から。



ともかく定義通り、こいつは「自然数」を拡張した数です。

ですから自然数よりも広い意味で「順番を表す」のに使われます。




そんなわけですから、当然ベースは自然数なわけです。

なのでまずは自然数から、順序数をサクっと作ってみましょう。






有限順序数


まずは直観に馴染ませるために「有限順序数」を見ていきましょう。



「有限」とあるように、順序数は「無限」も扱えます。

ここが拡張の意味するところになる感じです。




さて、その有限順序数ですが、

これは要するに『自然数』のことです。



「有限」の範囲では、そのまま「自然数」のことを順序数と言えます。

ベースですから、まあ当然の話ですね。




「集合論」的に見ると↓みたいな感じになります。



0:=\{\}=∅

1:=\{0\}=\{∅\}

2:=\{0,1\}=\{∅,\{∅\}\}

...

n+1:=n∪\{n\},...


:= は←を→みたいに定義するって意味)




『大小比較』なんかの数の本質は、

「帰属」や「包含」の推移的な関係にありますから、

どうにかこうにか定義しようとすると↑みたいになるわけです。

(詳しくは別の記事『数』で)






無限順序数


というわけで「有限」の範囲を抜けて、無限へ。

この辺りから直観がちょっと怪しくなります。



ともあれやり方は単純で、

『自然数全体の集合』を、

とりあえず「順序数 ω 」とします。




すると、この「順序数」は次のものを満たします。

「有限順序数 α_n 」とすると、

α_n<\textcolor{skyblue}{ω}:=\{0,1,2,3,…\}




そしてこれも、↑みたいに『次』を定義できちゃいます。

0,1,2,3,...<ω,\textcolor{skyblue}{ω+1}:=ω∪\{ω\},...




んでこれを続けていくと、

...,ω+n,\textcolor{skyblue}{ω+(n+1)}:=ω+n∪\{ω+n\},...




そして↑と同じ流れで↓みたいになります。

1,2,3,...,n,...<ω,...,ω+n,...<\textcolor{skyblue}{ω+ω},ω+ω+1...




んで、まだまだまだまだ続き続けて、

…<ω+ω,...,ω+ω+n,…<ω+ω+ω,...<\textcolor{skyblue}{n*ω},...




どこまでもどこまでも続いていって、

...,n*ω,...,\textcolor{skyblue}{(n+1)ω},...<\textcolor{skyblue}{ω*ω},ω*ω+1,...<\textcolor{skyblue}{ω^n},...



果てなく定義できちゃいます。

...ω^n,...\textcolor{skyblue}{ω^ω},...<\textcolor{skyblue}{ω^{ω^ω}},...<\textcolor{skyblue}{ω^{ω^{ω...}}},...<\textcolor{skyblue}{ω_1},...,\textcolor{skyblue}{ω_n},...<\textcolor{skyblue}{ω_ω},...




とまあ、順序数ってのはこんな感じのやつです。

いくらでも大きなものを考えることができます。



はい、作り方さえはっきりしていれば、

どんなに大きなものでも比較できて、順番を決められるんです。




なんとなく、身近なものに思えませんか?

人間の直観に根差している『数』は、きっとこれですし。



だからというわけでもありませんが、

そんなこいつを好きになってくれると、自分は嬉しく感じます。







順序数の厳密な定義


順序数は『整列集合』の大きさを「比較」するために、

『自然数』を拡張(感覚的に広く)したもの、と言えます。



この『比較』によって、「順番」を定義する感じです。

前と後を判別するためには『比較』が必要不可欠ですからね。




ここで一応押さえておきますが、

『数』とは、基本的に「集合につけられた名札(名前)」です。

記号の指す中身は、あくまで「集合」になります。



当然、『順序数』もその例に漏れません。

順序数もまた、ある「集合の呼び方」に過ぎません。

念のため、しっかりとこれを覚えておきましょう。






さて、ともあれそんな『比較』ですが、

なにでやるかというと、「帰属関係 」を使ってやります。



ざっというと、「前の元を全て持ってる」かどうか、という感じで。

例えば持ってるやつが後、持たれてるやつが前、みたいに。



こんな感じで、集合の帰属関係から、

「どっちが前でどっちが後か」を判定するわけです。




もうちょっとだけ具体的に言うなら、

「整列集合 (S,≤) 」の『順序数』を、

とりあえず「 ord(S,≤)=S_α 」みたいにおくと、



必ず「 S_{α}∈S_{β} 」になるという感じ。

α<β なら)




これで「比較確実性」が満たされます。

「比較確実性」は読んだまま、確実に比較できるってことです。



『数』は、基本的にこれを必ず満たしてます。

満たしてないと比較どうこうって話じゃなくなりますし。






とまあ、こんな性質を満たすように『順序数』は定義されます。

実現したいことは、一貫して「絶対に比較できる」です。




それと記号についての決まりとして、

ここでは「 [\,α∈β\,]≡[\,α<β\,] 」としています。

要するにただの言い換えです。




ただ、これは常に成り立つわけではありません。

」と「 < 」では、

推移律を満たすかどうか、という点で明確に異なっています。



つまるところ「推移律を満たす関係 」が、

「大小比較を表す記号 < 」の定義です。






まとめ


結論から行くと、

「順序数」は『推移律』と「三分律」を満たす集合になります。



つまり「 S^{Ordinal} が順序数」なら、

形式的な定義は↓です。



∀α,β∈S^{Ordinal}\,[\,Trans(α,β)∧Trichot(α,β)\,]



Trans(α,β)≡[\,(α∈β∈S^{Ordinal})⇒(α∈S^{Ordinal})\,] 推移律

Trichot(α,β)≡[\,(α∈β)∨(α=β)∨(β∈α)\,] 三分律




三分律については、ここが整列集合上なので簡略化します。

一般形は書かれ方がえぐいのでちょっと。

まあ、言いたいことは↑と一緒なので、そこは。







順序数の帰納的定義


というわけで、↑のものを使って定義してみましょう。

こいつはたぶん、帰納的定義の方が直感的にわかりやすいです。

↓に再帰的に定義してみたのも載せてみますが、たぶんこっちが。




というのも、これはちょっと簡単にできすぎます。

要は『 [\,α∈β∈γ\,⇒\,α∈γ\,] 』を満たせば良いので。



というわけで初期値から、

ああいや、とりあえず形式的にパッと書いてみます。






整列集合「 (S,≤) 」があって、

『順序数』を『 ord(S,≤)=α 』と表すなら、




・初期値 0 に「空集合 」を割り当てます。


ord(∅,≤)=∅=0




・任意の『順序数』を「 α 」とします。




・その上で「後者 Suc(α) 」は次のように定義します。


Suc(α):=α∪\{α\}






こんだけですね。

この具体例は、↑の『順序数と自然数』でやったやつです。

これは、あれをそのまま形式に直しただけ。






いや、でも本当にそうなのか。

そう思うかもしれませんので、実際に見てみましょうか。



とりあえず、

0 」が欲しいなら『 』です。

1 」を作ると「 ∅∪\{∅\}=\{∅\} 」になります。



ちゃんと「 ∅∈\{∅\} 」です。

前と後を比較できてます。




ちなみにこれはそのまま「 0<1 」と対応してます。

いわば、これらは単なる「言い換え」なわけですね。

(こう定義してれば)




続いて無限順序数でもきちんと成立します。

任意のやつは「 n∈\{n,\{n\}\} 」なんでカット。

まあ、これもパッとやれます。




「自然数全体の集合 ω:=\{1,2,3,...\} 」としても、

その「後者 ω+1 」は「 ω∪\{ω\}=\{1,2,...,ω\} 」で、

ちゃんと「 ω∈\{1,2,…,ω\} 」ですから成立してます。




以上、帰納的定義はこんな感じです。

シンプルで分かりやすいと思いますが、どうでしょう?







順序数の再帰的定義


帰納的定義の方が分かりやすいですが、一応。

再帰的定義と帰納的定義の違いなんかが示せれば。




順序数を定義する準備のために、

整列集合『 (S,≤) 』の「集合 S 」を「定義域」とします。

この上で、ある「写像 f_{ord} 」を考えます。




再帰的定義のために「 f_{ord}(α) 」を定義します。

これが、この定義のやり方での順序数を表す感じです。




再度確認しますが、『順序数』の元(original)は「集合」です。

『整列集合』の特殊(比較確実)な「像」として定義できます。






・初期値に関して


S=∅ 」の場合だけは、

『順序数は空集合と同じ』で「 0 」を割り当てます。



整列集合の元(要素)とは限らない が初期値です。

これは要素数が 1 以上なら↓の再帰処理で確定します。

↓の α が『最小元』だと、その下にはなにもないので。






・再帰処理


(S≠∅)∧(e,α∈S) の時では、


f_{ord}(α)=\{f_{ord}(e)\,|\,e<α\}∪\{∅\} 』とします。



つまり『 ∅∈…∈f_{ord}(β)∈f_{ord}(α) 』で、( β<α

更には『 [\,∅∈f_{ord}(β)∈f_{ord}(α)\,]⇒[\,∅∈f_{ord}(α)\,] 』です。



この「定義域 S 」からの「写像 f_{ord} 」でできた、

『像 f_{ord}(α) 』を『順序数』と定義します。






これが順序数の再帰的な定義で、

「整列集合 (S,≤) の順序数」として「数」を割り当てて、

ord(S,≤) 』みたいな表し方をしたりします。






補足


「元(要素) α 」より小さいものの「像」全てなので、

この「元(要素) α 」による「 S の像 f_{ord}(α) 」から、

「要素の個数」で『何番目か』を決められます。




そう、「何番目かを決められる」から、これは『順序数』なわけです。

こっちが先です。↑の定義はこれを実現するためのものに過ぎません。

その導出手順が↑の説明になります。









具体例


例えの為に「整列集合 (S,≤) 」を用意します。



まず「 S=∅ 」のときは、

定義から「 ord(S,≤)=∅=0 」としてます。



S=\{1\} 」なら「 ord(S,≤)=\{∅\}=\{0\}=1

S=\{2\} 」も「 ord(S,≤)=\{∅\}=\{0\}=1 」です。




見て分かる通り「要素の個数」に対応しています。

厳密には対応させているわけですが、

ともかくちゃんと対応がとれていると言えるでしょう。




S=\{2,3,6\} 」のように一元集合(要素一個)じゃないなら、

ord(S,≤)=\{∅,\{∅\},\{∅,\{∅\}\}\}=\{0,1,2\}=3




処理手順は定義の通りで、「 ∅∈…∈f_{ord}(α)

ちょっと長いですが、中身は↓みたいな感じになります。



S が空集合か否かで場合分けしているので、

まず S≠∅ の確認ができます。

それから再帰処理です。



まず「 f_{ord}(6)=\{f_{ord}(2),f_{ord}(3)\}∪\{∅\}

なぜなら「 2<6,3<6 」だから。



そして「 f_{ord}(3)=\{f_{ord}(2)\}∪\{∅\}=\{∅,f_{ord}(2)\}\}

なぜなら「 2<3 」だから。



最後に「 f_{ord}(2)=\{∅\}∪\{∅\}=\{∅\} 」(定義域無しで空写像)

なぜなら「 2≮2,3≮2,6≮2」だから。




以上の再帰処理から、



f_{ord}(6)=\{f_{ord}(2),f_{ord}(3)\}∪\{∅\}

f_{ord}(6)=\{f_{ord}(2),\{∅,f_{ord}(2)\}\}∪\{∅\}

f_{ord}(6)=\{\{∅\},\{∅,\{∅\}\}\}∪\{∅\}




f_{ord}(6)=\{∅,\{∅\},\{∅,\{∅\}\}\}

f_{ord}(6)=\{∅,\{∅\},\{∅,\{∅\}\}\}=\{0,1,2\}

ord(S,≤)=\{∅,\{∅\},\{∅,\{∅\}\}\}=\{0,1,2\}=3






再帰的定義はこんな感じです。

見た目、明らかに帰納的定義の方が簡単ですね。







順序数の種類


「順序数」は大きく分けて 3 つに分類できます。



1 つが、最小の元である『 0 』。

1 つが、間にあって、次がある『後続順序数』。

1 つが、↑二つじゃない『極限順序数』です。






後続順序数 Successor Ordinal


なんか(任意)「順序数 α 」があるとき、

その次に(後ろ)にくる、一番小さな「順序数」のこと。



要は「次」ってことなので、「後者」と呼ばれたりもします。




定義は↑の帰納的定義とほぼ同じです。

こっちはより広い意味ではありますが、基本的に↓が使われます。



後続順序数 Suc(α):=α∪\{α\}




「冪集合」を使ったものもよく見ます。

後続順序数 Suc(α):=2^α

(定義から α∈2^α






極限順序数 Limit Ordinal


『初期値 0 』でも『後続順序数』でもない、

でも順序数な「順序数」のことです。



なんかえーって感じですけど、ちゃんとあります。




これは名前の通り「極限」の操作に近いことして得る感じ。

なので、いわゆる「連続性」と似たような感じの定義になります。



具体例としては、

例えば『自然数全体の集合 ω 』とか。






この絶対でかい感じを形式的に表すと、

ある『順序数 α,α_{suc} 』があるとします。

そして↑のより大きい『順序数 α_{lim} 』が『極限順序数』なら、



常に α<α_{suc}<α_{lim} が成立。






これじゃちょっと分かり難いと思うんで、

とりあえず「自然数」で考えてみると直観的になります。

困ったときの自然数。いやー、便利ですね。



というわけで、

なんでも良いので「自然数 n 」として、

必ず「 n の後者 n+1 」があるとすると、



定義から、『 n<n+1<ω 』が常に成立。



こんな『 ω 』みたいなやつを「極限順序数」っていいます。

どう見ても初期値でもなければ後続順序数でもないですね。

でも、ちゃんとあります。




いわゆる『無限』に関連する順序数がこれになります。

基数とかでよく使われるので、きちんと押さえておきましょう。






以上で、順序数の基本的なことはおしまいです。

めちゃくちゃ大事な項目なので、是非覚えておきましょう。