整数環とp進整数環の関係

p進数とは

今日は再び数論について書いてみる。トポロジーの勉強を始める前は数論の本(数論Ⅰ)を読んでいたのだが、これがどうにも消化しきれず、一旦停止していた。本稿では一読して理解しきれなかったトピックの1つであるp進整数について書いてみる。

数論の世界にはp進数と呼ばれる概念がある。私はこの言葉を初めて聞いたとき、てっきり10進数とか2進数とか16進数とか、そういう類の話だと思っていた。しかし、残念ながらこれはちょっと違う。

数論を学んだことがない人にとって、最も基本的な数の構造と言えば実数体 \mathbb{R}であろう。我々は小学生の頃から「数といえば基本は実数」という感覚を暗黙のうちに植え付けられて育ってきた。有理数 \mathbb{Q}とか整数環 \mathbb{Z}とか複素数体 \mathbb{C}などももちろん重要であるが、やはり数の基本は実数という感覚がどこかにあるのではないだろうか。そんな常識を打ち破るのがp進数なのである。

そのことを見るために、まずは実数について再考してみよう。実数というのは、 \mathbb{Q}を1次元の距離空間だとみなした時に、これを完備化したものだと言うことができる。完備化とは、距離空間が完備になるようにその範囲を広げることを言う。完備距離空間とは、その距離空間内における任意のコーシー列が、その距離空間内に極限を持つようなもののことを言う。

例えば、 \mathbb{Q}は完備距離空間ではない。なぜなら、 \mathbb{Q}は稠密なので \sqrt{2}にいくらでも近い点を取ることができるが、 \sqrt{2}に限りなく近づいていくコーシー列の極限値 \sqrt{2}であり、これは \mathbb{Q}の元ではないからである。このように、点列の向かう先がその距離空間の範囲をはみ出るようなものは完備でない。

そこで、任意のコーシー列の極限が全てその距離空間内に収まるように \mathbb{Q}を拡張することを考える。そのようにして作られた \mathbb{Q}の拡大体が \mathbb{R}の正体である。

ここまでの説明では、コーシー列がある極限に収束すると言った場合、暗黙のうちに通常のユークリッド距離を仮定していた。言い換えれば、 \mathbb{Q}ユークリッド距離について完備化したものが \mathbb{R}なのである。

では、 \mathbb{Q}ユークリッド距離以外の距離によって完備化したらどうなるだろうか?実はそこには \mathbb{R}とは様子の異なる数の構造が見えてくる。それこそがp進数である。

p進数を得るときに利用する距離はp進距離と呼ばれる。p進距離の定義を理解するために、まずはp進付値とp進絶対値について説明する。ある有理数qが以下のように表されるとする。

 \displaystyle{
q = p^m \frac{a}{b}
}

ここで、pは素数であり、 m, a, b \in \mathbb{Z} (a, bはpで割れない)である。このとき、 \mathrm{ord}_p (q) = mをqのp進付値と呼ぶ。ただし、 \mathrm{ord}_p(0) = \inftyとする。また、 \left|q\right|_p = p^{-\mathrm{ord}_p (q)}で表される数をqのp進絶対値と言う。

これでp進距離が定義できる。p進距離とは、有理数 q_1, q_2に対して、 \mathrm{d}_p(q_1, q_2) = \left|q_1 - q_2\right|_pで表される値のことを言う。これが距離の公理を満たしていることの説明は割愛する。

このようにして定義されるp進距離に対して \mathbb{Q}を完備化したものはp進体 \mathbb{Q}_pと呼ばれており、 \mathbb{R}に匹敵するほどの豊かな構造を持っていると言われている。そして、 \mathbb{Q}_pの元をp進数と呼ぶのである*1

p進整数環

さて、本稿のタイトルからも分かる通り、ここでの主役はあくまでp進整数である。これを定義しておく必要がある。この目的のために、先ほど導入したp進付値を \mathbb{Q}_pにも拡張しておこう。 r \in \mathbb{Q}_pに対して、有理数の列 (x_n)_{1\le n}がrにp進距離について収束する(これをp進収束と呼ぶ)とき、 \mathrm{ord}_p(r)を以下のように定義する。

 \displaystyle{
\mathrm{ord}_p(r) = \lim_{n \to \infty} \mathrm{ord}_p (x_n)
}

