1. トップ
  2. 新着ニュース
  3. 社会
  4. 社会

猿が「hamlet」と打てる確率は1兆分の1

プレジデントオンライン / 2019年5月26日 11時15分

■「無限の猿定理」と暗号の技術

「無限の猿定理」というのをご存じだろうか。ランダムに文字列をつくり続けていけば、どんな文字列もいつかは出来上がるという定理だ。

たとえば、猿にパソコンのキーボードを適当に打たせることで、ウィリアム・シェイクスピアの著作『ハムレット』『マクベス』や『ロミオとジュリエット』などを、いつかは書き上げることが可能であるというものだ。無限の猿定理に関連する観念は古くから考えられており、古代ギリシャの哲学者アリストテレスまでさかのぼるともいわれている。

では、実際にそんなことが可能かどうかを検証していくことにしよう。ここでは話をわかりやすくするために、パソコンのキーボードのキーが100個あると仮定して説明する。そして、「hamlet(ハムレット)」という6文字の単語を、猿がランダムにキーを叩いてつくるとする。

まず、「h」を打つ確率は100分の1、「a」も100分の1、「m」も100分の1、「l」も100分の1……となり、6文字がきちんとタイプされる確率は、図のように100分の1の6乗、つまり1兆分の1になる(図参照)。とてつもなく低い確率ではあるが、確かにゼロではない。猿がランダムに6個のキーを打つ操作をずっと繰り返せば、理論上「hamlet」という文字列がいずれは出来上がることになる。

同様に文字数が10文字、100文字、1000文字……と増えていけば、それだけ文字列が完成する確率は低くなっていくが、それでも決してゼロになることはない。いつかは10文字、100文字、1000文字の文章を書き上げられる可能性があるのだ。したがって、膨大な文字数で構成されるシェイクスピアの著作であっても、猿がランダムにキーを叩き続けていれば、いずれは完成させることが理論上は可能なのである。

もちろん、その可能性は極めて低く、完成に要する時間の期待値は想像を絶する長さとなる。仮に1秒間に1億文字が打てるとしても、わずか100文字の文章を完成させるのに要する時間は、「およそ100億年の1無量大数倍の1京倍(1の後に0が94個の年数)」という天文学的な数字になる。そう考えると、猿が『ハムレット』や『ロミオとジュリエット』を書き上げるのにかかる時間の途方もなさが想像できるだろう。

ところで、この「無限の猿定理」は、実は「暗号」と深いつながりがある。現在、ネット上の情報のやり取りなどで使われている暗号は「公開鍵暗号」とよばれるもので、数学の素数の積と素因数分解を応用して開発されたものなのである。

■暗号が解き明かされる確率はゼロではない

しかし、その公開鍵暗号は100%安全かというと、決してそうではないのだ。世界中のコンピュータを繋いで、公開鍵の暗号推測の演算をしていけば、暗号が解き明かされる確率はゼロではない。しかし、実際にその解を求めるための期待年数は、たとえそうしたとしても数十年、数百年かかるといわれている。

ということは、そこまで時間とコストをかけて暗号を解こうとする人は、まずいないだろう。同じように可能性がゼロではないからといって、わざわざ猿にシェイクスピアの作品を打たせてみようとした酔狂な人がいたという話も聞いたことがないのだ。

----------

横山明日希
数学のお兄さん
2012年、早稲田大学大学院修士課程単位取得(理学修士)。数学応用数理専攻。大学在学中から、数学の楽しさを世の中に広く伝えるために「数学のお兄さん」として活動を開始。精力的に講演やイベントを実施

----------

(数学のお兄さん 横山 明日希 構成=田之上 信)

この記事に関連するニュース

トピックスRSS

ランキング

記事ミッション中・・・

10秒滞在

記事にリアクションする

記事ミッション中・・・

10秒滞在

記事にリアクションする

デイリー: 参加する
ウィークリー: 参加する
マンスリー: 参加する
10秒滞在

記事にリアクションする

次の記事を探す

エラーが発生しました

ページを再読み込みして
ください