・解法の一般化    モルダー、あなた疲れてるのよ氏

 京都大学前期理系(2015年度)の数学第5問は、

 a、b、c、d、e を正の実数として、整式 f(x)=ax2+bx+c 、g(x)=dx+e を考える。すべての正
の整数nに対して、f(n)/g(n) は整数であるとする。
 このとき、f(x)はg(x)で割り切れることを示せ。


というものでした。質問は、この問題をもう少し一般的に解くことはできるか?です。たとえば、
次のようなことは成り立つのでしょうか?

 Aを整数からなる無限集合とする。(A⊂Z、#A=∞) f(x)、g(x)を実数係数の多項式とする。
(f、g∈R[X]) すべてのAの元aに対し、f(a)/g(a)は整数であるとする。(∀a∈A、 f(a)/g(a)∈Z)
 このとき、f(x)はg(x)で割り切れる。((f)⊂(g))


 DD++さんからのコメントです。(平成27年4月26日付け)

 結論をわずかに強めつつ言い換えて、

 有理関数 k(x) について、y=k(x) が無限に多くの格子点を通るならば、k(x) は有理
数係数多項式である


として、証明はこんな感じでどうでしょう。

 本当はいちいちゼロ除算やゼロ多項式除算の可能性について言及すべきですが本質で
はないので証明中では略しました。それ以外で不備があればご指摘ください。

(証明) 有理関数 k(x) を実数係数多項式 f(x), g(x) を用いて k(x) = f(x)/g(x) と書くことにし
    ます。

 無限に多くの整数からなるある集合 A の任意の元 a について k(a) が整数となるならば、
この有理関数 k(x) が実はただの有理数係数多項式であることを二段階に分けて証明しま
す。

【i】 f(x) および g(x) がともに有理数係数の場合

 f(x) を g(x) で割った商を q(x), 余りを r(x) とします。q(x) も有理数係数多項式なので、ある

自然数 L に対して Lq(x) は整数係数多項式になり、任意の a について Lq(a) は整数です。

すなわち、Lr(a)/g(a) = Lk(a) - Lq(a) において右辺は整数になり、したがって左辺も整数で

す。

 一方 r(x) は g(x) より低次なので、ある自然数 N に対し、「|a|>N ならば |r(a)/g(a)| < 1/L」

が成り立ちます。すなわち、 |Lr(a)/g(a)| < 1 で、しかもこれは整数だったので、|a|>N なる任

意の a について r(a)=0 ということになりますが、そのような a は無限に多く存在するので、

これは恒等的に r(x)=0 の場合しかありえません。

 したがって、 k(x) = f(x)/g(x) = q(x) は有理数係数多項式になります。

【ii】 f(x) および g(x) の係数の中に無理数が含まれる場合

 まず分子分母を g(x) の最高次係数で割ります。係数が全て有理数になった場合は【i】に帰

着します。以下ではまだ無理数が残っている場合を考えます。

 全ての係数が有理数 1 および N 個の有理数体上一次独立な無理数の一次結合で構成

されているとし、それらの無理数を α[1]、α[2]、……、α[N] とします。f(x) と g(x) を x の次

数ではなく、これらの無理数を基準にまとめ直すと、それぞれ N 個ずつの有理数係数多項

式を用いて、

 f(x) = f[0](x) + f[1](x)α[1] + f[2](x)α[2] + …… + f[N](x)α[N]

 g(x) = g[0](x) + g[1](x)α[1] + g[2](x)α[2] + …… + g[N](x)α[N]

と書くことができます。このとき、等式 f(a) = k(a)g(a) において、任意の非負整数 i について

f[i](a) や k(a)g[i](a) は有理数なので、f[i](a) = k(a)g[i](a) が任意の i で成立します。

 ところで、f[i](x) と g[i](x) は有理数係数多項式で k(a) は整数なので、【i】より、これは

f[i](x)/g[i](x) が割り切れて、それぞれが有理数係数多項式になることを意味します。

 そして、N+1 個の多項式 f[0](x)/g[0](x), f[1](x)/g[1](x), ……, f[N](x)/g[N](x) は任意の a に

ついて x=a で共通の値をとります。無限に多くの共有点をもつ多項式の組は同一の式しか

ありえませんので、f[0](x)/g[0](x) = f[1](x)/g[1](x) = …… = f[N](x)/g[N](x) となり、これは明

らかに k(x) = f(x)/g(x) に一致します。よって、k(x) は有理数係数多項式です。

 以上、 【i】, 【ii】 より命題が成立することが示されました。  (証終)


 結論に「有理数係数」をつけたので、逆も真となっています。こっちの証明はさすがに不要
ですよね?


 モルダー、あなた疲れてるのよ さんからのコメントです。(平成27年4月26日付け)

 大まかな論理の流れを追わせていただいたところ、こんなに自然に解けることに感動して
います。細かなところ(【ii】でなぜg(x)がモニックである必要があるのか等)がまだ理解が追い
付いていないので、これから詰めようと思います。DD++さん、ありがとうございます。


 DD++さんからのコメントです。(平成27年4月27日付け)

 モニックである必要があるのではなくて、どこかに有理数係数がないと(確認省いてますが)
g[0](x) がゼロ多項式になる可能性があるのでそれを嫌っただけです。

 g[i](x) (i>0) は、これがゼロ多項式だと f[i](x) もゼロ多項式で、係数に α[i] が含まれてい
るという仮定とぶつけられるんですが...。


                         投稿一覧に戻る