(この極限の収束に関しては追記を参照。)
このとき、p進付値が0以上となるような \mathbb{Q}_pの元をp進整数と呼ぶ。p進整数全体の集合は環を成しており、これをp進整数環 \mathbb{Z}_pと呼ぶ。

整数環とp進整数環の関係

これでやっと本題に入れる。実は、 \mathbb{Z} \mathbb{Z}_pの間には、以下に示すような関係がある。

 \displaystyle{
\mathbb{Z}/p^n \mathbb{Z} \cong \mathbb{Z}_p/p^n \mathbb{Z}_p
}

本稿ではこれの意味するところについて考えてみようと思う。

証明の準備

まずは証明だ。「数論Ⅰ」を見るとこれの証明が書かれているのだが、何度読んでもいまいちピンと来ず、理解が曖昧なままであった。

少し検索してみたところ、参考文献[2]に証明が載っていた。この証明を理解するために、逆極限によるp進整数環の導入について説明する。以下で説明することは一見すると上で説明した \mathbb{Z}_pと全く異なるように見えるかもしれないが、実際には同じものである。

まず、集合 X_n\ (n=1, 2, 3, \cdots)写像 f_n : X_{n+1} \to X_nから成る以下のような系列が与えられたとする。

 \displaystyle{
\cdots \xrightarrow{f_4} X_4 \xrightarrow{f_3} X_3 \xrightarrow{f_2} X_2 \xrightarrow{f_1} X_1
}

このとき、積集合 \prod_{1 \le n} X_nの以下のような部分集合を逆極限と呼ぶ。

 \displaystyle{
\lim_{\substack{\longleftarrow\\n}} X_n = \left\{(a_n)_{1\le n} \in \prod_{1 \le n} X_n ;\ \forall n \in \mathbb{N},\ f_n(a_{n+1}) = a_n \right\}
}

上記において X_n = \mathbb{Z}/p^n\mathbb{Z}とし、 f_n \mathbb{Z}/p^{n+1}\mathbb{Z}から \mathbb{Z}/p^n\mathbb{Z}への自然な全射とすると、以下のような関係が得られる。

 \displaystyle{
\lim_{\substack{\longleftarrow\\n}} \mathbb{Z}/p^n\mathbb{Z} =  \mathbb{Z}_p
}

証明

準備が整ったので証明に移ろう。まず、写像 g_n : \mathbb{Z}_p \to \mathbb{Z}/p^{n}\mathbb{Z},\ (a_i)_{1\le i} \mapsto a_nを考える。これは明らかに全射である。また、 \mathrm{Ker}g_nを考えると、これは \mathbb{Z}_p = (a_i)_{1\le i}の中で a_n = 0となるような元の集合である。定義より a_n \in \mathbb{Z}/p^n \mathbb{Z}なので、 \mathrm{Ker}g_n = p^n \mathbb{Z}_pとなる。よって準同型定理により \mathbb{Z}/p^n \mathbb{Z} \cong \mathbb{Z}_p/p^n \mathbb{Z}_pが分かる。

具体的な対応関係

整数環とp進整数環の間に上述のような同型が得られたわけだが、証明だけ見てもなんだかよく分からないだろう。同型と言うからには両者の間に環としての1対1対応があるはずだから、それを具体的に探ってみよう。

まずは簡単な方からということで、 \mathbb{Z}/p^n \mathbb{Z}の方を考えてみる。こちらは位数 p^nの環であり、その元は \left\{\overline{0}, \overline{1}, \cdots, \overline{p^n-1}\right\}である。

次に、これらの元と対応する \mathbb{Z}_p/p^n \mathbb{Z}_pの元を考えてみよう。これの元は (a_i)_{1\le i} + p^n \mathbb{Z}_pと書ける。ここで、 1 \le i \le nの場合は a_i \lt p^nであるため、 p^n倍の差を同一視したところで違いはない。しかし、 n \lt iの場合は p^n \le a_iとなることがあり得る。そこで、 \mathbb{Z}_pの各 \mathbb{Z}/p^i \mathbb{Z}において p^nを法として合同な数同士を同一視すれば、 \mathbb{Z}_pの元は p^n個の同値類に集約される。すなわち \mathbb{Z}_p/p^n \mathbb{Z}_p = (a_i \mod p^n)_{1\le i}である。そして、 n \le iにおいて a_i \equiv 0, 1, \cdots, p^n-1 \mod p^nとなる元を順次 \overline{0}, \overline{1}, \cdots, \overline{p^n-1}と対応させていけば、確かに1対1の対応関係が見えてくることが分かる。

