数論初級

Elementary Number Theory

初級(大学1-2年レベル)

English version

この章について

数論初級では、合同式(モジュラー算術)を中心に学ぶ。フェルマーの小定理、オイラーの定理、中国剰余定理など、数論の古典的で重要な定理を習得する。これらは現代の暗号理論(RSA暗号など)の基礎となる。

前提知識

  • 入門レベルの内容(約数・倍数、素数、ユークリッドの互除法)
  • 基本的な証明の読み書き

目次

1. 合同式の基礎

合同の定義と基本性質。

  • 合同の定義 $a \equiv b \pmod{n}$
  • 合同の基本性質
  • 剰余類と $\mathbb{Z}/n\mathbb{Z}$

2. 合同式の演算

合同式における四則演算と逆元。

  • 加法・減法・乗法
  • 乗法逆元の存在条件
  • 1次合同式の解法

3. フェルマーの小定理

素数を法とする合同式の基本定理。

  • 定理の主張と証明
  • 逆元の計算への応用
  • フェルマーテスト

4. オイラーの定理

フェルマーの小定理の一般化。

  • オイラーの $\varphi$ 関数
  • オイラーの定理
  • $\varphi$ 関数の計算

5. 中国剰余定理

連立合同式の解法。

  • 定理の主張
  • 構成的証明
  • 計算アルゴリズム

6. 原始根

$(\mathbb{Z}/n\mathbb{Z})^*$ の生成元。

  • 位数の定義
  • 原始根の存在条件
  • 原始根の個数

7. 暗号への応用

RSA暗号の数学的基礎。

  • 公開鍵暗号の概念
  • RSA暗号の仕組み
  • 安全性の根拠

補遺. 不定方程式

ディオファントス方程式の体系的解説。

  • 1次不定方程式の合同式による解法
  • ピタゴラス数の完全分類
  • 2平方和定理、ペル方程式

補遺. ハミング数

5-smooth数とも呼ばれるハミング数の体系的解説。

  • 定義と基本性質
  • Dijkstraの3方向マージアルゴリズム
  • FFT・音楽理論への応用

補遺. タクシー数

ラマヌジャンの逸話で有名な1729。

  • Ta(n) の定義と既知の値
  • カーマイケル数との関連
  • ワーリングの問題

補遺. エラトステネスの篩

N 以下の素数を高速に列挙するアルゴリズム。

  • アルゴリズムと $p^2$ 最適化
  • 計算量 $O(N \log \log N)$
  • セグメント篩・線形篩

補遺. コラッツ予想

3n+1 問題 — 数学の未解決問題。

  • コラッツ写像と軌道
  • 停止時間とコラッツ木
  • テレンス・タオの部分的成果

補遺. 素数の無限性(解析的証明)

素因数分解と対数による解析的証明。

  • 素数計数関数 $\pi(x)$ の下界導出
  • $\pi(x) \to \infty$ の証明
  • 素数定理・リーマン予想との関連

補遺. 72の法則

複利計算の便利な近似公式。

  • 数学的導出と精度分析
  • 69.3/70/72 の比較
  • 金融・人口増加への応用

8. 演習問題

理解を深めるための練習問題。

  • 合同式の計算
  • 定理の応用
  • 証明問題

主要な定理

フェルマーの小定理

$p$ を素数、$a$ を $p$ と互いに素な整数とするとき、

$$a^{p-1} \equiv 1 \pmod{p}$$

オイラーの定理

$n$ を正整数、$a$ を $n$ と互いに素な整数とするとき、

$$a^{\varphi(n)} \equiv 1 \pmod{n}$$

ここで $\varphi(n)$ は $1$ 以上 $n$ 以下で $n$ と互いに素な整数の個数。

中国剰余定理

$m_1, m_2, \ldots, m_k$ が互いに素であるとき、連立合同式

$$x \equiv a_i \pmod{m_i} \quad (i = 1, 2, \ldots, k)$$

は $\bmod M = m_1 m_2 \cdots m_k$ で一意な解を持つ。

このレベルで理解できる応用

RSA暗号

現代のインターネットセキュリティの基盤。2つの大きな素数 $p, q$ の積 $n = pq$ を公開し、$\varphi(n) = (p-1)(q-1)$ を秘密にする。オイラーの定理により $m^{ed} \equiv m \pmod{n}$ となる $e, d$ を用いて暗号化・復号を行う。素因数分解の困難性が安全性の根拠。

擬似乱数生成

線形合同法 $x_{n+1} = ax_n + c \pmod{m}$ は最も基本的な擬似乱数生成器。パラメータの選び方($a, c, m$ の関係)に数論的条件が必要で、原始根の概念も関係する。

ハッシュ関数

データ構造のハッシュテーブルでは、キーを素数 $p$ で割った余りをインデックスにすることが多い。素数を使うと衝突(異なるキーが同じ場所に入る)が減る。これは素数の「割り切れにくさ」による。

素数判定

フェルマーの小定理を使った素数判定(フェルマーテスト):$a^{n-1} \not\equiv 1 \pmod{n}$ なら $n$ は合成数。ただしカーマイケル数という例外があり、完全ではない。ミラー・ラビン法はこれを改良したもの。

学習のポイント

  • 合同式に慣れる:通常の等式と合同式の違い(特に除法)を理解する
  • オイラーの $\varphi$ 関数:素因数分解との関係を把握する
  • 群論との関連:$(\mathbb{Z}/n\mathbb{Z})^*$ が乗法群をなすことを意識する
  • 応用を意識:RSA暗号を通じて理論の実用性を体感する