素数と算術の基本定理 ― 整数の原子分解
素数の定義と基本性質を定め,素数の無限性のユークリッドによる証明を与える.算術の基本定理(存在と一意性)を厳密に証明し,Miller-Rabin素数判定法やエラトステネスの篩を解説する.
1 素数の定義と基本性質
定義 1 (素数).
以上の整数 が素数(prime)であるとは, の正の約数が と のみであることをいう.素数でない 以上の整数を合成数(composite)という.
補題 2 (素数の整除性).
を素数とし, ならば または .
証明.
と仮定する. は素数なので .ベズーの等式より なる整数 が存在する.両辺に を掛けて . かつ より . □
系 3.
素数 と整数 に対して ならば,ある が存在して .
2 素数の無限性
定理 4 (ユークリッド).
素数は無限に多く存在する.
証明.
有限個の素数 がすべての素数であると仮定する. を考える. なので は少なくとも1つの素因数 を持つ. はいずれかの と一致するはずだが, かつ より .これは に矛盾. □
3 算術の基本定理
定理 5 (算術の基本定理).
任意の 以上の整数 は素数の積として表せる(存在).さらにその表し方は,因子の順序を除いて一意的である(一意性).
証明.
存在: に関する強帰納法. は素数なので成立. とする. が素数ならば終了. が合成数ならば ()と書け,帰納法の仮定により はそれぞれ素数の積として表せるので もそうである.一意性:( は素数,,)とする. に関する帰納法で示す. ならば は素数で かつ . とする. より,素数の整除性の補題から なる が存在する. も素数なので .両辺を で割ると となり,帰納法の仮定を適用すれば かつ残りの素因数も(並べ替えを除いて)一致する. □
4 エラトステネスの篩
注意 6.
以下の素数をすべて列挙する古典的手法がエラトステネスの篩(sieve of Eratosthenes)である. から までの整数を用意し, から順に を満たす素数 の倍数 を消去する.残った数がすべて素数である.計算量は である.
定理 7.
合成数 は 以下の素因数を持つ.
証明.
()とすると より . の任意の素因数は 以下である. □
5 Miller-Rabin 素数判定法
定義 8.
奇数 に対して ( は奇数)と書く.整数 ()が に対する強擬素数の証拠であるとは, または なる が存在することをいう.
定理 9.
が素数ならば, なるすべての は強擬素数の証拠を与える. が合成数ならば,強擬素数の証拠を与える ()は全体の 以下である.
注意 10.
この定理に基づき,ランダムに 個の基底 を選んでテストすれば,合成数を素数と誤判定する確率は 以下となる. で確率は 以下であり,実用上十分な信頼性を持つ.