まとめ

以上、整数環とp進整数環の関係について調べてみた。本稿で述べたことはp進数のほんの触りでしかなく、まだまだ奥深い話が山ほどあるようだ。数論マスターへの道は遠く険しい。

追記

文中に登場した以下の極限の収束性について考察する。

 \displaystyle{
\mathrm{ord}_p(r) = \lim_{n \to \infty} \mathrm{ord}_p (x_n)
}

結論から言うと、 \mathrm{ord}_p(r) \in \mathbb{Z} \cup \{\infty\}となる。これについて以下で説明する。

前提

 x_nがあるp進数rにp進収束することより、 x_nはp進距離についてコーシー列になる。すなわち、任意の実数 \epsilon > 0に対してある N \in \mathbb{N}が存在して、 \forall m, n > Nについて \left | x_m - x_n \right| _p < \epsilonが成立する。ここで、 \mathrm{ord}_p(x_n) = - \log_p \left|x_n \right|_pとなることより、この不等式を以下のように変形できる。

 \displaystyle{
\begin{eqnarray}
\left| x_m - x_n \right| _p &<& \epsilon \\
 - \log_p \left| x_m - x_n \right| _p &>& - \log_p \epsilon \\
 \mathrm{ord}_p (x_m - x_n) &>& \log_p \frac{1}{\epsilon} \\
\end{eqnarray}
}

ここで、 \epsilonは任意の正の実数なので、 M = \log_p \frac{1}{\epsilon}とおけば、 Mを任意の実数と考えてもよい。すなわち、任意の実数 Mに対してある N \in \mathbb{N}が存在して、 \forall m, n > Nについて \mathrm{ord}_p (x_m - x_n) > Mが成立する。

以下で、 \mathrm{ord}_p(x_n)の極限を2つの場合に分けて考察する。

Case 1: 任意の実数 Mについてある N \in \mathbb{N}が存在して、 \forall n > Nについて \mathrm{ord}_p(x_n)  > Mとなるとき

 \lim_{n \to \infty} \mathrm{ord}_p(x_n) \to \inftyとなり、p進付値は正の無限大に発散する。このとき、 \lim_{n \to \infty}\left|x_n - 0 \right| _p = 0となるため、 x_nは0にp進収束する。定義において \mathrm{ord}_p(0) = \inftyとしていたので、これは理にかなった結果であると言える。

Case 2: ある Mについて、どんなに大きな N \in \mathbb{N}を取っても自然数 k> Nが存在して、 \mathrm{ord}_p(x_k) \le Mとなるような x_kが存在するとき

同じ Mに対して、仮定よりある N'が存在して、 \forall m, n > N'について M < \mathrm{ord}_p (x_m - x_n)が成立する。 Nは任意なので、 N=N'であっても条件を満たす x_kは存在する。この時、任意の n > N'について以下が成立する。

 \displaystyle{
\begin{eqnarray}
\mathrm{ord}_p(x_n) &=& \mathrm{ord}_p((x_n - x_k) + x_k) \\
                    &=& \min\{\mathrm{ord}_p(x_n - x_k), \mathrm{ord}_p(x_k)\} \\
                    &=& \mathrm{ord}_p(x_k)
\end{eqnarray}
}

ここで、2つ目の等号は \mathrm{ord}_p(x_n - x_k) \neq \mathrm{ord}_p(x_k)の時しか成立しないので注意が必要であるが、今はその条件を満たしているので問題ない。

 nは任意なので、結局以下が成り立つ。

 \displaystyle{
\mathrm{ord}_p(x_{N'+1}) = \mathrm{ord}_p(x_{N'+2}) = \cdots = \mathrm{ord}_p(x_{k}) = \cdots
}

すなわち、 N'+1以降は全てp進付値が一致するため、 x_nは収束する。

以上2つのケースをまとめると、冒頭で述べた結果が得られる。

参考

[1]

数論I――Fermatの夢と類体論 (岩波オンデマンドブックス)

数論I――Fermatの夢と類体論 (岩波オンデマンドブックス)

[2] http://mathematics-pdf.com/pdf/p_adic_field.pdf

*1:Wikipediaを見ると、個々の数もp進数と呼ぶし、p進体のこともp進数と呼ぶように見受けられる。