Log of ROYGB

はてなダイアリーが廃止されるので、引っ越しました。

pと2pの間

1から10までの数字を2つのグループに分けて、各グループの数を全て掛け合わせた積が同じになるように出来るかという問題が「すべてがFになる」という小説に登場します。
出来ないということを簡単に納得させることができるエレガントな回答が作中の人物によってなされています。そして1から16までの数字の場合でも出来ないであろうことも示唆されています。

それでは1からnまでの数字で、出来る場合があるでしょうか。

出来ないだろうというのが、今のところの判断です。もう少し条件をゆるくしてmからnまでの数字としても出来ないだろうと思います。

  • 任意の自然数mとnにおいて、mからnまでの数字を2つの組に分け、各組の総積が同じようにすることは出来ない。(m<n)

任意の数を自由に選らんでもよければ、(2,3,4,6)を(2,6)と(3,4)に分ければどちらの組も積は12になります。でもこれは続いている数ではありません。2から6までだと(2,3,4,5,6)になりますが、これをどう分けても積は同じになりません。5を含む方の組の積は5の倍数になりますが、5が無い方は5の倍数ではありえないからです。
数を10までにすると、5を含む組と10を含む組のどちらも5の倍数になります。要は素数が1つだけ含まれる場合は、どちらかがその素数の倍数になり、もう片方は倍数にならないので同じ数にはなり得ないのです。(2,3,4,6)の場合は、2と3が素数ですが、4と6がその2倍の数なのでうまく分けることでどちらの組も2や3の倍数であるように出来ます。それが出来たからといって同じ数になるとは限りませんが、出来なければ必要条件を満たさないわけです。

以上から、mからnまでの数字を2つ組に分け、各組の総積が同じになることがあるとすると以下の条件を満たす必要があります。

  • mからnまでの数字に素数pが存在する場合、2pも存在する必要がある。

この条件を満たさないと、2つに分けた片方にだけpが存在することになるので各組の総積の片方はpを素因数に持つがもう片方は持たないので同じ数にはなり得ません。

ところで、以下のような仮説が成り立つ場合はどこまでいっても上の条件を満たすことができません。

  • ある素数pと、その2倍の2pの間には必ず別の素数が存在する。

これは単なる仮説で証明はできていません。でも2と4の間には3が存在するし、3と6の間には5が存在するといったように具体的な数を使って検算すると、何となく確からしいように思えてきます。この仮説が証明できれば、mからnまでの数字を2つの組に分け、各組の総積が同じようにすることは出来ないというのも証明されることになります。わりと簡単に証明できそうな気もするし、ものすごく難しいかもしれません。


ちなみに範囲を自然数から整数に広げてmが負の数、nが正の数とした場合にはnからmまでの数を、各組の総積が同じになるように2つに分けることが出来ないことは容易に証明できます。



(28日追記)
コメントで教えてもらいました。“ある素数pと、その2倍の2pの間には必ず別の素数が存在する”というのはすでに証明されているようです。
wikipedia:ベルトランの仮説


そうするとmからnまでの数字を2つに分ける場合の問題はこれで解決かというと、素数を全く含まない場合もあるというのが抜け落ちてていました。


(さらに追記)
そういえば同じことを考えている人もいるんだろうと思って検索してみました。1から10の場合は、小説に出てくる問題なので沢山見つかりました。


これは前に読んだことがあると思います。積が等しくなる必要条件についても書かれて、数を増やすことで可能にならないかも少し検討されています。
http://www.hyuki.com/d/200507.html#i20050731214806 [結] 2005年7月 - 結城浩の日記


こちらのエントリーは1からnまでに関して考えられています。私の知らなかった素数の性質をつかって、nの場合でも成り立たないことを証明しています。
http://wkpn.net/blog/2006/07/1_2.html したっぱプログラマーの日記 1から10の数字の中で孤独なのは?