Lagrange 補間

問題1. (1961年 東大文理共通 第2問) $x$ の四次式 $f(x)$ において $$\begin{aligned} f(-0.2)&=2.226\\ f(-0.1)&=2.460\\ f(0)&=2.718\\ f(0.1)&=3.004\\ f(0.2)&=3.320 \end{aligned}$$ であるとき, $f'(0)$ を求めよ.

もちろん $f(x)=ax ^ 4+bx ^ 3+cx ^ 2+dx+e$ として計算することは可能であり, 頑張ると $a=-0.8\dot{3}, b=0.5, c=1.408\dot{3}, d=2.715, e=2.718$ と出ます. というわけで $f'(0)=d=2.715$ が答えなのですが, さすがに面倒くさすぎます. もう少し楽はできないものでしょうか. そこでよく考えてみると $5$ つの値が与えられた $4$ 次式は一意に決定されるので, とりあえず上手く行きそうなものを作ってしまえばそれでOKだということです. というわけで無理やり作ってみましょう.

$$\begin{aligned} f(x)&=f(-0.2)\frac{(x-(-0.1))(x-0)(x-0.1)(x-0.2)}{(-0.2-(-0.1))(-0.2-0)(-0.2-0.1)(-0.2-0.2)}\\ &+f(-0.1)\frac{(x-(-0.2))(x-0)(x-0.1)(x-0.2)}{(-0.1-(-0.2))(-0.1-0)(-0.1-0.1)(-0.1-0.2)}\\ &+f(0)\frac{(x-(-0.2))(x-(-0.1))(x-0.1)(x-0.2)}{(0-(-0.2))(0-(-0.1))(0-0.1)(0-0.2)}\\ &+f(0.1)\frac{(x-(-0.2))(x-(-0.1))(x-0)(x-0.2)}{(0.1-(-0.2))(0.1-(-0.1))(0.1-0)(0.1-0.2)}\\ &+f(0.2)\frac{(x-(-0.2))(x-(-0.1))(x-0)(x-0.1)}{(0.2-(-0.2))(0.2-(-0.1))(0.2-0)(0.2-0.1)} \end{aligned}$$

このようなゴリ押しを Lagrange 補間と呼びます. カラクリがよくわからなければ実際に代入してみると理解できるはずで, これは割と便利なテクニックです.

さて, 求めるべきは $f'(0)$ ですが, $f(x)$ を微分する際に $(x-0)$ の因子が残っていると $x=0$ を代入したときに消えるので, 結局 $(x-0)$ が微分された場合だけを考えればよいことになります. ここで第3項は $(x-0)$ を持っていませんが, よく見るとこれは偶関数であるので微分すると奇関数となり, $x=0$ を代入すると消えます. したがって,

$$\begin{aligned} f'(0)&=2.226\times\frac{5}{6}+2.460\times\frac{-40}{6}+3.004\times\frac{40}{6}+3.320\times\frac{-5}{6}\\ &=\frac{16.29}{6}\\ &=\boxed{2.715} \end{aligned}$$

となり圧倒的に簡単に計算できました. 微分などと大げさに言いましたが, 上の定性的な議論を考えると結局はどのカッコを取り除くかという話だけに帰着するので非常に簡単な四則演算になっているというわけです.

このように実際に具体的な形を作って数値計算ということも大事なのですが, それと同時に「実際に構成できる」という点においても重要な意義を持っています. その代表的な例が次の問題です.

問題2. (2002年 京大後期理系 第4問) $f(x)$ は $x^n$ の係数が $1$ である $x$ の $n$ 次式である. 相異なる $n$ 個の有理数 $q_1,q_2,\dots,q_n$ に対して $f(q_1),f(q_2),\dots,f(q_n)$ がすべて有理数であれば, $f(x)$ の係数はすべて有理数であることを, 数学的帰納法を用いて示せ.

さて, $f(x)$ は $n$ 次式のようですが, どうやら $x ^ n$ の係数が $1$ のようです. つまり本質的に不要なので $g(x)\coloneqq f(x)-x ^ n$ とおきましょう. そうすると $g(q _ 1),\dots,g(q _ n)$ も有理数なので Lagrange 補間を使えば有理数係数の $g(x)$ が構成できます. $n-1$ 次式の $n$ 個の異なる値が判明しているので一意ですからこれでOK. というわけで ( $1$ は有理数なので) $f(x)$ も有理数係数です.

なんとこれで証明終了です. もちろん構成もちゃんと書かないといけませんが, 本質的にこんな自然で簡単に解けるというのはなかなか嬉しい話です.