素数を合成数+合成数に分解する
例えば30個のブロックを長方形状に並べようと考えます。5×6とか、3×10とか、色々な長方形として並べられますね。
しかし、31個のブロックとなると話が変わります。31は素数なので、1×31、31×1、のパターンしか無いのです。短辺が1の長方形として並べましたーー、なんて言ってみても、え?これが長方形??などとあしらわれます。
31に限らず、並べる個数が素数の場合は常にこの問題が生じます。それでも何とかしてきれいに並べることはできないものでしょうか。
そこで、一つの長方形として並べるのではなく、二つの長方形として並べることを考えてみます。これなら個数が素数でも、一辺が2以上であるような長方形として並べることが出来そうです。実際、例えば3×7+5×2=31の等式があるので、二つの長方形として31個のブロックを並べきることができます。
… 3×7+5×2=31
任意の素数を合成数+合成数の形で表現することが可能であれば、個数が素数であっても長方形状に並べることが可能となりますね。合成数+合成数=素数の表示が可能となれば、両辺に何か数を掛けることによって、合成数+合成数=合成数の表示も可能になります。
合成数+合成数=素数の表示が可能となる素数の条件
例えば2の場合は、2=1+1しかないので、明らかに合成数+合成数にはできません。素数が小さい場合はどうしても無理なようです。では、素数がある程度大きくなれば常に合成数+合成数の表示が可能となるでしょうか?? という問題を解決しましょう。
実は13以上の素数であれば常に可能です。THさんにいただいた美しい証明:
任意の素数について、を満たす以上の自然数が存在する条件を求める。
ここでとすると、と表される。より右辺は以上の任意の奇数であり、以上の素数は常に奇数であるから、に対応するは常に存在する。
逆に、13未満の素数(2, 3, 5, 7, 11)はいずれのパターンも不可能と簡単に分かります。13未満は不可、13以上は常に可能、ということですね!
こんなすっきりと証明出来るなんて……THさんに感謝さまさまです。
合成数の組を探す方法
13以上の素数であれば必ず合成数+合成数で表すことができるので、具体的にその合成数の組を探す手順を示します。
① 好きな数を決める。
② を満たすを決める。
③のは次の式に当てはめると自動で求まります。
として
を満たす整数を決めて
は比較的自由に決めることができ、これにより長方形の形を概ね決めることができます。
例:83を分解する
試しにを分解してみましょう。として、と表します。
は好きな数で指定可能です。としましょう。
次にを求めます。より、以下なら何でも良いです。としましょう。
を求めるため、上記の③の過程のの範囲を求めます。
の範囲の下限は
の範囲の上限は
となることからとなり、範囲を満たすのはだけとなります。
以上より、次の式表示が可能になります。
… 7×8+9×3=83
これなら、ブロックの個数が実は素数だなんて気付きませんね!
導出
は、を定数とみると、未知数がの不定方程式と見なせます。一次不定方程式は、整数を用いた解の表示が可能です:
の条件を使うと、の範囲は次式に定まります。
この範囲を満たすが存在する ⇔ 解が存在する ということになります。逆に言うと、定数はこの範囲にが存在するようなものでなければなりません。
ここで、実数、整数についてを満たすは、であれば必ず存在します。数直線のイメージで言えば当然なのですが、証明しようと思うとややこしいです:
これを使って、が必ず存在するための条件を求めます:
任意の素数に対して、自然数がこの条件を満たせば必ず対応する解が存在するということになります。範囲を満たしていなくても存在するかもしれないですが、探すのは大変なので、この条件をもとに探すのが妥当でしょう。
を好きに決めて、の範囲を求める形にするよう変形すれば、
となります。これで前述の手順が得られます。