nksosu’s blog

素人数楽者SAKUの、喜怒哀楽blogです。

素数万能方程式。

 素数万能方程式。シンプルですね。

(30n+p)(30k+q)=調べたい数
nとkは、0以上の自然数。n=k含む。
pとqは、1から、29までの素数
p=qを含む。
ただし、nとkが、0の時、pとqは、1以外。

さらに、2.3.5の倍数は除きます。


たとえば、
n=855、k=665で、素数が、7と13なら、
(30×855+7)(30×665+13)となり、 25657×19963=512190691です。

これは、素数判定に使えます。
調べたい数字=素数万能方程式なら、それは合成数。errorなら、素数になります。※計算プログラムの組み方にもよります。
※pとqは、1から29までの素数と定義していますから、コンピューターが、判断してくれるでしょう。

例題1 158549は、素数か?
(30n+p)(30k+q)=158549
n=10、k=15、p=11、q=29
(30×10+11)(30×15+29)=311×479=158549となり、素数ではありません。
158551なら、errorとなり、素数でした。

例題2 28666094167283は、素数か?
(30n+p)(30k+q)=286660941672283は、
n=1970751、k=161610、p=7、q=29。
(59122530+7)(484830+29)=286660941672283となり、素数ではありません。
さらに、n=2、k=13458260172、p=
11、q=13。
(60+11)(4037478051163+13)の場合もあります。
つまり、重複です。
286660941672327なら、素数でした。

この万能素数方程式のすごい所は、無限に対応していることです。つまり、RSA暗号にも対応出来ます。コンピューターの容量があればの話ですけど。

この万能方程式を『nk方程式』、または、『nk式素数判定』と名付けたいと思います。

ただ、プログラムをミスると、とんでもなくなります。笑。

いかがですか?
ご意見をお待ちしています。