リュカ–レーマー・テストの証明

リュカ–レーマー・テスト英語: Lucas–Lehmer primality test)とは、素数判定法の1つ。メルセンヌ数 Mn = 2n − 1 の素数判定のみに特化している。

名称は、フランス数学者エドゥアール・リュカおよびアメリカ数学者デリック・ヘンリー・レーマー英語版にちなんで名付けられた。

リュカ–レーマー・テストをさらに一般化した素数判定法であるリュカ–レーマー–リーゼル・テストも参照。

概要

編集

初項  漸化式  一般項   で定義される数列 S0 , S1 , S2 , ... について考える(ただし、   。)。

p奇素数のとき、メルセンヌ数 Mp = 2p − 1 が素数であるための必要十分条件は、Sp−2Mp で割り切れることである[1][2][3]

なおフェルマー数にも、同様な素数判定の定理であるペピンの判定法英語版が存在する。

リュカ–レーマー・テストの証明

編集

以下、Q = 2p − 1 とする。

十分性の証明

編集
  Qは素数。

まず、Sp−2 ≡ 0 (mod Q) であれば、Q が素数であることを証明する。 Sp−2 ≡ 0 (mod Q) で、かつ Q が合成数だと仮定する。すると、Sp−2Q の一番小さい素因数 F を用いて Sp−2 = kFkは自然数)と表せる。Sn の一般項から

 

となる。  なので、両辺に をかけて、

 

1を移項し、両辺を2乗すると、

 

よって、

 

となる。ここで、  a, b, c, dは整数)で表される数を考えたとき、ac (mod F) かつ bd (mod F) の時に二つの数は F を法として合同であるとする。そして、

 

という集合 G ではどの要素 gn にも gngm ≡ 1 (mod F) となるような gm が存在する。つまり、集合 G には0は含まれない。よって、集合 G には最大で F 2 − 1 個の相異なる要素しか含まれない。gn = 1 となる n のうち最小のものを e とすると任意の自然数 r について gr = gje+r (jは0以上の整数) が成り立つ。よって 1 ≤ eF2 − 1 となる。

 

より、2pe の倍数。2p > e ならば、e = 2t (tは0以上p−1以下の整数)となる。言い換えれば 2p−1e の倍数となる。つまり、

 

となるはずである。しかし、上の式、

 

より、

 

よって、2p = e となる。しかし、FQ の一番小さい素因数なので、

 

よって、F2 − 1 < 2p となる。 よって、2p = e なので、F2 − 1 < e となり 1 ≤ eF2 − 1 と矛盾する。 よって、背理法により、Sp−2 ≡ 0 (mod Q) ということは、Q は素数であるということの十分条件である。

必要性の証明

編集
p が奇素数であり、かつ Q が素数  

次に p が奇素数であり、かつ Q が素数であれば、Sp−2 ≡ 0 (mod Q) であることを証明する。 この証明をするうえで、平方剰余の相互法則を使う。 まず、二項定理より、

 

Q は素数なので n = 0, Q の場合を除いて Q の倍数。よって、

 

Q ≡ −1 (mod 4), 3 ≡ −1 (mod 4) で、平方剰余の相互法則により、

 

Q = 2p − 1 = 2(2p−1 − 1) + 1 = 2((3 + 1)(p−1)/2 − 1) + 1 ≡ 12 (mod 3)よって

 

つまり、

 

が成り立ち、よって、

 

両辺に を掛けて、

 

この式は を利用して、

 

とも書ける。 平方剰余の相互法則の第2補充法則 により、

 

よって、

 

ここで、 なので、

 

となる。両辺に を掛けて、

 

両辺に を足して、

 

よって、Sp−2 ≡ 0 (mod Q) であることは、Q が素数であることの必要条件である。

以上により、リュカ-レーマー・テスト

 

が示された。Q.E.D.

脚注

編集
  1. ^ 中村(2008)、84-85頁
  2. ^ 和田(1981)、50-52頁、194-199頁
  3. ^ 和田(1999)、§5 リュカ・テスト

参考文献

編集

関連文献

編集

関連項目

編集

外部リンク

編集