MathLabs
定理証明済み

二分法の収束と誤差限界

内容

ff が [a,b][a,b] 上で連続で f(a)f(b)<0f(a)f(b)<0 を満たすとする。このとき二分法は中点 xn=an+bn2x_n=\dfrac{a_n+b_n}{2} を生成し、[a,b][a,b] 内のある根 rr に対して xn→rx_n \to r が成り立ち、nn 回目の誤差は ∣xn−r∣≤b−a2n+1|x_n - r| \le \dfrac{b-a}{2^{n+1}} を満たす。

なぜ正しいのか?

各ステップは根を縮んでいく箱の中に閉じ込め、常に根を含みながら1点へと縮んでいく箱は、その根そのものへと縮まなければならない。

証明の概略

ステップ1(不変量)。a0=aa_0=a、b0=bb_0=b とする。ステップ nn において、不変量 f(an)f(bn)<0f(a_n)f(b_n)<0、すなわち根が [an,bn][a_n,b_n] のどこかに閉じ込められていることを維持する。これは仮定により最初は成り立つ。[an,bn][a_n,b_n] から中点 xn=an+bn2x_n=\dfrac{a_n+b_n}{2} を計算し f(xn)f(x_n) を評価する:それが f(an)f(a_n) と反対の符号なら an+1=an, bn+1=xna_{n+1}=a_n,\ b_{n+1}=x_n とし、そうでなければ an+1=xn, bn+1=bna_{n+1}=x_n,\ b_{n+1}=b_n とする(f(xn)=0f(x_n)=0 がちょうど成り立てば xnx_n が根そのものであり、処理は終了する)。いずれにせよ再び f(an+1)f(bn+1)<0f(a_{n+1})f(b_{n+1})<0 となるので、不変量は帰納法により保たれる。

ステップ2(幅の縮小)。構成により新しい各区間は前の区間のちょうど半分なので、すべての n≥0n \ge 0 について bn−an=b−a2nb_n-a_n = \dfrac{b-a}{2^n} が成り立つ。根 rr は各ステップで [an,bn][a_n,b_n] の中にあり(ステップ1より)、中点 xnx_n も [an,bn][a_n,b_n] の中にあるので、両者は幅 b−a2n\dfrac{b-a}{2^n} の同じ区間内にあり、これだけで ∣xn−r∣≤b−a2n|x_n - r| \le \dfrac{b-a}{2^n} が成り立つ;もう少し精密に数える(中点からどちらかの端点までを測る)と述べられた限界 ∣xn−r∣≤b−a2n+1|x_n - r| \le \dfrac{b-a}{2^{n+1}} が得られる。

ステップ3(収束)。n→∞n\to\infty のとき b−a2n+1→0\dfrac{b-a}{2^{n+1}} \to 0 なので、ステップ2による挟み込みにより xn→rx_n \to r が強制される。この部分では、最初の符号条件を超える ff の連続性すら不要である——それが必要なのは、そもそも [a,b][a,b] の内部に根が存在することを保証するため、すなわちステップ0で適用される中間値の定理のためだけである。

この定理を使うトピック

ステップごとの証明

この定理のステップごとの証明はまだありません。