集合論(19) 数の構成④(コーシー列)

前回までで有理数\(\mathbb{Q}\)の構成を行ってきました。
今回と次回で実数\(\mathbb{R}\)の構成を行います。正確な定義などは後回しにするとして、今回は準備としてコーシー列を定義し、コーシー列に関する命題をいくつか証明していきます。

コーシー列

まず、天下り的ですがコーシー列を定義します。

定義

\(\mbox{数列}\{a_n\}_{n=0}^{\infty}\mbox{がコーシー列}\\ \overset{def}{\Leftrightarrow}\ ^{\forall}\epsilon>0\ ^{\exists}N\in\mathbb{N}\ ^{\forall}m,l\in\mathbb{N}(m,l\geq N\Rightarrow|a_m-a_l|< \epsilon)\)

つまり、ある番号以降の任意の2つの差がいくらでも小さくなるような数列ということになります。

※注意点
ここで\(\epsilon\)は任意の正の数としているので実数として考えています。一般的なコーシー列の定義は上で与えたもので正しいですが、実数を定義するためにコーシー列を使う場合、\(\epsilon\)は有理数からとってくる必要があります。(詳細はまた次回に説明します。)

さて、このコーシー列の定義からわかる命題をいくつか証明/反証します。

収束列ならばコーシー列であること

ここで収束列は、ある数に収束する数列のことです。数学的な定義は、次のようになります。

\(\mbox{数列}\{a_n\}_{n=0}^{\infty}\mbox{が収束列}\\ \overset{def}{\Leftrightarrow}\ ^{\exists}a\ ^{\forall}\epsilon>0\ ^{\exists}N\in\mathbb{N}(N\mbox{<}m\Rightarrow |a_m-a|<\epsilon) \)

この定義から収束先である\(a\)は一意であることが示せますが、ここではそれは既知とします。

証明

\(\{a_n\}_{n=0}^{\infty}\mbox{が収束列と仮定する。}\)
\(\color{red}{\forall\epsilon>0}\)を与える。

すると、収束列の定義より
\((1)^{\forall}\epsilon_1>0, ^{\exists}N_1\in\mathbb{N}(N_1<m\Rightarrow|a_m-a|<\epsilon_1)\)
\((2)^{\forall}\epsilon_2>0,^{\exists}N_2\in\mathbb{N}(N_2<l\Rightarrow|a_l-a|<\epsilon_2)\)
となる。ここで収束先\(a\)が一意なので(1),(2)で同じ\(a\)を使った。
(2)の括弧の中身を書き換えると\(N_2<l\Rightarrow|a-a_l|<\epsilon_2\)である。
ここで次のような定義を与える\(\cdots N:=\mbox{max}\{N_1,N_2\}\)
また、\(\epsilon_1,\epsilon_2\)はそれぞれ任意にとれたので
\(\epsilon_1=\epsilon_2=\epsilon/2\)とする。
そして(1)と(2)を合わせる。まずは括弧の中身を合わせると、三角不等式より
\(|a_m-a_l|\leq|a_m-a|+|a-a_l|<\epsilon/2+\epsilon/2=\epsilon\)
全体を書くと

\(\color{red}{\ ^{\exists}N\in\mathbb{N}(N<m,l\Rightarrow|a_m-a_l|<\epsilon)}\)

赤文字で書いた部分がコーシー列の定義となっている。

※(1)と(2)を合わせるとき、条件が緩くなるように設定する必要があります。\(N:=\mbox{max}\{N_1,N_2\}\)としたのは条件を緩くするためで、もとの条件(1)も(2)も\(N_1,N_2\)を\(N\)で置き換えれば成立します。

コーシー列ならば収束列であること

さて、上で示した命題の逆が言えればコーシー列と収束列は同値だとわかります。なので「コーシー列ならば収束列であること」を証明したいのですが、実はそれは必ずしも成り立つとは言えません。以下ではその反例を示します。

反例

有理数\(\mathbb{Q}\)上の数列\(\{a_n\}_{n=0}^{\infty}\)を次で定義する:
\(a_k\)は小数点第\(k\)位まで書き下した\(\pi\)とする。
例えば、\(a_0=3,\ a_1=3.1,\ a_2=3.14\cdots\)となる。

この例での極限は勿論円周率\(\pi\)ですが、\(\pi\notin\mathbb{Q}\)であるのでこの数列は収束しません。しかしコーシー列であることが示せれば、上の命題の反例となります。
\(\{a_n\}_{n=0}^{\infty}\)がコーシー列となることを示します。

