マスログ

2020/11/19

電卓で\(n\)乗根を求める!!そして現れたメルセンヌ数!!


和からの松中です。

今日は電卓遊びのお話です。電卓で\(3\)乗根、ひいては\(n\)乗根を求める方法について紹介したいと思います。そしてその方法を詳しく調べるうちに数論好きが愛するメルセンヌ数が現れてしまいました!

\(3\)乗根、\(n\)乗根とは

\(3\)乗根、\(n\)乗根と言っても聞きなれない方も多いかもしれませんが、ルート(\(\sqrt{\,\,\,\,}\))の親戚です。例えば\(\sqrt{4}\)は\(2\)乗すると\(4\)になる数の事でした。\(\sqrt{4}\)は「\(4\)の\(2\)乗根」とも呼ばれます。同じように「\(4\)の\(3\)乗根」とは「\(3\)乗すると\(4\)になる数」のことで、このような記号で表します\(\sqrt[3]{4}\)。中学校で習った\(\sqrt{\,\,\,\,}\)も正確には\(\sqrt[2]{\,\,\,\,}\)のことだったのです。\(4\)乗根、\(5\)乗根等、一般の\(n\)乗根も同じように定義され、\(a\)の\(n\)乗根\(\sqrt[n]{a}\)は「\(n\)乗すると\(a\)になる数」を表します。(補足:\(a\)の\(n\)乗根は複素数の世界まで考えると\(n\)個あるのですが、ここでは\(a\)は正の実数とし、\(\sqrt[n]{a}\)も正の実数のものを選ぶこととします。)

さて、みなさんがお持ちの電卓には『\(\sqrt{\,\,\,\,}\)』ボタンはついていると思いますが、\(3\)乗根を求める『\(\sqrt[3]{\,\,\,\,}\)』ボタンはついていないことでしょう。電卓に『\(\sqrt{\,\,\,\,}\)』ボタンがついているおかげで、面積が\(10{\rm cm}^2\)になる正方形の1辺の長さは『\(1\)』『\(0\)』『\(\sqrt{\,\,\,\,}\)』と打ち込むことで約\(3.162278{\rm cm}\)であることが分かります。

同じように体積が\(100{\rm cm}^3\)になる立方体の1辺の長さを求めようとしても『\(\sqrt[3]{\,\,\,\,}\)』がない電卓では簡単に求めることができません。

「\(\sqrt[3]{\,\,\,\,}\)なんて日常で使わないからついてないんだ!不要だ!」と思われる方もいるかもしれませんが、上の例のように意外にも身近で使えそうな例はあるのです。もちろん日常で体積が与えられた立方体の1辺の長さを求めたいと思うことはないとは思えますが、実はこれはギリシャの3大作図問題の1つなのです。紀元前の人たちが同じようなことを考えていたと考えたら興味がわきませんか?

いずれにしてもここでは日常で使えるかとか使えないとかそういうことは度外視して、電卓遊びとして\(\sqrt[3]{\,\,\,\,}\)を求める方法を紹介していきます。

\(3\)乗根の求め方

例えば\(7\)の\(3\)乗根つまり、\(\sqrt[3]{7}\)を求めてみましょう。このときは、『\(\times\)』『\(7\)』『\(=\)』『\(\sqrt{\,\,\,\,}\)』『\(\sqrt{\,\,\,\,}\)』ボタンを順に押していくことを1セットの操作として、1から始めてこの操作を繰り返し行うことで電卓の表示板に現れる数は\(\sqrt[3]{7}\)に近づいていきます!!

実際に12桁表示の電卓でやってみました。
■0回目
\(1\) (最初は\(1\)を入力します。)

■1回目(『\(\times\)』『\(7\)』『\(=\)』『\(\sqrt{\,\,\,\,}\)』『\(\sqrt{\,\,\,\,}\)』を順に押す)
\(1.62657656169\)

■2回目(〃)
\(1.83693224413\)

■3回目(〃)
\(1.89364163776\)

■4回目(〃)
\(1.90809045307\)

■5回目(〃)
\(1.91171985024\)

■6回目(〃)
\(1.91262827769\)

■7回目(〃)
\(1.91285545200\)

■8回目(〃)
\(1.91291224979\)

■9回目(〃)
\(1.9129264495\)

■10回目(〃)
\(1.9129299945\)

この操作を繰り返せば繰り返すほど正確な値に近づくはずですが、指が疲れますし、有限桁の数しか表示できない電卓では完璧に\(\sqrt[3]{7}\)を求めることはできないので、この辺でやめます。

ではこの『\(1.9129299945\)』という数を電卓で3回かけてみましょう。

\(1.9129299945\times 1.9129299945 \times 1.9129299945 = 6.99998695523\)

たしかにかなり\(7\)に近い数になっています!!!

同じように正の実数\(a\)の\(3\)乗根を求めたい場合は\(1\)から始めて「『\(\times\)』『\(a\)』『\(=\)』『\(\sqrt{\,\,\,\,}\)』『\(\sqrt{\,\,\,\,}\)』を順に押す操作」を1セットの操作として繰り返し行えばよいのです。

