数論中級

Intermediate Number Theory

中級(大学3-4年レベル)

この章について

数論中級は二部構成である。応用・実装編では、初級で学んだ定理を暗号や素数判定アルゴリズムに応用し、Python 実装とともに理解を深める。理論編では、2次剰余と平方剰余の相互法則、連分数、数論的関数、p進数体など、より深い理論を学ぶ。

前提知識

  • 初級レベルの内容(合同式、オイラーの定理、中国剰余定理、原始根)
  • 群論の基礎(位数、巡回群)があると望ましい

目次

応用・実装編

初級の定理を暗号・アルゴリズムに応用し、Python 実装とともに学ぶ。

理論編

2次剰余、連分数、p進数体など、より深い数論の理論を学ぶ。

主要な定理

応用・実装編

RSA の正当性

$n = pq$($p, q$ は素数)、$ed \equiv 1 \pmod{\varphi(n)}$ とすると、任意の $m \in \mathbb{Z}/n\mathbb{Z}$ に対して

$$m^{ed} \equiv m \pmod{n}$$

これはオイラーの定理 $m^{\varphi(n)} \equiv 1$ の直接的な応用である。

Miller-Rabin 判定法の誤判定確率

$n$ が合成数のとき、ランダムに選んだ基底 $a$ が「$n$ は素数」と誤判定する確率は高々 $1/4$ である。$k$ 回独立に試行すれば、誤判定確率は $(1/4)^k$ 以下となる。

Hasse の定理(楕円曲線)

有限体 $\mathbb{F}_p$ 上の楕円曲線 $E$ の有理点数 $\#E(\mathbb{F}_p)$ について、

$$|\#E(\mathbb{F}_p) - (p+1)| \le 2\sqrt{p}$$

理論編

素数定理

$\pi(x)$ を $x$ 以下の素数の個数とするとき、

$$\pi(x) \sim \frac{x}{\ln x} \quad (x \to \infty)$$

すなわち $\displaystyle\lim_{x \to \infty} \frac{\pi(x)}{x/\ln x} = 1$。より精密には $\pi(x) \sim \mathrm{Li}(x) = \int_2^x \frac{dt}{\ln t}$。

平方剰余の相互法則

$p, q$ を異なる奇素数とするとき、

$$\left(\frac{p}{q}\right)\left(\frac{q}{p}\right) = (-1)^{\frac{p-1}{2}\cdot\frac{q-1}{2}}$$

メビウスの反転公式

$f(n) = \sum_{d \mid n} g(d)$ ならば $g(n) = \sum_{d \mid n} \mu(d) f(n/d)$

ここで $\mu$ はメビウス関数。

Liouville の定理

$\alpha$ が $n$ 次の代数的無理数ならば、ある定数 $c(\alpha) > 0$ が存在して、すべての有理数 $p/q$ に対し

$$\left|\alpha - \frac{p}{q}\right| > \frac{c(\alpha)}{q^n}$$

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

公開鍵暗号の実装

RSA 暗号では鍵生成にオイラー関数を、復号に中国剰余定理(CRT-RSA)を使う。Diffie-Hellman 鍵交換は離散対数問題の困難性に基づく。これらの暗号は、応用編 A1–A4 の内容で完全に理解できる。

素数判定と鍵生成

RSA 鍵の生成には大きな素数が必要。Miller-Rabin 判定法(A5)は実用上最も広く使われる確率的素数判定アルゴリズムで、OpenSSL や GnuPG の内部で動いている。

信号処理と数論的変換

数論変換(NTT)は、FFT を有限体上で行うもの。原始根を 1 の原始根の代わりに使う。浮動小数点誤差がなく、暗号計算や多倍長整数の乗算で使用される。

楕円曲線暗号(ECC)

楕円曲線(A7)上の離散対数問題は RSA より効率的な暗号を実現する。TLS 1.3 で標準となった ECDHE 鍵交換、Bitcoin の署名(ECDSA)など、現代のインターネットセキュリティの中核を担う。

学習のポイント

  • 理論から実装へ:オイラーの定理や CRT を暗号アルゴリズムに落とし込む力を養う
  • 計算量の意識:Baby-step Giant-step や バイナリ GCD など、アルゴリズムの効率性を比較・分析する
  • 確率的手法:Miller-Rabin のように「確率的に正しい」アルゴリズムの意義と限界を理解する
  • 代数と幾何の接点:楕円曲線を通じて、数論・代数・幾何の融合を体験する