1次近似と誤差の伝わり方(高校数学)

同義語:誤差の伝播(高校数学)linear approximation and error propagation (high school mathematics)

概要

1次近似と誤差の伝わり方(linear approximation and error propagation)とは、接線の式 $f(a+h)\approx f(a)+f'(a)h$ の誤差と、測定値の誤差が計算結果に伝わる規則である。$f''$ が連続で $a$ と $a+h$ の間で $\lvert f''\rvert\le M$ なら、誤差は $\frac M2h^2$ 以下である。近似値 $x(1+\varepsilon)$、$y(1+\eta)$ の積の相対誤差は $\varepsilon+\eta+\varepsilon\eta$、$x>0$ の $p$ 乗では $(1+\varepsilon)^p-1$ で、$\varepsilon$ が小さければ $p\varepsilon$ との差は $\varepsilon^2$ の程度である。近い 2 数の差では相対誤差が大きくなる。

$$\newcommand{C}[0]{\mathbb{C}} \newcommand{div}[0]{\mathbin{÷}} \newcommand{N}[0]{\mathbb{N}} \newcommand{Q}[0]{\mathbb{Q}} \newcommand{R}[0]{\mathbb{R}} \newcommand{Z}[0]{\mathbb{Z}} $$

前提知識: 微分係数と導関数の定義(高校数学), 関数の近似とテイラー展開, 部分積分の使い方, 積分の評価

高校での出発点:接線で値を見積もる

数学 III では、微分できる関数 $f$ と小さい数 $h$ について、$f(a+h)\approx f(a)+f'(a)h$ という近似式を習う。右辺は、点 $(a,f(a))$ での接線の、$x=a+h$ での高さである。電卓がなくても、微分係数さえ分かれば値の見当がつく。まず 2 つの値を見積もってみる。

$\sin31^\circ$ と $\sqrt[3]{27.5}$ を見積もる
  1. $f(x)=\sin x$、$a=\dfrac\pi6$($30^\circ$)、$h=\dfrac\pi{180}$($1^\circ$)とする。$\sin\dfrac\pi6=\dfrac12$、$f'(x)=\cos x$ で $\cos\dfrac\pi6=\dfrac{\sqrt3}2$ なので
    $$ \sin31^\circ\approx\frac12+\frac{\sqrt3}2\cdot\frac{\pi}{180}=0.5151149\ldots $$
    である。実際は $\sin31^\circ=0.5150380\ldots$ で、差(真の値 $-$ 近似値)は $-0.0000769\ldots$ である。
  2. $f(x)=\sqrt[3]{x}=x^{\frac13}$、$a=27$、$h=0.5$ とする。$f(27)=3$、$f'(x)=\dfrac13x^{-\frac23}$ で $f'(27)=\dfrac13\cdot\dfrac19=\dfrac1{27}$ なので
    $$ \sqrt[3]{27.5}\approx3+\frac{0.5}{27}=3.0185185\ldots $$
    である。実際は $\sqrt[3]{27.5}=3.0184053\ldots$ で、差は $-0.0001131\ldots$ である。

どちらも差の大きさは $0.0002$ より小さい。しかし、この計算だけでは「どこまで合っているか」は分からない。真の値を知らないときに近似を使うのだから、誤差の大きさを真の値なしで保証したい。この記事で答える問いは次の 3 つである。

  1. 1 次の近似式の誤差は、真の値を使わずにどこまで小さいと保証できるか。→ thm-lae-bound
  2. 測った値に誤差があるとき、それを使って計算した面積・体積・周期などの誤差はどれくらいか。→ thm-lae-propagation
  3. 近似や見積もりがうまくいかないのはどんなときか。→ ex-lae-cx-sqrt、ex-lae-cx-cancel
    高校の計算この記事の言葉大学の言葉
    接線で値を見積もる1 次近似1 次の Taylor 多項式
    近似値と真の値の差誤差 $R(h)$、上界 $\dfrac M2h^2$剰余項の評価
    「$x$ が $1\%$ 増えると $x^2$ は約 $2\%$ 増える」相対誤差の伝わり方誤差の伝播、条件数
    誤差の大きさは $h$ によって大きく変わる。図 1 と図 2 は、$y=\sin x$ とその $x=\dfrac\pi6$ での接線を、$h=0.8$ と $h=0.1$ で比べたものである。
    y=sin x と x=π/6 での接線を描き、h=0.8 では接線とグラフの高さの差が約 0.22 と大きいことを見る図 y=sin x と x=π/6 での接線を描き、h=0.8 では接線とグラフの高さの差が約 0.22 と大きいことを見る図
    同じグラフと接線を拡大し、h=0.1 では高さの差が約 0.0026 と小さいことを見る図 同じグラフと接線を拡大し、h=0.1 では高さの差が約 0.0026 と小さいことを見る図
    $h=0.8$ では差が $-0.223\ldots$ だが、$h=0.1$ では $-0.00264\ldots$ になる。$h$ を $\dfrac18$ にしたら、差は約 $\dfrac1{84}$ になった。差は $h$ よりずっと速く小さくなっている。

