連続する自然数の積がヤバい – 2012年東大 数学 第4問

お手上げ(Gerd AltmannによるPixabayからの画像)

 2012年東大 数学 第4問 は整数問題ですが、見た目よりずっと難問です。問題文は以下のとおりで、東大2次試験からの引用です。

n を 2 以上の整数とする。自然数 (1 以上の整数) の n 乗になる数を n 乗数と呼ぶ
ことにする。以下の問いに答えよ.
(1) 連続する 2 個の自然数の積は n 乗数でないことを示せ。
(2) 連続する n 個の自然数の積は n 乗数でないことを示せ。

 問題の主張は至極もっともですが、特に小問2の証明は難航を極めます。5分考えて突破口が見いだせなければ、とっとと見切りをつけてもっとかんたんな問題に注力しましょう。それではどんなふうにヤバいのか、見ていくことにします。なお、本稿の内容は東大が発表したものではありません。

2012年東大 数学 第4問 小問1の解法

 本問のような「☓☓☓でないことを証明せよ」的な問題を証明する場合は、まず背理法で何とかできないか考えてみましょう。

 連続する2数の積が n 乗数だと何かまずいことになることを導出しますが、本問のような素因数分解系の問題の場合、出てくる数の公約数がどうなっているかを、最初に確認しましょう。

 出てくる数字が互いに素だったりするとその後の論理展開が非常に楽になります。整数問題で素数を扱っているものが多いのはこういうことも影響していると思いますが、ここで連続する2数が互いに素であることをソッコー思い出しましょう。

 難関大に挑むような皆さんだとどこかで一度は目にしている性質だと思いますが、証明は簡単です。

 もし連続する2数 m および m+1 が互いに素でないとすると、その最大公約数を c > 1 と置き

m = ac
m+1 = bc

であるとするとき、

ac + 1 = bc

なので

(b-a)c = 1

が成り立つはずですが、これは c > 1 であることに矛盾します。

 以上を踏まえて背理法で証明します。

  m(m+1) = anが成り立っているとします( m,a,n ≧ 2 は自然数)。すると m および m+1 も n 乗数です。もしそうでないとするとある a の素因数 p が存在して、 m における p の次数が n の倍数になりません。

 ところが m(m+1) における p の次数は n の倍数でなければならないので、 m+1 も p を素因数に持つ必要があります(そうでなければ an における p の次数が n の倍数にならない)。

 これは mm+1 が互いに素であることに矛盾しますので、 m(m+1) = anが成り立つならば m および m+1 は n 乗数である必要があります。

 そこで

m = bn
m
+1 = cn

であるとします(b および c はともに自然数)。

 このとき

bn+1 = cn

なので

cnbn = 1

であり、これの左辺を因数分解して

(cb)(cn-1+cn-2b+cn-3b2+…+bn-1) = 1

を得ますが、左辺第2項は必ず 1 より大きい自然数なので矛盾です。

 ゆえに連続する 2 個の自然数の積は n 乗数でないことが証明できました。

2012年東大 数学 第4問 小問2の解法

 こいつは難問です。この手の問題に対するアプローチは

  1. 小問1の結果を利用した数学的帰納法
  2. 背理法

といったところが考えられますが、数学的帰納法の方は「n-1 乗数でないからといって n 乗数でないとは言えないんじゃね」という疑念をついに論破できませんでした。

 では背理法の方はどうかと言うと、どうやって矛盾を引き出せばいいのか全く思いつきません。普通に考えて

m(m+1)…(m+n-1) = an

などということが起きそうにないことは明らかな気がしますが、 mn をうまく選べば出来そうな気もするし、どうしようかと考えているうちに、

  • そもそも左辺の連続数の個数と右辺のべき乗数が同じなのは本質的なことなのだろうか、小問1のように右辺のべき乗数は何でも良い、となっていないのは何か意味があるのだろうか
  • つまり左辺と右辺とで数字の個数が同じというのはキーポイントなのではないか
  • 左辺の数字が連続しているのは何らかの不等式評価によって何かがそのどれかと一致していることを導出させるためではないか

といったところから、

m < a < m+n-1

が成り立つんじゃね、と思いつければ勝ちです。

 そこで改めて

m(m+1)…(m+n-1) = an

が成り立っているとします( m,a,n ≧ 3 は自然数)。このとき、もし am であったとすると

an < m(m+1)…(m+n-1)

となり、もとの条件に矛盾します。また m+n-1 ≦ a であったとすると

m(m+1)…(m+n-1) < an

となり、やはりもとの条件に矛盾します。したがって

m < a < m+n-1

が成り立つので am+1,m+2,…,m+n-2 のいずれかと等しくなります。よって a+1 は m+2,m+3,…,m+n-1 のいずれかと等しくなります。

 ここで a m(m+1)…(m+n-1) のすべての素因数を約数に持つことに注意します(そうでなければm(m+1)…(m+n-1) = an が成り立たない)。

 ところが、 a+1 は a と互いに素なので a が含まない素因数を約数に持つはずで、これは a m(m+1)…(m+n-1) のすべての素因数を約数に持つことに矛盾します。

 ゆえに連続する n 個の自然数の積は n 乗数でないことが証明できました。

解法のポイント

互いに素であることを利用しましょう(Gerd AltmannによるPixabayからの画像)

 小問1は連続する2数が互いに素であることを適用すれば、比較的容易に解けます。この性質は「そんなの常識」に近いので、是非押さえておきましょう。小問1はきっちり得点しておきたいところです。

 小問2は m < a < m+n-1 を思いつけるかどうかが全てです。筆者はこれをひねり出すのに七転八倒しましたが、本稿に示したようになんでそんな条件がつけられているのかを考察することもヒントにつながることがあるので、にっちもさっちも行かないときはこのようなメタ的思考も取り入れてみましょう。

東大2012年

Posted by mine_kikaku