京都大学 1998年 理系 第2問 解説

方針・初手
(1)は $f(a+2^{n-1})$ を展開し、$f(a)$ との関係を導き出します。展開して現れる項の $2$ の指数に注目し、$2^{n+1}$ を括り出せるかどうかがポイントになります。また、$a^2+7$ が $2^n$ ($n \ge 3$) の倍数であることから、$a$ の偶奇を決定することが証明の鍵を握ります。 (2)は「任意の自然数 $n$ に対して」という文言と(1)の形から、数学的帰納法の利用が自然な発想です。特に(1)は「$n=k$ で成立すれば $n=k+1$ でも成立する」という帰納法のステップそのものを示唆しています。ただし、(1)の前提が $n \ge 3$ であるため、帰納法の出発点として $n=1, 2, 3$ の確認が必要になります。
解法1
(1)
$f(x) = x^2 + 7$ より、$f(a+2^{n-1})$ を計算すると次のようになる。
$$ \begin{aligned} f(a+2^{n-1}) &= (a+2^{n-1})^2 + 7 \\ &= a^2 + 2 \cdot a \cdot 2^{n-1} + (2^{n-1})^2 + 7 \\ &= (a^2 + 7) + a \cdot 2^n + 2^{2n-2} \\ &= f(a) + a \cdot 2^n + 2^{2n-2} \end{aligned} $$
ここで、$n \ge 3$ より $2n-2 \ge n+1$ であるから、整数 $2^{n-3}$ を用いて $2^{2n-2} = 2^{n+1} \cdot 2^{n-3}$ と表せる。したがって、$2^{2n-2}$ は $2^{n+1}$ の倍数である。
また、仮定より $f(a)$ は $2^n$ の倍数であるから、ある整数 $m$ を用いて $f(a) = m \cdot 2^n$ とおける。 これらを先ほどの式に代入すると、
$$ \begin{aligned} f(a+2^{n-1}) &= m \cdot 2^n + a \cdot 2^n + 2^{n+1} \cdot 2^{n-3} \\ &= (m+a)2^n + 2^{n+1} \cdot 2^{n-3} \end{aligned} $$
次に、$a$ の偶奇について調べる。 $f(a) = a^2 + 7 = m \cdot 2^n$ において、$n \ge 3$ であるから $2^n$ は偶数($8$以上の偶数)である。 よって $a^2 + 7$ は偶数であり、$a^2$ は奇数となるため、$a$ 自身も奇数である。
$a$ が奇数であることから、整数 $m$ と $m+a$ は一方が偶数、もう一方が奇数となる。
(i) $m$ が偶数のとき $m = 2L$ ($L$ は整数)とおける。 このとき、$f(a) = 2L \cdot 2^n = L \cdot 2^{n+1}$ となり、$f(a)$ は $2^{n+1}$ の倍数である。
(ii) $m+a$ が偶数のとき $m+a = 2M$ ($M$ は整数)とおける。 このとき、
$$ \begin{aligned} f(a+2^{n-1}) &= 2M \cdot 2^n + 2^{n+1} \cdot 2^{n-3} \\ &= M \cdot 2^{n+1} + 2^{n+1} \cdot 2^{n-3} \\ &= (M + 2^{n-3})2^{n+1} \end{aligned} $$
となり、$f(a+2^{n-1})$ は $2^{n+1}$ の倍数である。
(i), (ii) のいずれの場合も成り立つため、$f(a)$ と $f(a+2^{n-1})$ のうち少なくとも一方は $2^{n+1}$ の倍数であることが示された。
(2)
数学的帰納法を用いて証明する。
[1] $n=1, 2, 3$ のとき $a=1$ とすると、$f(1) = 1^2 + 7 = 8$ である。 $8$ は $2^1=2$, $2^2=4$, $2^3=8$ のいずれの倍数でもある。 よって、$a_1=1, a_2=1, a_3=1$ とすれば、それぞれ $f(a_n)$ が $2^n$ の倍数となり、条件を満たす自然数 $a_1, a_2, a_3$ が存在する。
[2] $n=k$ ($k$ は3以上の自然数)のとき 条件を満たす自然数 $a_k$ が存在すると仮定する。すなわち、$f(a_k)$ は $2^k$ の倍数であるとする。 このとき (1) の結果から、$f(a_k)$ と $f(a_k + 2^{k-1})$ のうち少なくとも一方は $2^{k+1}$ の倍数である。
$f(a_k)$ が $2^{k+1}$ の倍数であるとき $a_{k+1} = a_k$ とおけば、$a_{k+1}$ は自然数であり、$f(a_{k+1})$ は $2^{k+1}$ の倍数となる。
$f(a_k + 2^{k-1})$ が $2^{k+1}$ の倍数であるとき $a_{k+1} = a_k + 2^{k-1}$ とおけば、$a_k$ は自然数、$2^{k-1}$ も自然数であるから $a_{k+1}$ は自然数であり、$f(a_{k+1})$ は $2^{k+1}$ の倍数となる。
いずれの場合も、$f(a_{k+1})$ が $2^{k+1}$ の倍数となる自然数 $a_{k+1}$ が存在することが示された。したがって、$n=k+1$ のときも成立する。
[1], [2] より、任意の自然数 $n$ に対して、$f(a_n)$ が $2^n$ の倍数となる自然数 $a_n$ が存在することが示された。
解説
整数と多項式の性質、および数学的帰納法を組み合わせた典型的な証明問題です。 (1)では展開式における各項が $2^{n+1}$ で割り切れるかどうかを精査します。その際、$a$ が奇数であることを論証し、和の偶奇を用いて場合分けに持ち込むアプローチが要求されます。 (2)は(1)が帰納法のステップ($n \to n+1$ の橋渡し)をそのまま表していることに気づくことが最大のポイントです。ただし、(1)の条件に「$n$ は3以上の自然数」とあるため、帰納法の第一段階として $n=1, 2, 3$ を独立して確かめる必要があります。この初項の確認を $n=1$ だけで済ませてしまうと、論理に隙間が生じて減点対象となるため注意が必要です。
答え
(1)
題意の通り証明された。(証明は解法1を参照)
(2)
題意の通り証明された。(証明は解法1を参照)
自分の記録
誤りを報告
解説の誤り、誤字、表示崩れに気づいた場合は送信してください。ログイン不要です。