1次近似とその誤差

以下、$f$ は $a$ を含む区間で定義された関数とする。

1次近似と誤差

$f$ が $x=a$ で微分可能なとき、1 次式
$$ L(a+h)=f(a)+f'(a)h $$
を、$f$ の $x=a$ における 1 次近似 という。$f(a+h)$ の近似値として $L(a+h)$ を使うときの差
$$ R(h)=f(a+h)-L(a+h)=f(a+h)-f(a)-f'(a)h $$
を、1 次近似の 誤差 という(真の値 $-$ 近似値の向きにとる)。

$y=L(a+h)$ のグラフは接線である。微分係数と導関数の定義(高校数学) の定理「微分可能と 1 次近似」は、$\dfrac{R(h)}h\to0$($h\to0$)となる直線が接線だけであることを示している。つまり、$h$ が十分小さければ $R(h)$ は $h$ に比べて無視できる。ただし、この定理は「どれくらい小さいか」を数では教えてくれない。多項式なら $R(h)$ を正確に書ける。

多項式の 1 次近似の誤差
  1. $f(x)=x^2$ では $f'(a)=2a$ なので
    $$ R(h)=(a+h)^2-a^2-2ah=h^2 $$
    である。$f''(x)=2$ なので、$R(h)=\dfrac{f''}{2}h^2$ と書ける。
  2. $f(x)=x^3$、$a=1$ では $f'(1)=3$ なので
    $$ R(h)=(1+h)^3-1-3h=3h^2+h^3 $$
    である。$h=0.01$ なら $1.01^3\approx1.03$ で、誤差は $R(0.01)=0.0003+0.000001=0.000301$ である。$f''(x)=6x$ は $x=1$ の近くで約 $6$ なので、ここでも $R(h)$ はおよそ $\dfrac{f''}2h^2$ である。

どちらの例でも、誤差の主な部分は $\dfrac{f''}2h^2$ である。$f''$ はグラフの曲がり具合を表すので、「曲がり具合 $\times$ $h^2$」が誤差を決めると予想できる。次の節でこれを一般の関数で示す。

主定理 1:誤差は $h^2$ で押さえられる

鍵は、誤差 $R(h)$ を $f''$ の積分で正確に書くことである。部分積分を 1 回使う(部分積分の使い方)。

誤差を積分で書く

$f$ は区間 $I$ で 2 回微分可能で $f''$ が連続とし、$a$、$a+h$ は $I$ の点とする。このとき
$$ R(h)=f(a+h)-f(a)-f'(a)h=\int_a^{a+h}(a+h-t)\,f''(t)\,dt $$
である($h<0$ のときも、積分の向きの約束 $\displaystyle\int_a^{a+h}=-\int_{a+h}^a$ のもとで成り立つ)。

部分積分を 1 回