数学的な理由

それでは上のやり方でなぜ\(a\)の\(3\)乗根が求まるのかを証明していきます。高校数学で指数と数列を学んだ方なら問題なく理解できると思います。

まずは\(A_0=1\)とします。そして\(A_0\)に「『\(\times\)』『\(a\)』『\(=\)』『\(\sqrt{\,\,\,\,}\)』『\(\sqrt{\,\,\,\,}\)』ボタンを順に押す」の操作を\(m\)回繰り返したときの数を\(A_m\)とします。
つまり\(A_m\)は以下の漸化式から定まる数列になります。
\[
\begin{cases}
A_0=1\\
A_{m+1}=\sqrt{\sqrt{a\cdot A_m}}
\end{cases}
\]

この数列\(\{A_m\}\)の一般項を求めてみましょう。

そのためには、まず\(A_m=a^{b_m}\)であるとして\(\{b_m\}\)の漸化式を導き\(b_m\)を求めます。

\(A_0=1=a^0\)より\(b_0=0\)です。

また\(\displaystyle A_{m+1}=\sqrt{\sqrt{a\cdot A_m}}=\sqrt{\sqrt{a\cdot a^{b_m}}}=\sqrt{\sqrt{a^{b_m+1}}}=a^{\frac{b_{m+1}}{4}}\)であるため、\(\displaystyle b_{m+1}=\frac{b_{m}+1}{4}\)であることが分かります。

つまり\(\{b_m\}\)は以下の漸化式から定まる数列になります。
\[
\begin{cases}
b_0=0\\
b_{m+1}=\frac{b_{m}+1}{4}
\end{cases}
\]

これは高校で学ぶ簡単な漸化式となっています。これを解くために特性方程式の解を計算しましょう。

\(b_m=b_{m+1}=\beta\)として、\(\displaystyle \beta=\frac{\beta+1}{4}\)より\(\displaystyle \beta=\frac{1}{3}\)です。

よってこれから
\(\displaystyle b_{m+1}-\frac{1}{3}=\frac{1}{4}\left(b_m-\frac{1}{3}\right)\)であることが分かります。つまり\(\displaystyle \left\{b_m-\frac{1}{3}\right\}\)は初項\(\displaystyle 0-\frac{1}{3}=-\frac{1}{3}\)、公比\(\displaystyle \frac{1}{4}\)の等比数列になります。

よって、
\[
b_{m}-\frac{1}{3}=-\frac{1}{3}\left(\frac{1}{4}\right)^m
\]
となり、結局、
\[
A_m=a^{b_m}=a^{\frac{1}{3}-\frac{1}{3}\left(\frac{1}{4}\right)^m}
\]
が分かります。この操作を何回も繰り返すとき、つまり\(A_m\)で\(m\)が大きいとき、
\(\displaystyle \left(\frac{1}{4}\right)^m\)はほとんど\(0\)となるため、\(A_m\)はほぼ\(\displaystyle a^{\frac{1}{3}}\)つまり、\(\sqrt[3]{a}\)となるわけです。

一般化しよう

上の方法で電卓で好きな数の\(3\)乗根を求めることができるようになり、その仕組みもわかったのですが、\(3\)乗根が求められるようになると\(5\)乗根、\(7\)乗根、\(9\)乗根などそれ以外の\(n\)乗根も求めたくなるのが人の性(さが)です。上の方法をもう少し一般化して\(5\)乗根、\(7\)乗根、\(9\)乗根にもチャレンジしてみます。

ちなみにですが、\(4\)乗根は『\(\sqrt{\,\,\,\,}\)』を\(2\)回押すことで求められますし、\(8\)乗根は『\(\sqrt{\,\,\,\,}\)』を\(3\)回押すことで求められます。また\(6\)乗根は先のやり方で\(3\)乗根を出した後『\(\sqrt{\,\,\,\,}\)』を押すことで求めることができます。

一般化の方法はいろいろありますが、ここでは「\(a\)を掛ける回数」、と「『\(\sqrt{\,\,\,\,}\)』を押す回数」を変えてみましょう。先の\(3\)乗根の例では「\(a\)をかける回数」は\(1\)回、「『\(\sqrt{\,\,\,\,}\)』を押す回数」は\(2\)回でした。この回数をそれぞれ\(q\)回、\(p\)回として一般化してみます。

\(A_m\)、\(b_m\)を同じように定義すると、\(\{A_m\}\)の漸化式は、
\[
\begin{cases}
A_0=1\\
A_{m+1}=\left(a^q\cdot A_m\right)^{\frac{1}{2^p}}
\end{cases}
\]
であることが、\(\{b_m\}\)の漸化式は、
\[
\begin{cases}
b_0=0\\
b_{m+1}=\frac{b_{m}+q}{2^p}
\end{cases}
\]
となることが分かります。

