■フィボナッチ数列の周期性(その3)
【2】リュカ数列と素数判定法
2n −1の形の数が素数であるためにはnが素数であることが必要条件です.一方,2^n+1の形が素数であるためにはn=2^mの形であることが必要です.しかし,このことは十分条件ではなく,指数nがどんな数のとき2^n−1,2^n+1が素数になるかはいまだに解決されていません.
添字に2^nをもつリュカ数列{L2^n},すなわち,3,7,47,2207,4870847,・・・では,漸化式L2^(n+1)=(L2^n)^2−2が成り立ちますが,この漸化式とフェルマーの小定理(1640年)
「もしpが素数であれば,任意の整数aに関してa^p−aはpの倍数である.」を応用した素数判定法がリュカテストです.
リュカはフィボナッチ数列,リュカ数列を用いてメルセンヌ数(2^n−1)が素数であるかどうかを判定し,(2^127−1)が素数であることを示しています(1876年).この数は12番目のメルセンヌ素数で,1952年の13番目(2^521−1)からはコンピュータによる発見ですから,コンピュータを使わずに見つけられた最大のメルセンヌ素数になっていて,わかっている最大の素数として最長不倒記録を保ち続けました.
1994年,アメリカのスーパーコンピュータ,クレイによって発見された258716桁の巨大な素数(2^859433−1)は当時知られている最大の素数(33番目のメルセンヌ素数)ですが,リュカテストはメルセンヌ数が素数であるか否か判定する非常に能率的なアルゴリズムとなっていて,リュカテストの効率のよさのおかげで最近の素数の世界記録はすべてメルセンヌ素数が独占しています.
なお,フェルマー数(2^(2^n)+1)に対してはリュカテストと同じくらい能率的なペパンの素数判定法があり,コンピュータを使って6番目のフェルマー素数の探索が続けられているのですが,はたして本当に存在するのでしょうか?
リュカやペパンの素数判定法によってある数が合成数とわかってもそれを素因数分解するのはとても大変な作業になります.現在,巨大な整数の素因数分解に楕円曲線法とか平方ふるい法とか能率のよい素因数分解法が考え出されています.
===================================