方針:右辺を部分積分して、$f'$ の積分に直し、それを $f$ の差に戻す。
段 1(部分積分)。$u(t)=a+h-t$、$v(t)=f'(t)$ とおくと $u'(t)=-1$、$v'(t)=f''(t)$ である。部分積分の公式 $\displaystyle\int_\alpha^\beta uv'\,dt=\Bigl[uv\Bigr]_\alpha^\beta-\int_\alpha^\beta u'v\,dt$ を $\alpha=a$、$\beta=a+h$ で使うと
$$ \int_a^{a+h}(a+h-t)f''(t)\,dt=\Bigl[(a+h-t)f'(t)\Bigr]_{a}^{a+h}+\int_a^{a+h}f'(t)\,dt $$
となる($-u'=1$ なので、最後の積分の前の符号は $+$)。この公式は積分の向きによらず成り立つので、$h<0$ でもよい。
段 2(はじめの項)。$t=a+h$ では $a+h-t=0$、$t=a$ では $a+h-t=h$ なので
$$ \Bigl[(a+h-t)f'(t)\Bigr]_{a}^{a+h}=0\cdot f'(a+h)-h\,f'(a)=-f'(a)h $$
である。
段 3(残りの積分)。$f'$ は連続なので、微分積分学の基本定理により $\displaystyle\int_a^{a+h}f'(t)\,dt=f(a+h)-f(a)$ である。
段 2・段 3 を段 1 に入れると、右辺は $-f'(a)h+f(a+h)-f(a)=R(h)$ になる。$\square$

多項式の例で確かめる

ex-lae-poly (1) の $f(x)=x^2$ では $f''=2$ なので、右辺は $\displaystyle\int_a^{a+h}2(a+h-t)\,dt=\Bigl[-(a+h-t)^2\Bigr]_a^{a+h}=0-(-h^2)=h^2$ で、$R(h)=h^2$ と一致する。

この等式の右辺で、重み $a+h-t$ は $t=a$ で $h$、$t=a+h$ で $0$ になる 1 次式である。$f''$ の大きさが分かれば、重みの積分から誤差の大きさが分かる。

1次近似の誤差の上界

$f$ は区間 $I$ で 2 回微分可能で $f''$ が連続とし、$a$、$a+h$ は $I$ の点とする。$a$ と $a+h$ を両端とする閉区間で $\lvert f''(t)\rvert\le M$ ならば
$$ \bigl\lvert f(a+h)-f(a)-f'(a)h\bigr\rvert\le\frac M2h^2 $$
が成り立つ。

重みの積分を計算する

$h=0$ なら両辺とも $0$ なので、$h\ne0$ とする。
段 1($h>0$ のとき)。$a\le t\le a+h$ では $a+h-t\ge0$ である。積分の絶対値は絶対値の積分以下なので(積分の評価)、lem-lae-integral から
$$ \lvert R(h)\rvert\le\int_a^{a+h}(a+h-t)\,\lvert f''(t)\rvert\,dt\le M\int_a^{a+h}(a+h-t)\,dt $$
である。最後の積分は $s=a+h-t$ と置くと $\displaystyle\int_0^hs\,ds=\frac{h^2}2$ なので、$\lvert R(h)\rvert\le\dfrac M2h^2$ である。
段 2($h<0$ のとき)。向きを入れかえると
$$ R(h)=\int_a^{a+h}(a+h-t)f''(t)\,dt=\int_{a+h}^{a}\bigl(t-(a+h)\bigr)f''(t)\,dt $$
で、$a+h\le t\le a$ では重み $t-(a+h)$ は $0$ 以上である。段 1 と同じように $\lvert R(h)\rvert\le M\displaystyle\int_{a+h}^a\bigl(t-(a+h)\bigr)dt=M\cdot\frac{(-h)^2}2=\frac M2h^2$ となる。$\square$

$h$ を $\dfrac1{10}$ にすると、上界は $\dfrac1{100}$ になる。これが問い 1 の答えである。lem-lae-integral からは、誤差の符号も分かる。

下に凸なら接線はグラフの下

thm-lae-bound の仮定のもとで、$a$ と $a+h$ を両端とする閉区間で $f''\ge0$ なら $R(h)\ge0$、つまり $f(a+h)\ge f(a)+f'(a)h$ である。$f''\le0$ なら $R(h)\le0$ である。

重みの符号

prf-lae-bound の段 1・段 2 のとおり、$R(h)$ は $0$ 以上の重みと $f''$ の積の、左端から右端への積分で書ける。$f''\ge0$ ならこの積分は $0$ 以上、$f''\le0$ なら $0$ 以下である。$\square$

グラフが下に凸($f''\ge0$)なら接線はグラフの下にあるので、1 次近似は小さめの値を出す。上に凸なら大きめの値を出す。ex-lae-start の 2 つの関数はどちらも上に凸で、差はどちらも負だった。

上界と実際の誤差を比べる
  1. ex-lae-start (1) の $\sin31^\circ$。$f''(t)=-\sin t$ で、$30^\circ\le t\le31^\circ$ では $\lvert f''(t)\rvert=\sin t\le\sin31^\circ$ である($\sin$ はこの範囲で増加する)。さらに $f''\le0$ なので、cor-lae-sign により $\sin31^\circ$ は近似値 $0.5151149\ldots$ 以下で、$\lvert f''(t)\rvert<0.52$ と分かる。真の値を使わずに $M$ が決まった。$M=0.52$ として
    $$ \lvert R\rvert\le\frac{0.52}2\left(\frac\pi{180}\right)^2=0.0000792\ldots $$
    である。実際の誤差 $0.0000769\ldots$ はこれ以下で、上界は実際の誤差の $1.03$ 倍しかない。真の値を知らなくても、「近似値 $0.5151149$ から $0.0000792$ 以上は離れていない」と言える。
  2. ex-lae-start (2) の $\sqrt[3]{27.5}$ でも同じように、上界 $\dfrac1{8748}=0.0001143\ldots$ が得られ、実際の誤差 $0.0001131\ldots$ はこれ以下である。
    $\sqrt[3]{27.5}$ の上界の計算を開く

    $f''(t)=-\dfrac29t^{-\frac53}$ で、$t\ge27$ では $\lvert f''(t)\rvert\le\dfrac29\cdot27^{-\frac53}=\dfrac29\cdot\dfrac1{243}=\dfrac2{2187}$ である($27^{\frac53}=3^5=243$)。$M=\dfrac2{2187}$、$h=0.5$ として

    $$\lvert R\rvert\le\frac12\cdot\frac2{2187}\cdot0.25=\frac{1}{8748}=0.0001143\ldots$$

    である。上界は実際の誤差の $1.01$ 倍で、ほとんど等しい。$h$ が小さい範囲で $\lvert f''\rvert$ がほぼ一定だからである。

  3. $h$ を半分ずつにする。$\sin(30^\circ+h)$ では、上界の $M$ に $30^\circ$ から $30^\circ+h$ での $\lvert f''\rvert$ の最大値 $\sin(30^\circ+h)$ を使う($h$ は弧度法で計算する)。
    $h$誤差 $R$上界 $\dfrac{\sin(30^\circ+h)}2h^2$$\dfrac R{h^2}$
    $4^\circ$$-1.267\times10^{-3}$$1.363\times10^{-3}$$-0.2600$
    $2^\circ$$-3.107\times10^{-4}$$3.228\times10^{-4}$$-0.2550$
    $1^\circ$$-7.692\times10^{-5}$$7.844\times10^{-5}$$-0.2525$
    $0.5^\circ$$-1.913\times10^{-5}$$1.933\times10^{-5}$$-0.2513$
    $h$ を半分にするごとに誤差はほぼ $\dfrac14$ になり、$\dfrac R{h^2}$ は $\dfrac{f''(\frac\pi6)}2=-\dfrac14$ に近づいていく。

横軸に h、縦軸に誤差の大きさをとった両対数のグラフで、sin x と 3 乗根の 1 次近似の誤差がどちらも傾き 2 の直線に沿い、上界の破線がその上にあることを見る図 横軸に h、縦軸に誤差の大きさをとった両対数のグラフで、sin x と 3 乗根の 1 次近似の誤差がどちらも傾き 2 の直線に沿い、上界の破線がその上にあることを見る図
図 3 は、誤差の大きさを両対数のグラフに描いたものである。誤差が $h^2$ に比例するなら、傾き $2$ の直線になる。$\sqrt[3]x$ では上界の破線が誤差の線とほとんど重なっている。
thm-lae-bound は、関数の近似とテイラー展開 の定理「Lagrange の形の剰余項」の $n=1$ の場合から出る評価と同じである(Taylor の定理の Lagrange の形は Leb26a Theorem 4.3.2 にもある)。あの記事では $n$ 次の多項式まで広げ、誤差を $f^{(n+1)}$ で押さえる。ここでは 1 次で止め、その代わりに、測った値の誤差が計算の結果にどう伝わるかを調べる。

主定理 2:誤差の伝わり方

長さや時間を測ると、測った値には誤差がある。その値を使って面積や速さを計算すると、結果にも誤差が出る。まず誤差の測り方を 2 つ決める。

絶対誤差と相対誤差

真の値 $x$ の近似値(測った値など)を $\tilde x$ とする。$\Delta x=\tilde x-x$ を 絶対誤差 という。$x\ne0$ のとき
$$ \varepsilon=\frac{\tilde x-x}{x}=\frac{\Delta x}{x} $$
を 相対誤差 という。相対誤差を使うと $\tilde x=x(1+\varepsilon)$ と書ける。

絶対誤差と相対誤差
  1. 長さ $10$ cm の棒を $10.1$ cm と測った。絶対誤差は $0.1$ cm、相対誤差は $\dfrac{0.1}{10}=0.01$、つまり $1\%$ である。
  2. 長さ $1000$ m の道を $1000.1$ m と測った。絶対誤差は同じ $0.1$ m だが、相対誤差は $\dfrac{0.1}{1000}=0.0001$、つまり $0.01\%$ である。同じ $0.1$ のずれでも、相対誤差で見ると (2) の方が 100 倍正確である。

和と差では、絶対誤差がそのまま足し引きされる。$\tilde x=x+\Delta x$、$\tilde y=y+\Delta y$ なら
$$ (\tilde x+\tilde y)-(x+y)=\Delta x+\Delta y,\qquad(\tilde x-\tilde y)-(x-y)=\Delta x-\Delta y $$
なので、どちらの絶対誤差も $\lvert\Delta x\rvert+\lvert\Delta y\rvert$ 以下である(三角不等式)。積・商・冪では、相対誤差で考えると見通しがよい。

相対誤差の伝わり方

$x,y\ne0$ の近似値を $\tilde x=x(1+\varepsilon)$、$\tilde y=y(1+\eta)$ とする。
(1) 積 $\tilde x\tilde y$ の相対誤差は $\varepsilon+\eta+\varepsilon\eta$ である。したがって、相対誤差 $\varepsilon+\eta$ で近似したときの差は $\lvert\varepsilon\eta\rvert$ である。
(2) $\lvert\eta\rvert<1$ のとき、商 $\dfrac{\tilde x}{\tilde y}$ の相対誤差は $\dfrac{\varepsilon-\eta}{1+\eta}$ である。これと $\varepsilon-\eta$ の差は $\dfrac{(\lvert\varepsilon\rvert+\lvert\eta\rvert)\lvert\eta\rvert}{1-\lvert\eta\rvert}$ 以下である。
(3) $x>0$、$\lvert\varepsilon\rvert<1$、$p$ を実数とする。冪 $\tilde x^{\,p}$ の相対誤差は $(1+\varepsilon)^p-1$ で、
$$ \bigl\lvert(1+\varepsilon)^p-1-p\varepsilon\bigr\rvert\le\frac{\lvert p(p-1)\rvert}2K\varepsilon^2 $$
が成り立つ。ここで $K$ は、$t$ が $0$ と $\varepsilon$ を両端とする閉区間を動くときの $(1+t)^{p-2}$ の最大値である。

言葉で言えば、相対誤差が小さいとき、積の相対誤差は相対誤差の和、商の相対誤差は相対誤差の差、$p$ 乗の相対誤差は相対誤差の $p$ 倍で近似でき、近似の差は相対誤差の 2 乗の程度である。たとえば $\lvert\varepsilon\rvert\le\dfrac12$ なら、$\dfrac12\le1+t\le\dfrac32$ で、$(1+t)^{p-2}$ は $t$ について単調なので、$K$ は $\left(\dfrac12\right)^{p-2}$ と $\left(\dfrac32\right)^{p-2}$ の大きい方以下で、(3) の右辺は $\varepsilon^2$ の、$p$ だけで決まる定数倍以下になる。

積と商は式の変形、冪は主定理 1
  1. $\tilde x\tilde y=x(1+\varepsilon)\cdot y(1+\eta)=xy(1+\varepsilon)(1+\eta)$ なので、相対誤差は
    $$ \frac{\tilde x\tilde y-xy}{xy}=(1+\varepsilon)(1+\eta)-1=\varepsilon+\eta+\varepsilon\eta $$
    である。$\varepsilon+\eta$ との差は $\varepsilon\eta$ である。
  2. $\lvert\eta\rvert<1$ なので $1+\eta\ne0$ で、$\tilde y\ne0$ である。$\dfrac{\tilde x}{\tilde y}=\dfrac xy\cdot\dfrac{1+\varepsilon}{1+\eta}$ なので、相対誤差は
    $$ \frac{1+\varepsilon}{1+\eta}-1=\frac{(1+\varepsilon)-(1+\eta)}{1+\eta}=\frac{\varepsilon-\eta}{1+\eta} $$
    である。$\varepsilon-\eta$ との差は
    $$ \frac{\varepsilon-\eta}{1+\eta}-(\varepsilon-\eta)=\frac{(\varepsilon-\eta)-(\varepsilon-\eta)(1+\eta)}{1+\eta}=-\frac{(\varepsilon-\eta)\eta}{1+\eta} $$
    である。分子の大きさは $\lvert\varepsilon-\eta\rvert\lvert\eta\rvert\le(\lvert\varepsilon\rvert+\lvert\eta\rvert)\lvert\eta\rvert$、分母の大きさは $\lvert1+\eta\rvert\ge1-\lvert\eta\rvert>0$ なので、差の大きさは $\dfrac{(\lvert\varepsilon\rvert+\lvert\eta\rvert)\lvert\eta\rvert}{1-\lvert\eta\rvert}$ 以下である。
  3. $\tilde x^{\,p}=x^p(1+\varepsilon)^p$ なので、相対誤差は $(1+\varepsilon)^p-1$ である。$g(t)=(1+t)^p$ を区間 $-1< t<\infty$ で考える。合成関数の微分により
    $$ g'(t)=p(1+t)^{p-1},\qquad g''(t)=p(p-1)(1+t)^{p-2} $$
    で、$g''$ は連続である。$g(0)=1$、$g'(0)=p$ なので、$g$ の $t=0$ における 1 次近似は $1+pt$ で、その誤差は $R(\varepsilon)=(1+\varepsilon)^p-1-p\varepsilon$ である。$0$ と $\varepsilon$ を両端とする閉区間では、$(1+t)^{p-2}>0$ なので $\lvert g''(t)\rvert=\lvert p(p-1)\rvert(1+t)^{p-2}\le\lvert p(p-1)\rvert K$ である。thm-lae-bound を $a=0$、$h=\varepsilon$、$M=\lvert p(p-1)\rvert K$ で使えば、示す不等式を得る。$\square$
  1. は図で見ると分かりやすい。縦 $y$、横 $x$ の長方形の辺をそれぞれ $\Delta y$、$\Delta x$ だけ延ばすと、面積は図 4 の 3 つの細い部分だけ増える。
    縦横 x, y の長方形を Δx, Δy だけ延ばすと、面積が yΔx と xΔy の 2 つの帯と、角の小さな長方形 ΔxΔy の分だけ増えることを見る図 縦横 x, y の長方形を Δx, Δy だけ延ばすと、面積が yΔx と xΔy の 2 つの帯と、角の小さな長方形 ΔxΔy の分だけ増えることを見る図
    増えた面積は $y\,\Delta x+x\,\Delta y+\Delta x\Delta y$ で、もとの面積 $xy$ で割ると $\dfrac{\Delta x}x+\dfrac{\Delta y}y+\dfrac{\Delta x}x\cdot\dfrac{\Delta y}y=\varepsilon+\eta+\varepsilon\eta$ になる。2 つの帯が相対誤差の和 $\varepsilon+\eta$ にあたり、角の小さな長方形が 2 次の項 $\varepsilon\eta$ にあたる。$\Delta x$、$\Delta y$ が小さければ、角の長方形は帯よりずっと小さい。
円の面積と立方体の体積
  1. 半径 $r=10$ の円の半径を $10.1$ と測った($\varepsilon=0.01$)。面積 $\pi r^2$ は $p=2$ の冪なので、相対誤差はおよそ $2\varepsilon=2\%$ である。正確には $(1.01)^2-1=0.0201$ で、thm-lae-propagation (3) の差 $0.0001=\varepsilon^2$ は、$p=2$ では $K=1$、上界 $\dfrac{2\cdot1}2\cdot1\cdot\varepsilon^2=\varepsilon^2$ とちょうど等しい。
    絶対誤差で見る計算を開く

    面積の増え方は $\pi(10.1^2-10^2)=2.01\pi=6.3146\ldots$ で、1 次の見積もり $2\pi r\cdot\Delta r=2\pi=6.2831\ldots$ との差は $\pi(\Delta r)^2=0.0314\ldots$ である。$2\pi r\cdot\Delta r$ は円周の長さと幅 $\Delta r$ の積で、円の外側に巻いた細い帯の面積の見積もりにあたる。

  2. 立方体の 1 辺を相対誤差 $1\%$ で測ると、体積($p=3$)の相対誤差はおよそ $3\%$ である。正確には $(1.01)^3-1=0.030301$ である。
振り子の周期

長さ $l$ の振り子の周期は、振れ幅が小さいとき $T=2\pi\sqrt{\dfrac lg}$($g$ は重力加速度)で与えられるとする。$l$ を $1\%$ 長く測ると($\varepsilon=0.01$)、$T$ は $l^{\frac12}$ に比例するので、相対誤差はおよそ $\dfrac12\varepsilon=0.5\%$ である。正確には $\sqrt{1.01}-1=0.0049875\ldots$ である。

主定理 2 の (3) の上界で確かめる

$p=\dfrac12$ では $\lvert p(p-1)\rvert=\dfrac14$、$(1+t)^{-\frac32}$ は $0\le t\le0.01$ で最大値 $K=1$($t=0$)をとるので、上界は $\dfrac14\cdot\dfrac12\cdot1\cdot(0.01)^2=0.0000125$ である。実際の差 $0.005-0.0049875\ldots=0.0000124\ldots$ はこれ以下である。


逆に周期を測って長さを求めると $l=\dfrac{gT^2}{4\pi^2}$ で、$T$ の相対誤差は $2$ 倍になって $l$ に伝わる。

密度を商で求める

密度は(質量)$\mathbin{÷}$(体積)である。質量を $1\%$ 大きく($\varepsilon=0.01$)、体積を $2\%$ 小さく($\eta=-0.02$)測ったとすると、thm-lae-propagation (2) により密度の相対誤差は
$$ \frac{\varepsilon-\eta}{1+\eta}=\frac{0.03}{0.98}=0.030612\ldots $$
で、およそ $\varepsilon-\eta=3\%$ である。差は $0.000612\ldots$ で、上界 $\dfrac{(0.01+0.02)\cdot0.02}{0.98}=0.000612\ldots$ と一致する($\varepsilon$ と $-\eta$ の符号がそろっているため)。誤差の向きが分からないときは、相対誤差の大きさ $1\%$ と $2\%$ を足して「密度の相対誤差は約 $3\%$ 以下」と見積もる。

計算ごとに、足されるものをまとめる。$\lvert\varepsilon\rvert$、$\lvert\eta\rvert$ が小さいときの目安である。

計算伝わるもの1 次の見積もり捨てた部分
和 $x+y$絶対誤差$\Delta x+\Delta y$なし
差 $x-y$絶対誤差$\Delta x-\Delta y$なし
積 $xy$相対誤差$\varepsilon+\eta$$\varepsilon\eta$
商 $\dfrac xy$相対誤差$\varepsilon-\eta$$-\dfrac{(\varepsilon-\eta)\eta}{1+\eta}$
冪 $x^p$相対誤差$p\varepsilon$$\varepsilon^2$ の程度(thm-lae-propagation (3))
平方根 $\sqrt x$相対誤差$\dfrac12\varepsilon$$\varepsilon^2$ の程度

積や商で相対誤差が足されることは、対数を使うと「掛け算を足し算に直す」ことにあたる。計算尺と対数 の命題「読み違いによる相対誤差」は、対数目盛の位置のずれが相対誤差になり、掛け算で位置のずれが足されることを示している。

例と反例

1 次近似と誤差の見積もりには、それぞれ前提がある。前提を 1 つ外すと、次のように崩れる。

外す条件反例成り立たなくなること
$\dfrac M2h^2$ が小さい($h$ に比べて曲がり具合が小さい)$\sqrt{x}$ の $a=0.0001$、$h=0.01$1 次近似が良い近似になる
相対誤差 $\varepsilon$ が小さい$\varepsilon=0.5$ や $\varepsilon=1$ で 2 乗する$p$ 乗の相対誤差が $p\varepsilon$ で近似できる
計算が積・商・冪である(近い 2 数の差ではない)$100.3-100.1$(それぞれ $\pm0.05$)結果の相対誤差が、入力の相対誤差と同じ程度に小さい
反例:曲がり具合が大きい所の 1 次近似

$f(x)=\sqrt x$ の $a=0.0001$ での 1 次近似で、$h=0.01$ として $\sqrt{0.0101}$ を見積もる。$f(0.0001)=0.01$、$f'(x)=\dfrac1{2\sqrt x}$ で $f'(0.0001)=50$ なので
$$ \sqrt{0.0101}\approx0.01+50\times0.01=0.51 $$
となる。実際は $\sqrt{0.0101}=0.10049\ldots$ で、近似値は 5 倍もずれている。
thm-lae-bound は間違っていない。$f''(t)=-\dfrac14t^{-\frac32}$ は $t=0.0001$ で $\lvert f''\rvert=\dfrac14\cdot10^{6}=250000$ となり、$M=250000$ とすると上界は $\dfrac{250000}2\times(0.01)^2=12.5$ である。実際の誤差 $0.4095\ldots$ はこれ以下だが、上界そのものが近似値より大きく、何の保証にもならない。
同じ $h=0.01$ でも、$a=1$ なら $\sqrt{1.01}\approx1.005$ で、誤差は $0.0000124\ldots$、上界は $M=\dfrac14$ から $0.0000125$ である。1 次近似が使えるかどうかは、$h$ が小さいかどうかだけでは決まらず、$h$ と曲がり具合 $M$ の組み合わせ $\dfrac M2h^2$ で決まる。$\sqrt x$ のグラフは $x=0$ の近くで縦に立ち上がり、接線の傾きが急に変わるので、少し離れただけで接線から大きく外れる。

反例:相対誤差が大きいと $p\varepsilon$ から外れる

正方形の 1 辺を実際の $1.5$ 倍($\varepsilon=0.5$)と測ると、面積の相対誤差は $(1.5)^2-1=1.25$ で、$2\varepsilon=1$ から $0.25$ ずれる。$2$ 倍($\varepsilon=1$)なら $2^2-1=3$ で、$2\varepsilon=2$ とは大きく違う。捨てた部分 $\varepsilon^2$ が、$\varepsilon=1$ では 1 次の部分 $2\varepsilon$ の半分にもなる。thm-lae-propagation (3) の等式は正しいままだが、「およそ $p\varepsilon$」という読み方は $\lvert\varepsilon\rvert$ が小さいときにしか使えない。

反例:近い 2 数の差

2 本の棒の長さを $100.3$ cm と $100.1$ cm と測った。どちらも絶対誤差は $0.05$ cm 以下とする。相対誤差はどちらも $\dfrac{0.05}{100}$ 程度、つまり $0.05\%$ 程度で、とても正確である。
ところが、長さの差 $100.3-100.1=0.2$ cm の絶対誤差は、和と差の規則により $0.05+0.05=0.1$ cm 以下としか言えない(本当の長さが $100.25$ cm と $100.15$ cm なら差は $0.1$ cm になる)。差 $0.2$ に対する相対誤差は最大で $\dfrac{0.1}{0.2}=50\%$ になる。
入力の相対誤差は $0.05\%$ 程度なのに、結果の相対誤差は $50\%$ にもなりうる。近い 2 数を引くと、絶対誤差は変わらないまま結果だけが小さくなるので、相対誤差が大きくなる。これを 桁落ち という。計算機でも同じことが起こり、次の記事 数値微分(高校数学) では、差 $f(a+h)-f(a)$ を小さな $h$ で割るときにこの現象が現れる。

正の数どうしの和では、この心配はない。和の相対誤差は、2 つの相対誤差の大きい方以下である。問題が起こるのは、符号の違う数を足す(近い数を引く)ときである。

正の数の和の相対誤差を開く

$x,y>0$ で相対誤差が $\varepsilon,\eta$ なら、$\tilde x+\tilde y-(x+y)=x\varepsilon+y\eta$ なので、和の相対誤差は $\dfrac{x\varepsilon+y\eta}{x+y}$ である。その大きさは

$$\frac{\lvert x\varepsilon+y\eta\rvert}{x+y}\le\frac{x\lvert\varepsilon\rvert+y\lvert\eta\rvert}{x+y}\le\frac{(x+y)\max(\lvert\varepsilon\rvert,\lvert\eta\rvert)}{x+y}=\max(\lvert\varepsilon\rvert,\lvert\eta\rvert)$$

以下である($x,y>0$ を使った)。

大学数学で見る:条件数と多変数の 1 次近似

thm-lae-propagation (3) の「$p$ 乗すると相対誤差が $p$ 倍になる」は、一般の関数に広げられる。$f(x)\ne0$ のとき、$\tilde x=x(1+\varepsilon)$ に対して 1 次近似を使うと
$$ \frac{f(\tilde x)-f(x)}{f(x)}\approx\frac{f'(x)\cdot x\varepsilon}{f(x)}=\frac{xf'(x)}{f(x)}\,\varepsilon $$
となる。倍率 $\left\lvert\dfrac{xf'(x)}{f(x)}\right\rvert$ を、$f$ の $x$ における 相対条件数 という。$f(x)=x^p$ では $\dfrac{x\cdot px^{p-1}}{x^p}=p$ で、この記事の結果と一致する。近い 2 数の差では相対条件数が大きくなる。

差の相対条件数の例を開く

$f(x)=x-1$ を $x=1.001$ で考えると、$f'(x)=1$ なので相対条件数は $\dfrac{1.001\cdot1}{0.001}=1001$ である。ex-lae-cx-cancel と同じく、入力の相対誤差が 1000 倍ほどに拡大される。


条件数の定義と、計算機の丸め誤差との関係は 誤差(数値解析) で扱う。
変数が 2 つ以上あるときは、偏微分を使った 1 次近似で誤差の伝わり方を見積もる。
多変数の 1 次近似を開く

2 変数の関数 $f(x,y)$ では

$$f(x+\Delta x,\,y+\Delta y)\approx f(x,y)+\frac{\partial f}{\partial x}\Delta x+\frac{\partial f}{\partial y}\Delta y$$

である。$\dfrac{\partial f}{\partial x}$ は $y$ を止めて $x$ で微分したもの(偏微分)である。$f(x,y)=xy$ なら $\dfrac{\partial f}{\partial x}=y$、$\dfrac{\partial f}{\partial y}=x$ で、右辺の増え方 $y\Delta x+x\Delta y$ は図 4 の 2 つの帯にあたる。大学の実験で使う誤差の伝播の式は、この 1 次近似から作られる。

さらに先へ

  • 高い次数の近似:$f(a+h)$ を $h$ の 2 次、3 次の式で近似し、誤差を $f'''$ などで押さえる方法は 関数の近似とテイラー展開 で扱う。
  • 1 次近似をくり返す:方程式 $f(x)=0$ の解を、接線と $x$ 軸の交点をくり返しとって求めるのが Newton法(高校数学) である。
  • 微分係数を値から求める:この記事では $f'(a)$ が分かっているとして $f(a+h)$ を見積もった。逆に、$f(a)$ と $f(a+h)$ の値から $f'(a)$ を見積もるのが次の記事 数値微分(高校数学) で、そこでは thm-lae-bound と桁落ち(ex-lae-cx-cancel)の両方が使われる。

関連項目

参考文献

Mathpediaは寄付と、参考文献の書籍リンク(Amazonアソシエイト)の紹介料で運営されています。 支援について / 寄付する