これもまた高校数学の知識で漸化式を解くことで、
\[
A_m=a^{b_m}=a^{\frac{q}{2^p-1}-\frac{q}{2^p-1}\left(\frac{1}{2^p}\right)^m}
\]
となります。ここで\(m\)を大きくしていくことで、つまり「\(a\)を\(q\)回かけて\(\sqrt{\,\,\,\,}\)を\(p\)回とる」という一連の操作を何回も繰り返すことで、\(A_m\)は\(\displaystyle a^\frac{q}{2^p-1}\)に近づいていくことが分かります。

\(\displaystyle \frac{q}{2^p-1}\)で\(q\)と\(p\)を動かして、\(\displaystyle \frac{1}{5}\)や\(\displaystyle \frac{1}{7}\)を作ることができれば、\(5\)乗根、\(7\)乗根を求めることができます。

実際、
\(q=3\)、\(p=4\)とすることで\(\displaystyle \frac{1}{5}\)に、
\(q=1\)、\(p=3\)とすることで\(\displaystyle \frac{1}{7}\)に、
\(q=7\)、\(p=6\)とすることで\(\displaystyle \frac{1}{9}\)
になることがわかるため、『\(\sqrt{\,\,\,\,}\)』ボタンがついた電卓で\(2\)~\(9\)乗根を求めることができるようになりました。続いて\(10\)乗根は\(5\)乗根を出した後に『\(\sqrt{\,\,\,\,}\)』ボタンを押すことで求めることができます。とても良い感じで求めることができる\(n\)乗根が増えていっています。

実際にこの方法を使って、12桁表示の電卓で\(10\)の\(3\)乗根、\(5\)乗根、\(7\)乗根、\(9\)乗根を求めてみました。一連の操作を繰り返す回数は\(10\)回としています。正確な値と比べてもよい近似となっています。(注:正確な値も有限桁で打ち切った近似値です。)

\(n\) \(q\) \(p\) 計算結果(\({\sqrt[n]{10}}\)) 正確な値(\({\sqrt[n]{10}}\))
\(3\) \(1\) \(2\) \(2.15443311304\) \(2.15443469003\)
\(5\) \(3\) \(4\) \(1.58489319245\) \(1.58489319246\)
\(7\) \(1\) \(3\) \(1.38949549394\) \(1.38949549437\)
\(9\) \(7\) \(6\) \(1.29154966501\) \(1.29154966501\)

\(p\)が大きいほど速く収束することから、\(n=9\)の時は計算結果と正確な値が一致していますね!

そして出てくるメルセンヌ数の性質

電卓で\(2\)~\(10\)乗根を求めることができるようになったのですが、\(11\)乗根など他の\(n\)乗根はどうでしょうか?

これまでの議論から\(\displaystyle \frac{q}{2^p-1}\)で\(q\)、\(p\)を動かして\(\displaystyle \frac{1}{n}\)の形にできれば、\(n\)乗根を求めることができるわけですが、結局求めることができる\(n\)乗根は\(2^p-1\)に出てくる約数であることが分かります。例えば\(p=9\)であれば、\(2^p-1=511=7\times 73\)なので、\(q=7\)とするとことで、\(73\)乗根を求めることができるわけです。

\(2^p-1\)という数はメルセンヌ数と呼ばれる数です。特にこれが素数の時にメルセンヌ素数と呼ばれます。何年かに一度人類が発見した最大の素数が更新されていますが、近年はメルセンヌ素数であることが多いです。実際に現在人類が知っている素数の大きさランキングでトップ8がメルセンヌ素数となっています。(参考:巨大な素数の一覧(wikipedia))

ではどのような数がメルセンヌ数の素因数として現れるのでしょうか?

どうやら\(p\)が素数の時はメルセンヌ数\(2^p-1\)に出てくる素因数は\(8\)で割ると\(1\)か\(-1\)余る数であることが知られているようです。例えば次の目標は\(11\)乗根ですが、\(11\)は\(8\)で割ると\(3\)余る素数のため、\(p\)が素数の時は\(11\)は\(2^p-1\)の約数には現れません。しかし\(p\)が素数でなければ\(p=10\)とすることで\(2^p-1=1023=3\cdot 11\cdot 31\)ですから、\(q=3\cdot 31=93\)とすることで、\(\displaystyle \frac{q}{2^p-1}=\frac{1}{11}\)となり、\(11\)乗根を求めることができます。

今回の方法で任意の数の\(n\)乗根を求めることが可能かどうかは、「メルセンヌ数の約数にはどのような数が出てくるのか?」、「任意の自然数がメルセンヌ数の約数になり得るのか?」という問題に絡んでいるのです。これらの問題が解決されているのかどうかわかりませんが、もしご存知の方(@waraka_nagomi)にコメントいただければ嬉しいです。

いかがでしたでしょうか?ちょっとした電卓遊びのつもりで書いた記事ですが、気付けばメルセンヌ数というまだまだたくさんの未解決問題を孕んでいる数の性質にまで言及してしまったというお話でした。

(文/松中)

数学教室和(なごみ)」では電卓の使い方からリーマン予想まで、あなたの数学学習を全力サポートします。お問い合わせはこちらから。お問い合わせページへ