整数係数多項式の因数分解 – 1991年京大 数学 後期 理学部 第2問

本問が出題された頃、京大後期の理科系問題は理学部用とそれ以外用に別れていました。本問は理学部用の第2問で、問題文は以下のとおりです。
整数を係数とする3次の多項式 f(x) が次の条件(*)を満たしている。
(*)任意の自然数 n に対して f(n) は n(n+1)(n+2) で割り切れる。
このとき、ある整数 a があって f(x) = ax(x+1)(x+2) となることを示せ。
(*) が十分条件なのは明らかですが、必要性は意外に苦労しそうです。主張は明らかなだけに隔靴掻痒的もどかしさがMAXです。案外あっさり解けそうな気もしますがとりあえず見ていきましょう。
1991年京大 数学 後期 理学部 第2問 小問1の解法(その1)
この手の「すべての自然数においてホニャララが成り立つとき云々」的な問題に対しては、あの伝説の1993年東工大第4問に出てきた、 f(n+1) – f(n) を計算して次数を一つ落とすというやり方を、何とかの一つ覚えのようにまず試してみます。
しかし、やってみると却って複雑になってしまうので、ここはもっと単純に、まず f(x) の定数項が0になることが言えないか、考えてみます。
f(x) は (*) を満たすので、当然すべての自然数 n に対し f(n) は n で割り切れます。そこで b を f(x) の定数項とします。 b は整数ですが f(n) は n で割り切れるので、 b もすべての自然数 n で割り切れる必要があります。
ところがもし b が0でないとすると、 n が b と素な自然数であるときにも b は n で割り切れる必要がありますが、これは矛盾です。
以上、 f(x) の定数項が 0 であることがあっさり証明できました。すなわち f(x) は x で割り切れます。
同様に、 f(x) を x + 1 で割った余りを c と置くと、 c は整数なのでやはり 0 になります。さらに、 f(x) を x +2 で割った余りを d と置くと d = 0 が成り立ちます。
ゆえに f(x) は x のほかに x +1 および x + 2 でも割り切れるので、 f(x) の3次の項の係数を a と置くと f(x) = ax(x+1)(x+2) が成り立ちます。
1991年京大 数学 後期 理学部 第2問 小問1の解法(その2)
f(x) と x(x+1)(x+2) がどちらも3次式であることを利用します。
f(x) は整数 a,b,c,d(a ≠ 0) を使って以下のように書き下せます。
f(x) = ax(x+1)(x+2) + bx^2+cx+d
両辺を x(x+1)(x+2) で割ります。
\frac{f(x)}{x(x+1)(x+2)}= a + \frac{bx^2+cx+d}{x(x+1)(x+2)} \cdots(1)
b,c,d のいずれかが 0 でないとき、(*)によりすべての自然数 n に対して \displaystyle\frac{f(n)}{n(n+1)(n+2)} は整数なので
a + \frac{bn^2+cn+d}{n(n+1)(n+2)}
も整数のはずですが、 n が十分に大きいとき、
0 < \left | \frac{bn^2+cn+d}{n(n+1)(n+2)} \right| < 1
が成り立つので矛盾です。
したがって b=c=d=0 であり、 f(x) = ax(x+1)(x+2) です。
解法のポイント
本問は解法その1の代数的手法と、解法その2の解析的手法のどちらでも解けます。お好みでどちらを選んでも良いでしょう。
解法その1は、すべての自然数で割り切れる整数なんてものは0しかない、と思いつければすんなりと導出できるでしょう。
解法その2は、条件(*) の内容から f(x) を x(x+1)(x+2) で実際に割ってたらどうなるだろうかと発想できれば、式(1) を導出できるので答えにたどり着けるでしょう。
解法その2の考え方は 2015年京大理系数学第5問 を解くときにも使っていますが、有理式に対する「すべての整数/自然数でほにゃらら」的な問題では使える手法なので、覚えておきましょう。