この記事は仮面ライダービルドの数式の第11話です。
⌊1.30637…^{3^2} ⌋=11
ミルズ関数です。
この、1.30637…という値はミルズ定数と呼ばれます。
ミルズ関数はこんな形をした関数です。
M(n)=⌊1.30637…^{3^n} ⌋
ちょっと変な形の括弧は床関数というもので、小数点以下を切り捨てるものです。
そしてこのミルズ関数はnがどんな自然数でも素数になります。
\begin{align}
M(1)&=2\\
M(2)&=11\\
M(3)&=1361\\
M(4)&=2521008887\\
M(5)&=16022236204009818131831320183\\
\end{align}
急激に数が大きくなりますね。
なお、無限に素数を求めることが出来る関数というのは知られてませんので、
ミルズ関数が大きな素数を簡単に求められる関数"だとしたら"、とても良い関数です。
ミルズ関数は素数を無限に求められる関数ではありません。
これの秘密はミルズ定数にあり、ミルズ関数が素数を常に返すように調整して計算された値です。
ミルズ関数は次の式のこういう感じで各値を確定していきます。
M(n)^3 \le M(n+1) < (M(n)+1)^3 \\
例を出してみます。
2^3 \le M(2) < 3^3, \ M(2)= 11\\
11^3 \le M(3) < 12^3, \ M(3)=1361
ですから、任意の自然数nで以下の式を満たす素数Pが常にある、ということを意味する関数です。
n^3 \le P < (n+1)^3
例を出すと100000だと、+1000以内に素数がある、という意味になり、結構ガバガバです。
ちなみに、素数定理を使うと、平均になりますが、ln(100000)≒11.5 以内に素数がある、となります。
平均を確実に存在する、にするために、この数に係数を加えることになりますが、
ずっと少ない数であることは確かでしょう。