\(\color{red}{\forall \epsilon>0}\)に対して、\(\color{red}{\exists N\in\mathbb{N}}(10^{-N}\leq\epsilon/2)\)である。
\(|\pi-a_k|<10^{-k}\)であることを使うと、
\(\color{red}{\forall m,l\in\mathbb{N}(m,l>N\Rightarrow|a_m-a_l|}\\
\leq|a_m-\pi|+|\pi-a_l|\color{red}{<}10^{-m}+10^{-l}\leq\color{red}{\epsilon}\)
赤文字で書いた部分がコーシー列の定義となっている。

これよりコーシー列だからといって収束するとは限らないとわかりました。また、今回挙げた反例を考えるとき、数列を有理数\(\mathbb{Q}\)からではなく実数\(\mathbb{R}\)から選ぶようにすると収束することが分かります。
次回の予告をすると、考える範囲を全てのコーシー列が収束するように選ぶことを完備化と言います。次回は有理数\(\mathbb{Q}\)を完備化したものとして実数\(\mathbb{R}\)を定義していきます。これが今回慣れないコーシー列を導入した理由です。

コーシー列の部分列もコーシー列

番号数列\(\{n_k\}_{k=0}^{\infty}\)と、数列\(\{a_n\}_{n=0}^{\infty}\)の部分列\(\{b_k\}_{k=0}^{\infty}\)を次のように定義します。

\(\mbox{番号数列}\{n_k\}_{k=0}^{\infty}\\\overset{def}{\Leftrightarrow}(\forall k\in \mathbb{N}\rightarrow n_k\in\mathbb{N})\land (n_k\lt n_{k+1})\\ \mbox{部分列}\{b_k\}_{k=0}^{\infty}\\\overset{def}{\Leftrightarrow}(b_k=a_{n_k})\)

\(\{a_n\}_{n=0}^{\infty}\)を初項から書くと\(a_0,a_1,a_2\cdots\)ですが、これの部分列を取り出すことを考えます。例えば\(n\)が素数の時のみ取り出すと\(a_2,a_3,a_5,\cdots\)となって、番号列は\(n_0=2,n_1=3,n_3=5,\cdots\)とできます。この時、番号列の選び方は無限に存在しますが、下付きの文字が大きくなると、必ず大きくなることが分かります。上の定義ではこの性質を使って番号数列を定義しています。ここから直ちに\(n_k\geq k\)も分かります。

「コーシー列の部分列もコーシー列」という命題は、上の定義を満たすような部分列をコーシー列から取り出した時、それがコーシー列となるということを主張しています。

証明

\(\color{red}{\forall \epsilon>0}\)を与える。
\(\{a_n\}_{n=0}^{\infty}\)はコーシー列なので、
\(\color{red}{\exists N\in\mathbb{N}\ \forall m,l\in N}\ (\color{red}{m,l\geq N}\Rightarrow |a_m-a_l|<\epsilon)\)
部分列\(\{n_k\}{k_0}^{\infty}\)を考えて、\(n_m\geq m\)かつ\(n_l\geq l\)であるので
\(|a_{n_m}-a_{n_l}|<\epsilon\)が言える。
部分列の定義より、これは
\(\color{red}{|b_m-b_l|<\epsilon}\)となる。
赤文字で書いた部分が、部分列\(\{b_k\}_{k=0}^{\infty}\)がコーシー列である定義となっている。

コーシー列は有界

まずは有界の定義を書いていきます。

\(\mbox{全順序集合}(X,\leq)\mbox{に対して、部分集合}A\subset X\mbox{が有界}\\ \overset{def}{\Leftrightarrow}A\subset X\mbox{に対して上界・下界が両方とも存在する}\)

上界・下界の定義はここを参照してください。早速証明にうつります。

証明

コーシー列\(\{a_n\}_{n=0}^{\infty}\)を考える。この時、定義より次が満たされる:
\(\forall\ \epsilon>0\ \exists N\in\mathbb{N}\ \forall m,l\in\mathbb{N}(m,l\geq N\Rightarrow|a_m-a_l|<\epsilon)\)
ここで必要な場合添え字の入れ替えをして\(a_m\leq a_l\)となるようにする。

\(a:=max\{a_0,a_1,\cdots ,a_{N-1},a_l+\epsilon\}\)
\(b:=min\{a_0,a_1,\cdots ,a_{N-1},a_m-\epsilon\}\)
とすると\(a,b\)はそれぞれコーシー列\(\{a_n\}_{n=0}^{\infty}\)の上界,下界となっている。

\(b\)に関しても同様の議論なので、\(a\)が上界であることの証明をする。
\(a_i\leq a(i=0,1,\cdots,N-1)\)は定義より明らか。
\(N\leq \forall p\in\mathbb{N}\)に対して、\(a_p\leq a\)を示す。
\(p\geq N\)であるので、コーシー列の定義より
\(|a_p-a_l|<\epsilon\)が言える。
これは\(a_l-a_p<\epsilon\)かつ\(a_p-a_l<\epsilon\)であるので
\(a_l-\epsilon<a_p<a_l+\epsilon\leq a\)となり、\(a_p\leq a\)が示された。

※この証明において、\(a,b\)の定め方に\(\epsilon\)が出てきてますが、\(\epsilon=1\)等と具体的な数字を入れて考えることができます。基本的に\(\epsilon\)は任意の数ですので、何を選んでも同等の議論ができます。

コーシー列の和や差、積はコーシー列

最後にコーシー列同士の和や差、積もコーシー列となることを示します。数列同士の演算はそれぞれの項の演算となります。
つまり、
和:\(\{a\}_{n=0}^{\infty}+\{b_n\}_{n=0}^{\infty}=\{a_n+b_n\}_{n=0}^{\infty}\)
差:\(\{a\}_{n=0}^{\infty}-\{b_n\}_{n=0}^{\infty}=\{a_n-b_n\}_{n=0}^{\infty}\)
積:\(\{a\}_{n=0}^{\infty}・\{b_n\}_{n=0}^{\infty}=\{a_n・b_n\}_{n=0}^{\infty}\)
です。
商に関しては、\(a_n=1,b_n=1/n\)という数列を考えると、\(\{a_n\}_{n=0}^{\infty},\{b_n\}_{n=0}^{\infty}\)は両方ともコーシー列になっていますが、\(a_n/b_n=n\)となり、有界でないためコーシー列ではないことがわかります。

証明

コーシー列\(\{a_n\}_{n=0}^{\infty},\{b_n\}_{n=0}^{\infty}\)を考える。定義より
(1)\(\forall\epsilon_a>0\ \exists N_a\in\mathbb{N}\ \forall p,q\in\mathbb{N}(p,q\geq N_a\Rightarrow|a_p-a_q|<\epsilon_a)\)
(2)\(\forall\epsilon_2>0\ \exists N_b\in\mathbb{N}\ \forall i,j\in\mathbb{N}(i,j\geq N_b\Rightarrow|b_i-b_j|<\epsilon_b)\)

和と差

\(\color{red}{\forall \epsilon>0}\)に対して\(\epsilon_a=\epsilon_b=\epsilon/2\)とし、
\(N:=max\{N_a,N_b\}\)とする(\(N\)を構成できたので自動的に\(\color{red}{\exists N\in\mathbb{N}}\))と、
\(\color{red}{\forall m,l\in\mathbb{N}}(\color{red}{m,l\geq N}\Rightarrow [|a_m-a_l|<\epsilon/2\land|b_m-b_l|<\epsilon/2])\)
が言えてる。従って、三角不等式を使うと
\(\color{red}{|(a_m+b_m)-(a_l+b_l)|}=|(a_m-a_l)+(b_m-b_l)|\\\leq|a_m-a_l|+|b_m-b_l|\color{red}{<}\epsilon/2+\epsilon/2=\color{red}{\epsilon}\)

赤文字で書いた部分は、数列\(\{a_n+b_n\}_{n=0}^{\infty}\)がコーシー列であることの定義となっている。
差については、\(\{c_n\}_{n=0}^{\infty}\)を\(c_n=-b_n\)で定義して同じ議論をすれば良い。

コーシー列は有界なので、
\(\exists M_a,M_b(\forall n\in\mathbb{N}\Rightarrow|a_n|\leq M_a,|b_n|\leq M_b)\)となる。
\(\color{red}{\forall\epsilon>0}\)とする。
(1),(2)の\(\epsilon_a,\epsilon_b\)は任意にとれるので、それぞれ\(\epsilon_a=\frac{\epsilon}{2M_b},\epsilon_b=\frac{\epsilon}{2M_a}\)とする。
\(N:=max\{N_a,N_b\}\)とする(\(N\)を構成できたので自動的に\(\color{red}{\exists N\in\mathbb{N}}\))と、
\(\color{red}{\forall m,l\in\mathbb{N}}(\color{red}{m,l\geq N}\Rightarrow [|a_m-a_l|<\frac{\epsilon}{2M_b}\land|b_m-b_l|<\frac{\epsilon}{2M_a}])\)
が言えてる。ここで三角不等式を使うと
\(\color{red}{|a_mb_m-a_lb_l|}=|(a_mb_m-a_mb_l)+(a_mb_l-a_lb_l)|\\
\leq|a_m|\cdot|b_m-b_l|+|b_l|\cdot|a_m-a_l|\color{red}{<}M_a\cdot\frac{\epsilon}{2M_a}+M_b\cdot\frac{\epsilon}{2M_b}\\
=\color{red}{\epsilon}\)

赤文字で書いた部分は、数列\(\{a_n・b_n\}_{n=0}^{\infty}\)がコーシー列であることの定義となっている。

まとめ

今回はコーシー列を定義してその命題をいくつか証明しました。
次回はこれらの性質等を使って実際に実数\(\mathbb{R}\)を構成していきます。次回で長かった数の構成もついに最終回となります。
余談ですが、私が集合論で最初に感動した部分は実数の構成過程でした。集合論だけでなく他の数学の分野(特に微積分などの解析学)の理解に多く貢献することになり、大学数学を進める上で重要になるかと思います。

    コメント

    タイトルとURLをコピーしました