§E20.21適応的数値積分

最終更新

数値積分の公式は、被積分関数を有限個の点で評価した値から積分を近似する。区間上でC4C^4級の関数に対する Simpson 則の誤差は、区間の長さの5乗と、第4導関数の区間内のある点での値との積に比例する。したがって第4導関数が有界な範囲では、区間を短くするほど誤差は小さく抑えられるが、どの区間をどれだけ短くすればよいかは、第4導関数の大きさが分からなければ決まらない。

適応的数値積分は、この大きさを求める代わりに、関数値から誤差を見積もる。区間JJ上の Simpson 則の値と、JJを二等分した二区間の Simpson 則の値の和との差を1515で割った量を Simpson 則の差による誤差推定値といい、この推定値の絶対値が区間の長さに比例して配分された許容誤差を超える区間を、分割が許される範囲で二等分していく。こうして得られる手続きが適応 Simpson 法であり、その分割は被積分関数に応じて場所ごとに異なる細かさになりうる。

推定値は誤差の上界ではない。関数値だけを見る手続きには、さらに根本的な限界がある。たとえば[0,1][0,1]上のsin⁡2(4πx)\sin^2(4\pi x)は0,1/4,1/2,3/4,10,1/4,1/2,3/4,1でいずれも00をとるので、推定値は00となり、推定による判定を用いる適応 Simpson 法は[0,1][0,1]を直ちに受理して00を出力するが、積分の値は1/21/2である。誤差を保証する判定は、第4導関数の上界という、関数値以外の情報を用いる。本記事では、適応 Simpson 法を定め、推定による判定と上界による判定の違いや、実際の計算で現れる問題について解説する。

1 Simpson 則の差による推定

定義 1.1.ffを実数値関数とし、α<β\alpha<\betaを満たす実数について閉区間J=[α,β]J=[\alpha,\beta]がffの定義域に含まれるとする。∣J∣:=β−α|J|:=\beta-\alpha、xJ,i:=α+i∣J∣/4x_{J,i}:=\alpha+i|J|/4(0≤i≤40\le i\le4)、c:=xJ,2c:=x_{J,2}と置き、

SJ(1)(f):=S[α,β](f),SJ(2)(f):=S[α,c](f)+S[c,β](f)=∣J∣12(f(xJ,0)+4f(xJ,1)+2f(xJ,2)+4f(xJ,3)+f(xJ,4))S^{(1)}_J(f):=S_{[\alpha,\beta]}(f),\qquad S^{(2)}_J(f):=S_{[\alpha,c]}(f)+S_{[c,\beta]}(f)=\frac{|J|}{12}\bigl(f(x_{J,0})+4f(x_{J,1})+2f(x_{J,2})+4f(x_{J,3})+f(x_{J,4})\bigr)

と定める。SJ(2)(f)S^{(2)}_J(f)はJJ上の複合 Simpson 則のN=4N=4、h=∣J∣/4h=|J|/4の場合である。

EJ(f):=SJ(2)(f)−SJ(1)(f)15E_J(f):=\frac{S^{(2)}_J(f)-S^{(1)}_J(f)}{15}

を、JJ上のffの Simpson 則の差による誤差推定値 (Simpson difference error estimate) という。JJをJ−:=[α,c]J^-:=[\alpha,c]とJ+:=[c,β]J^+:=[c,\beta]に分けることをJJの 二等分 (bisection) という。

命題 1.2.α<β\alpha<\betaを実数、J:=[α,β]J:=[\alpha,\beta]、H:=β−αH:=\beta-\alphaとし、f ⁣:J→Rf\colon J\to\RをC4C^4級の関数とする。m:=min⁡Jf(4)m:=\min_Jf^{(4)}、M:=max⁡Jf(4)M:=\max_Jf^{(4)}と置く。

  1. ξ1,ξ2∈(α,β)\xi_1,\xi_2\in(\alpha,\beta)が存在して ∫αβf(x) dx−SJ(1)(f)=−H52880f(4)(ξ1),∫αβf(x) dx−SJ(2)(f)=−H546080f(4)(ξ2),EJ(f)=−H5691200(16f(4)(ξ1)−f(4)(ξ2))\int_\alpha^\beta f(x)\,dx-S^{(1)}_J(f)=-\frac{H^5}{2880}f^{(4)}(\xi_1),\qquad\int_\alpha^\beta f(x)\,dx-S^{(2)}_J(f)=-\frac{H^5}{46080}f^{(4)}(\xi_2),\qquad E_J(f)=-\frac{H^5}{691200}\bigl(16f^{(4)}(\xi_1)-f^{(4)}(\xi_2)\bigr) が成り立つ。
  2. 実数M4M_4がJJ上で∣f(4)∣≤M4\lvert f^{(4)}\rvert\le M_4を満たすならば、∣∫αβf(x) dx−SJ(2)(f)∣≤M4H5/46080\bigl\lvert\int_\alpha^\beta f(x)\,dx-S^{(2)}_J(f)\bigr\rvert\le M_4H^5/46080である。
  3. ∣(∫αβf(x) dx−SJ(2)(f))−EJ(f)∣≤H5(M−m)43200\Bigl\lvert\Bigl(\int_\alpha^\beta f(x)\,dx-S^{(2)}_J(f)\Bigr)-E_J(f)\Bigr\rvert\le\dfrac{H^5(M-m)}{43200}である。
  4. m>0m>0またはM<0M<0であるとし、μ:=min⁡{∣m∣,∣M∣}\mu:=\min\{\lvert m\rvert,\lvert M\rvert\}と置く。このとき∫αβf(x) dx−SJ(2)(f)≠0\int_\alpha^\beta f(x)\,dx-S^{(2)}_J(f)\ne0であり、 ∣EJ(f)∫αβf(x) dx−SJ(2)(f)−1∣≤16(M−m)15μ\left\lvert\frac{E_J(f)}{\int_\alpha^\beta f(x)\,dx-S^{(2)}_J(f)}-1\right\rvert\le\frac{16(M-m)}{15\mu} が成り立つ。

証明.mmとMMは§D1.13 定理 2.1により存在する。§E20.20 定理 2.4 (1)をh=H/2h=H/2として適用すると、(H/2)5/90=H5/2880(H/2)^5/90=H^5/2880から第一の等式を満たすξ1∈(α,β)\xi_1\in(\alpha,\beta)を得る。SJ(2)(f)S^{(2)}_J(f)は§E20.20 定義 1.1の複合 Simpson 則のN=4N=4、h=H/4h=H/4の場合であり、§E20.20 定理 2.4 (2)を適用すると、H(H/4)4/180=H5/46080H(H/4)^4/180=H^5/46080から第二の等式を満たすξ2∈(α,β)\xi_2\in(\alpha,\beta)を得る。15EJ(f)=(∫αβf−SJ(1)(f))−(∫αβf−SJ(2)(f))15E_J(f)=\bigl(\int_\alpha^\beta f-S^{(1)}_J(f)\bigr)-\bigl(\int_\alpha^\beta f-S^{(2)}_J(f)\bigr)に二つの等式を代入し、2880⋅16=460802880\cdot16=46080、46080⋅15=69120046080\cdot15=691200を用いると第三の等式を得る。

(2)は、(1)の第二の等式と∣f(4)(ξ2)∣≤M4\lvert f^{(4)}(\xi_2)\rvert\le M_4から従う。

(1)により

(∫αβf(x) dx−SJ(2)(f))−EJ(f)=H5691200(−15f(4)(ξ2)+16f(4)(ξ1)−f(4)(ξ2))=H543200(f(4)(ξ1)−f(4)(ξ2))\Bigl(\int_\alpha^\beta f(x)\,dx-S^{(2)}_J(f)\Bigr)-E_J(f)=\frac{H^5}{691200}\bigl(-15f^{(4)}(\xi_2)+16f^{(4)}(\xi_1)-f^{(4)}(\xi_2)\bigr)=\frac{H^5}{43200}\bigl(f^{(4)}(\xi_1)-f^{(4)}(\xi_2)\bigr)

であり、∣f(4)(ξ1)−f(4)(ξ2)∣≤M−m\lvert f^{(4)}(\xi_1)-f^{(4)}(\xi_2)\rvert\le M-mから(3)を得る。

(4)を示す。f(4)f^{(4)}はJJ上で符号が一定であり、∣f(4)(ξ2)∣≥μ>0\lvert f^{(4)}(\xi_2)\rvert\ge\mu>0であるから、(1)の第二の等式により∫αβf−SJ(2)(f)≠0\int_\alpha^\beta f-S^{(2)}_J(f)\ne0である。第二と第三の等式により

EJ(f)∫αβf(x) dx−SJ(2)(f)−1=16f(4)(ξ1)−f(4)(ξ2)15f(4)(ξ2)−1=16(f(4)(ξ1)−f(4)(ξ2))15f(4)(ξ2)\frac{E_J(f)}{\int_\alpha^\beta f(x)\,dx-S^{(2)}_J(f)}-1=\frac{16f^{(4)}(\xi_1)-f^{(4)}(\xi_2)}{15f^{(4)}(\xi_2)}-1=\frac{16\bigl(f^{(4)}(\xi_1)-f^{(4)}(\xi_2)\bigr)}{15f^{(4)}(\xi_2)}

であり、分子の絶対値は16(M−m)16(M-m)以下、分母の絶対値は15μ15\mu以上である。▨

系 1.3.a<ba<bを実数、f ⁣:[a,b]→Rf\colon[a,b]\to\RをC4C^4級の関数とし、x∈[a,b]x\in[a,b]がf(4)(x)≠0f^{(4)}(x)\ne0を満たすとする。任意のε>0\varepsilon>0に対してδ>0\delta>0が存在し、x∈Jx\in Jかつ∣J∣<δ|J|<\deltaを満たす任意の閉区間J⊆[a,b]J\subseteq[a,b]について、∫Jf(y) dy−SJ(2)(f)≠0\int_Jf(y)\,dy-S^{(2)}_J(f)\ne0かつ

∣EJ(f)∫Jf(y) dy−SJ(2)(f)−1∣≤ε\left\lvert\frac{E_J(f)}{\int_Jf(y)\,dy-S^{(2)}_J(f)}-1\right\rvert\le\varepsilon

が成り立つ。

証明.η:=min⁡{1/2, 15ε/64}\eta:=\min\{1/2,\ 15\varepsilon/64\}と置く。f(4)f^{(4)}はxxで連続であるから、δ>0\delta>0が存在して、∣y−x∣<δ\lvert y-x\rvert<\deltaを満たす任意のy∈[a,b]y\in[a,b]で∣f(4)(y)−f(4)(x)∣≤η∣f(4)(x)∣\lvert f^{(4)}(y)-f^{(4)}(x)\rvert\le\eta\lvert f^{(4)}(x)\rvertが成り立つ。x∈Jx\in J、∣J∣<δ|J|<\deltaならばJJの各点yyは∣y−x∣<δ\lvert y-x\rvert<\deltaを満たすから、JJ上のf(4)f^{(4)}の最小値mmと最大値MMはf(4)(x)±η∣f(4)(x)∣f^{(4)}(x)\pm\eta\lvert f^{(4)}(x)\rvertの間にある。η≤1/2\eta\le1/2であるから、mmとMMはf(4)(x)f^{(4)}(x)と同じ符号をもち、min⁡{∣m∣,∣M∣}≥∣f(4)(x)∣/2\min\{\lvert m\rvert,\lvert M\rvert\}\ge\lvert f^{(4)}(x)\rvert/2、M−m≤2η∣f(4)(x)∣M-m\le2\eta\lvert f^{(4)}(x)\rvertである。命題 1.2 (4)により、比と11の差の絶対値は

16⋅2η∣f(4)(x)∣15∣f(4)(x)∣/2=64η15≤ε\frac{16\cdot2\eta\lvert f^{(4)}(x)\rvert}{15\lvert f^{(4)}(x)\rvert/2}=\frac{64\eta}{15}\le\varepsilon

以下である。▨

例 1.4.f(t):=t6f(t):=t^6、[a,b]=[−1,1][a,b]=[-1,1]、0<h≤10<h\le1、J:=[−h,h]J:=[-h,h]とする。f(4)(t)=360t2f^{(4)}(t)=360t^2であり、0∈J0\in Jでf(4)(0)=0f^{(4)}(0)=0である。f(±h)=h6f(\pm h)=h^6、f(±h/2)=h6/64f(\pm h/2)=h^6/64、f(0)=0f(0)=0から

SJ(1)(f)=2h6⋅2h6=2h73,SJ(2)(f)=2h12(2h6+8h664)=17h748,EJ(f)=115(1748−23)h7=−h748S^{(1)}_J(f)=\frac{2h}6\cdot2h^6=\frac{2h^7}3,\qquad S^{(2)}_J(f)=\frac{2h}{12}\Bigl(2h^6+\frac{8h^6}{64}\Bigr)=\frac{17h^7}{48},\qquad E_J(f)=\frac1{15}\Bigl(\frac{17}{48}-\frac23\Bigr)h^7=-\frac{h^7}{48}

であり、∫Jf(t) dt=2h7/7\int_Jf(t)\,dt=2h^7/7から∫Jf(t) dt−SJ(2)(f)=−23h7/336\int_Jf(t)\,dt-S^{(2)}_J(f)=-23h^7/336である。したがってEJ(f)/(∫Jf−SJ(2)(f))=7/23E_J(f)\big/\bigl(\int_Jf-S^{(2)}_J(f)\bigr)=7/23はhhによらず、h→+0h\to+0としても11に近づかない。

注意 1.5. 区間JJを固定し、正の偶数NNに対してh=∣J∣/Nh=|J|/Nの複合 Simpson 則の値をA(h)A(h)と書くと、SJ(1)(f)=A(∣J∣/2)S^{(1)}_J(f)=A(|J|/2)、SJ(2)(f)=A(∣J∣/4)S^{(2)}_J(f)=A(|J|/4)であり、EJ(f)=(A(h/2)−A(h))/(24−1)E_J(f)=\bigl(A(h/2)-A(h)\bigr)/(2^4-1)(h=∣J∣/2h=|J|/2)は§E20.19 定理 4.3のE(h)E(h)をt=2t=2、p=4p=4としたものと同じ形である。§E20.19 定理 4.3は、(0,h0](0,h_0]上で定義された関数AAが固定した極限に対して指数4,p′4,p'の誤差の漸近展開をもつことを仮定し、h→+0h\to+0での推定を結論する。適応的な分割で用いるのは、長さの異なる区間JJごとのN=2,4N=2,4の組であり、命題 1.2はJJ上でffがC4C^4級であることだけから、その一つの区間についての評価を与える。

例 1.6.f(x):=4x6−5x4f(x):=4x^6-5x^4、J:=[−1,1]J:=[-1,1]とする。f(4)(x)=1440x2−120f^{(4)}(x)=1440x^2-120はx=±1/12x=\pm1/\sqrt{12}で符号を変える。f(±1)=−1f(\pm1)=-1、f(±1/2)=−1/4f(\pm1/2)=-1/4、f(0)=0f(0)=0から

SJ(1)(f)=26(−1+0−1)=−23,SJ(2)(f)=212(f(−1)+4f(−12)+2f(0)+4f(12)+f(1))=212(−4)=−23S^{(1)}_J(f)=\frac26(-1+0-1)=-\frac23,\qquad S^{(2)}_J(f)=\frac2{12}\bigl(f(-1)+4f(-\tfrac12)+2f(0)+4f(\tfrac12)+f(1)\bigr)=\frac2{12}(-4)=-\frac23

であり、EJ(f)=0E_J(f)=0である。一方∫−11f(x) dx=8/7−2=−6/7\int_{-1}^1f(x)\,dx=8/7-2=-6/7であり、∫−11f(x) dx−SJ(2)(f)=−4/21\int_{-1}^1f(x)\,dx-S^{(2)}_J(f)=-4/21であって、推定値00は誤差の絶対値4/214/21の上界でない。

2 許容誤差の配分と保証

補題 2.1.a<ba<bを実数、f ⁣:[a,b]→Rf\colon[a,b]\to\Rを Riemann 可積分な関数、a=t0<t1<⋯<tK=ba=t_0<t_1<\dots<t_K=bを[a,b][a,b]の分割とする。実数Q1,…,QKQ_1,\dots,Q_K、τ1,…,τK\tau_1,\dots,\tau_K、τ\tauが、各kkについて∣∫tk−1tkf(x) dx−Qk∣≤τk\bigl\lvert\int_{t_{k-1}}^{t_k}f(x)\,dx-Q_k\bigr\rvert\le\tau_kを満たし、∑k=1Kτk≤τ\sum_{k=1}^K\tau_k\le\tauを満たすならば、∣∫abf(x) dx−∑k=1KQk∣≤τ\bigl\lvert\int_a^bf(x)\,dx-\sum_{k=1}^KQ_k\bigr\rvert\le\tauである。

証明.§D1.17 定理 3.6をK−1K-1回適用して∫abf=∑k=1K∫tk−1tkf\int_a^bf=\sum_{k=1}^K\int_{t_{k-1}}^{t_k}fを得る。したがって∫abf−∑kQk=∑k(∫tk−1tkf−Qk)\int_a^bf-\sum_kQ_k=\sum_k\bigl(\int_{t_{k-1}}^{t_k}f-Q_k\bigr)であり、三角不等式により左辺の絶対値は∑kτk≤τ\sum_k\tau_k\le\tau以下である。▨

注意 2.2.τk:=τ(tk−tk−1)/(b−a)\tau_k:=\tau(t_k-t_{k-1})/(b-a)と置くと∑kτk=τ\sum_k\tau_k=\tauである。[a,b][a,b]からdd回の二等分で得られる区間の長さは(b−a)2−d(b-a)2^{-d}であるから、この配分は、その区間にτ2−d\tau2^{-d}を割り当てること、すなわち二等分のたびに許容誤差を半分にすることと一致する。補題 2.1の仮定は真の誤差についての不等式であり、推定値の絶対値がτk\tau_k以下であることからは従わない(例 1.6)。

3 適応 Simpson 法

定義 3.1.a<ba<bを実数、f ⁣:[a,b]→Rf\colon[a,b]\to\Rを関数、τ>0\tau>0、ρ≥0\rho\ge0とする。[a,b][a,b]に含まれる正の長さの閉区間JJに対する次の条件を、それぞれJJの 判定規則 (acceptance test) という。

  1. 推定による判定 (estimate-based test):∣EJ(f)∣≤τ∣J∣/(b−a)\lvert E_J(f)\rvert\le\tau|J|/(b-a)。
  2. [a,b][a,b]に含まれる閉区間の全体の上で定義された非負実数値の関数BBを与える。上界による判定 (bound-based test):B(J)∣J∣5/46080≤τ∣J∣/(b−a)B(J)|J|^5/46080\le\tau|J|/(b-a)。
  3. 相対判定 (relative test):∣EJ(f)∣≤ρ∣SJ(2)(f)∣\lvert E_J(f)\rvert\le\rho\lvert S^{(2)}_J(f)\rvert。
  4. 併用判定 (mixed absolute-relative test):∣EJ(f)∣≤max⁡{τ∣J∣/(b−a), ρ∣SJ(2)(f)∣}\lvert E_J(f)\rvert\le\max\{\tau|J|/(b-a),\ \rho\lvert S^{(2)}_J(f)\rvert\}。

推定による判定、相対判定、併用判定の真偽は、f(xJ,0),…,f(xJ,4)f(x_{J,0}),\dots,f(x_{J,4})とJJによって定まる。上界による判定の真偽はJJとBBによって定まる。

定義 3.2.a<ba<bを実数、f ⁣:[a,b]→Rf\colon[a,b]\to\Rを関数とする。入力として、定義 3.1の判定規則の一つ、[a,b][a,b]に含まれる閉区間からなる集合D\mathcal D、整数nmax⁡≥5n_{\max}\ge5を与える。D\mathcal Dに属する区間を 分割を許す区間 (divisible interval) といい、nmax⁡n_{\max}を 評価回数の上限 (evaluation cap) という。

状態は、区間の有限集合A\mathcal A、U\mathcal U、区間の有限列P\mathcal P、整数nnの組(A,U,P,n)(\mathcal A,\mathcal U,\mathcal P,n)である。ffをx[a,b],0,…,x[a,b],4x_{[a,b],0},\dots,x_{[a,b],4}で評価し、初期状態を(∅,∅,([a,b]),5)(\emptyset,\emptyset,([a,b]),5)とする。P\mathcal Pが空でない間、P\mathcal Pの先頭の区間JJをP\mathcal Pから除き、次の規則で状態を更新する。

  1. JJが判定規則を満たすならば、JJをA\mathcal Aに加える。
  2. JJが判定規則を満たさず、J∉DJ\notin\mathcal Dならば、JJをU\mathcal Uに加える。
  3. JJが判定規則を満たさず、J∈DJ\in\mathcal Dであり、n+4>nmax⁡n+4>n_{\max}ならば、終了理由「評価回数の上限」、区間族K:=A∪U∪{J}∪P\mathcal K:=\mathcal A\cup\mathcal U\cup\{J\}\cup\mathcal P(P\mathcal Pはその項の集合とみなす)を定めて停止する。
  4. J=[α,β]J=[\alpha,\beta]が判定規則を満たさず、J∈DJ\in\mathcal Dであり、n+4≤nmax⁡n+4\le n_{\max}ならば、ffを四点α+(2i+1)∣J∣/8\alpha+(2i+1)|J|/8(0≤i≤30\le i\le3)で評価し、nnをn+4n+4に替え、P\mathcal Pの先頭にJ−J^-、J+J^+をこの順に置く。

P\mathcal Pが空になったとき、K:=A∪U\mathcal K:=\mathcal A\cup\mathcal Uと置き、U=∅\mathcal U=\emptysetならば終了理由「受理」、U≠∅\mathcal U\ne\emptysetならば終了理由「分割不能」を定めて停止する。停止したとき、近似値Q:=∑K∈KSK(2)(f)Q:=\sum_{K\in\mathcal K}S^{(2)}_K(f)、終了理由、区間族K\mathcal Kを出力する。この手続きを 適応 Simpson 法 (adaptive Simpson method) という。

命題 3.3.a<ba<bを実数、f ⁣:[a,b]→Rf\colon[a,b]\to\Rを関数とし、定義 3.2の適応 Simpson 法を考える。各段階で、A\mathcal A、U\mathcal U、P\mathcal Pの項と、処理中の区間JJを合わせた区間の全体を現在の区間族という。

  1. 各段階で、現在の区間族は内部が互いに交わらず、和集合が[a,b][a,b]である有限個の閉区間からなる。その各区間は[a,b][a,b]から有限回の二等分で得られる。その区間の個数をkkとすると、ffを評価した点の集合は、現在の区間族の各区間KKの点xK,0,…,xK,4x_{K,0},\dots,x_{K,4}の和集合であり、4k+14k+1個の点からなり、その個数はnnに等しい。
  2. 規則定義 3.2 (4)の実行回数DDは⌊(nmax⁡−5)/4⌋\lfloor(n_{\max}-5)/4\rfloor以下であり、手続きは高々2D+22D+2回の更新で停止する。
  3. 停止したとき、出力の区間族K\mathcal Kは[a,b][a,b]の分割をなし、ffの評価回数は4∣K∣+14\lvert\mathcal K\rvert+1である。

証明.(1)を更新の回数に関する帰納法で示す。初期状態では現在の区間族は{[a,b]}\{[a,b]\}、評価点はx[a,b],0,…,x[a,b],4x_{[a,b],0},\dots,x_{[a,b],4}の55点であり、n=5n=5である。規則定義 3.2 (1)、定義 3.2 (2)、定義 3.2 (3)は区間をP\mathcal PからA\mathcal AまたはU\mathcal Uへ移すか停止するだけであり、現在の区間族、評価点、nnを変えない。規則定義 3.2 (4)は現在の区間族のJ=[α,β]J=[\alpha,\beta]をJ−J^-、J+J^+に替える。J−J^-とJ+J^+の内部は交わらず、和集合はJJであり、J±J^\pmは[a,b][a,b]からJJより一回多い二等分で得られる。H:=∣J∣H:=|J|と置くと、xJ−,i=α+iH/8x_{J^-,i}=\alpha+iH/8、xJ+,i=α+(4+i)H/8x_{J^+,i}=\alpha+(4+i)H/8(0≤i≤40\le i\le4)であるから、

{xJ−,i}i∪{xJ+,i}i={xJ,i}i∪{α+(2i+1)H/8}0≤i≤3\{x_{J^-,i}\}_{i}\cup\{x_{J^+,i}\}_{i}=\{x_{J,i}\}_{i}\cup\{\alpha+(2i+1)H/8\}_{0\le i\le3}

である。新しい四点はJJの内部にあり、xJ,0,…,xJ,4x_{J,0},\dots,x_{J,4}のいずれとも異なる。現在の区間族のJJ以外の区間はJJと端点でしか交わらないから、それらの区間の点は新しい四点のいずれとも異なる。帰納法の仮定により、更新後の評価点の集合は更新後の区間族の各区間の五点の和集合であり、その個数は4k+1+4=4(k+1)+14k+1+4=4(k+1)+1であって、nnも44増える。

(2)を示す。規則定義 3.2 (4)はn+4≤nmax⁡n+4\le n_{\max}のときだけ実行され、nnを44増やすから、各段階でn=5+4D′≤nmax⁡n=5+4D'\le n_{\max}である。ここでD′D'はそれまでの実行回数である。したがってD≤⌊(nmax⁡−5)/4⌋D\le\lfloor(n_{\max}-5)/4\rfloorである。規則定義 3.2 (4)はP\mathcal Pの長さを11増やし、規則定義 3.2 (1)と定義 3.2 (2)は11減らす。P\mathcal Pの長さは初めに11であり、負にならないから、後者の二規則の実行回数はD+1D+1以下である。規則定義 3.2 (3)の実行は停止を伴い、高々一回である。したがって更新の回数は2D+22D+2以下である。

(3)を示す。P\mathcal Pが空になって停止したとき、現在の区間族はA∪U=K\mathcal A\cup\mathcal U=\mathcal Kである。規則定義 3.2 (3)で停止したとき、現在の区間族はA∪U∪{J}∪P=K\mathcal A\cup\mathcal U\cup\{J\}\cup\mathcal P=\mathcal Kである。いずれの場合も(1)によりK\mathcal Kは[a,b][a,b]の分割をなし、評価回数はn=4∣K∣+1n=4\lvert\mathcal K\rvert+1である。▨

定理 3.4.a<ba<bを実数、f ⁣:[a,b]→Rf\colon[a,b]\to\RをC4C^4級の関数、τ>0\tau>0とし、BBを[a,b][a,b]に含まれる閉区間の全体の上で定義された関数であって、任意の閉区間K⊆[a,b]K\subseteq[a,b]についてB(K)≥max⁡K∣f(4)∣B(K)\ge\max_K\lvert f^{(4)}\rvertを満たすものとする。上界による判定を用いる適応 Simpson 法の出力QQ、K\mathcal Kについて、次が成り立つ。

  1. 終了理由によらず、∣∫abf(x) dx−Q∣≤∑K∈KB(K)∣K∣546080\Bigl\lvert\int_a^bf(x)\,dx-Q\Bigr\rvert\le\sum_{K\in\mathcal K}\dfrac{B(K)|K|^5}{46080}である。
  2. 終了理由が「受理」ならば、∣∫abf(x) dx−Q∣≤τ\Bigl\lvert\int_a^bf(x)\,dx-Q\Bigr\rvert\le\tauである。

証明.命題 3.3 (3)によりK\mathcal Kは[a,b][a,b]の分割をなし、Q=∑K∈KSK(2)(f)Q=\sum_{K\in\mathcal K}S^{(2)}_K(f)である。各K∈KK\in\mathcal Kについて、命題 1.2 (2)をM4=B(K)M_4=B(K)として適用すると∣∫Kf−SK(2)(f)∣≤B(K)∣K∣5/46080\bigl\lvert\int_Kf-S^{(2)}_K(f)\bigr\rvert\le B(K)|K|^5/46080である。補題 2.1を、各KKのτK:=B(K)∣K∣5/46080\tau_K:=B(K)|K|^5/46080と、全体の許容誤差∑K∈KτK\sum_{K\in\mathcal K}\tau_Kに適用して(1)を得る。終了理由が「受理」ならばU=∅\mathcal U=\emptysetであり、K=A\mathcal K=\mathcal Aの各区間KKは上界による判定を満たすから、τK≤τ∣K∣/(b−a)\tau_K\le\tau|K|/(b-a)である。K\mathcal Kは[a,b][a,b]の分割であるから∑KτK≤τ\sum_K\tau_K\le\tauであり、(1)から(2)が従う。▨

注意 3.5. 推定による判定を用いる適応 Simpson 法で終了理由が「受理」であることは、∑K∈K∣EK(f)∣≤τ\sum_{K\in\mathcal K}\lvert E_K(f)\rvert\le\tauを意味し、∣∫abf−Q∣≤τ\bigl\lvert\int_a^bf-Q\bigr\rvert\le\tauを意味しない。例 1.6のffを[a,b]=[−1,1][a,b]=[-1,1]で入力すると、E[−1,1](f)=0E_{[-1,1]}(f)=0であるから[−1,1][-1,1]が直ちに受理され、Q=−2/3Q=-2/3であり、τ<4/21\tau<4/21ならば誤差4/214/21はτ\tauを超える。

4 評価回数と終了理由

命題 4.1.a<ba<bを実数、f ⁣:[a,b]→Rf\colon[a,b]\to\Rを関数、τ>0\tau>0、M4>0M_4>0とし、BBを[a,b][a,b]に含まれる閉区間の全体の上で定義された非負実数値の関数であって、任意のKKについてB(K)≤M4B(K)\le M_4を満たすものとする。

λ:=(46080 τM4(b−a))1/4\lambda:=\Bigl(\frac{46080\,\tau}{M_4(b-a)}\Bigr)^{1/4}

と置き、D\mathcal Dが長さλ\lambdaより大きい[a,b][a,b]の閉部分区間をすべて含み、nmax⁡≥8(b−a)/λ+1n_{\max}\ge8(b-a)/\lambda+1であるとする。上界による判定を用いる適応 Simpson 法は終了理由「受理」で停止し、K\mathcal Kの区間は[a,b][a,b]に等しいか長さがλ/2\lambda/2より大きい。ffの評価回数は

max⁡{5, 8(M4(b−a)546080 τ)1/4+1}\max\Bigl\{5,\ 8\Bigl(\frac{M_4(b-a)^5}{46080\,\tau}\Bigr)^{1/4}+1\Bigr\}

以下である。

証明. 上界による判定を満たさない区間JJはB(J)∣J∣4>46080τ/(b−a)B(J)|J|^4>46080\tau/(b-a)を満たし、B(J)≤M4B(J)\le M_4から∣J∣4>λ4|J|^4>\lambda^4、すなわち∣J∣>λ|J|>\lambdaである。したがって判定を満たさない区間はD\mathcal Dに属し、規則定義 3.2 (2)は実行されない。[a,b][a,b]以外の区間は判定を満たさない区間の二等分で現れるから、その長さはλ/2\lambda/2より大きい。規則定義 3.2 (4)または定義 3.2 (3)の条件が調べられる区間JJは判定を満たさず、∣J∣>λ|J|>\lambdaであるからJ±J^\pmの長さはλ/2\lambda/2より大きい。現在の区間族をkk個の区間とすると、JJをJ−J^-、J+J^+に替えたk+1k+1個の区間は[a,b][a,b]の分割をなし(命題 3.3 (1))、いずれも長さがλ/2\lambda/2より大きいから、(k+1)λ/2<b−a(k+1)\lambda/2<b-aである。n=4k+1n=4k+1であるからn+4=4(k+1)+1<8(b−a)/λ+1≤nmax⁡n+4=4(k+1)+1<8(b-a)/\lambda+1\le n_{\max}であり、規則定義 3.2 (3)は実行されない。したがって終了理由は「受理」である。規則定義 3.2 (4)が一度も実行されなければ評価回数は55である。一度以上実行されればK\mathcal Kの各区間の長さはλ/2\lambda/2より大きく、∣K∣<2(b−a)/λ\lvert\mathcal K\rvert<2(b-a)/\lambdaであるから、命題 3.3 (3)により評価回数4∣K∣+14\lvert\mathcal K\rvert+1は8(b−a)/λ+18(b-a)/\lambda+1より小さい。8(b−a)/λ=8(M4(b−a)5/(46080τ))1/48(b-a)/\lambda=8\bigl(M_4(b-a)^5/(46080\tau)\bigr)^{1/4}である。▨

例 4.2.f(x):=1/((x−1/3)2+10−6)f(x):=1/\bigl((x-1/3)^2+10^{-6}\bigr)、[a,b]=[0,1][a,b]=[0,1]とする。f(1/3)=106f(1/3)=10^6であり、∣x−1/3∣≥1/10\lvert x-1/3\rvert\ge1/10ではf(x)<100f(x)<100である。∫01f(x) dx=1000(arctan⁡(2000/3)+arctan⁡(1000/3))=3137.0926637147…\int_0^1f(x)\,dx=1000\bigl(\arctan(2000/3)+\arctan(1000/3)\bigr)=3137.0926637147\ldotsである。推定による判定をτ=10−3\tau=10^{-3}で用い、D\mathcal Dを[0,1][0,1]のすべての閉部分区間、nmax⁡n_{\max}を十分大きくとった適応 Simpson 法を4040桁の十進演算で実行すると、終了理由は「受理」、∣K∣=231\lvert\mathcal K\rvert=231、評価回数は925925であり、K\mathcal Kの区間の長さは2−152^{-15}から2−22^{-2}までにわたる。誤差は∫01f−Q=−3.9127…×10−4\int_0^1f-Q=-3.9127\ldots\times10^{-4}である。一様な分割による複合 Simpson 則Sh(f)S_h(f)(h=1/Nh=1/N)では、N=4096N=4096(評価回数40974097)で∫01f−Sh(f)=−2.7010…×10−3\int_0^1f-S_h(f)=-2.7010\ldots\times10^{-3}、N=8192N=8192(評価回数81938193)で−6.967…×10−9-6.967\ldots\times10^{-9}である。倍精度演算で偶数NNごとに計算すると、誤差の絶対値が10−310^{-3}以下となる最小のNNは44144414である。推定による判定には定理 3.4に当たる保証が無く、適応 Simpson 法の誤差の絶対値がτ\tau以下であることは、この実行の計算値から分かる事実である。

命題 4.3.FFを浮動小数点数系、fl⁡\operatorname{fl}をFFの最近接丸めとし、α<β\alpha<\betaをFFの元であって、開区間(α,β)(\alpha,\beta)にFFの元が無いものとする。任意の実数z∈[α,β]z\in[\alpha,\beta]についてfl⁡(z)∈{α,β}\operatorname{fl}(z)\in\{\alpha,\beta\}である。特に、端点をFFの元とする区間[α,β][\alpha,\beta]の二等分点として、α<c<β\alpha<c<\betaを満たすc∈Fc\in Fをとることはできない。

証明. 演習とする(問題 7.1)。▨

例 4.4. binary64 の有限数の全体F=F(2,53,−1022,1023)F=F(2,53,-1022,1023)と最近接偶数丸めfl⁡\operatorname{fl}を考える。§E20.1 補題 1.2 (4)により、α:=1\alpha:=1より大きい最小のFFの元はβ:=1+2−52\beta:=1+2^{-52}である。厳密な中点1+2−531+2^{-53}の最近接点はα\alphaとβ\betaの二つであり、§E20.1 定義 2.4の整数はm(α)=252m(\alpha)=2^{52}、m(β)=252+1m(\beta)=2^{52}+1であるから、fl⁡(1+2−53)=α\operatorname{fl}(1+2^{-53})=\alphaである。浮動小数点演算で中点をfl⁡(fl⁡(α+β)/2)\operatorname{fl}\bigl(\operatorname{fl}(\alpha+\beta)/2\bigr)と計算すると、α+β=2+2−52\alpha+\beta=2+2^{-52}は隣り合うFFの元22と2+2−512+2^{-51}の中点であってfl⁡(2+2−52)=2\operatorname{fl}(2+2^{-52})=2であり、計算値はα\alphaである。[1,2][1,2]からdd回の二等分で得られる区間J=[α′,β′]J=[\alpha',\beta']について、α′\alpha'は2−d2^{-d}の整数倍であり、定義 3.2 (4)の四点はα′+(2i+1)2−d−3\alpha'+(2i+1)2^{-d-3}である。F∩[1,2)F\cap[1,2)は2−522^{-52}の整数倍の全体であるから、d≤49d\le49ならばこの四点はFFに属し、d≥50d\ge50ならばこの四点はいずれもFFに属さない。FFの元だけを点として用いる実装では、d≥50d\ge50の区間をD\mathcal Dから除く必要がある。

例 4.5.f(x):=x4−1/5f(x):=x^4-1/5、[a,b]=[−1,1][a,b]=[-1,1]とする。f(4)=24f^{(4)}=24は定数であるから、命題 1.2 (1)と命題 1.2 (3)により、任意の閉区間J⊆[−1,1]J\subseteq[-1,1]でEJ(f)=∫Jf−SJ(2)(f)=−∣J∣5/1920E_J(f)=\int_Jf-S^{(2)}_J(f)=-|J|^5/1920である。有理数の演算により次の値を得る。

JJ ∫Jf\int_Jf SJ(2)(f)S^{(2)}_J(f) EJ(f)E_J(f)
[−1,1][-1,1] 00 1/601/60 −1/60-1/60
[0,1][0,1] 00 1/19201/1920 −1/1920-1/1920
[0,1/2][0,1/2] −3/32-3/32 −5759/61440-5759/61440 −1/61440-1/61440
[1/2,1][1/2,1] 3/323/32 5761/614405761/61440 −1/61440-1/61440

ffは偶関数であるから、[−1,0][-1,0]、[−1,−1/2][-1,-1/2]、[−1/2,0][-1/2,0]の値はそれぞれ[0,1][0,1]、[1/2,1][1/2,1]、[0,1/2][0,1/2]の値に等しい。以下の 2 と 3 では、D\mathcal Dを[−1,1][-1,1]のすべての閉部分区間とし、nmax⁡≥17n_{\max}\ge17とする。3 の実行はnmax⁡≥9n_{\max}\ge9であれば同じである。

  1. ∫Jf=0\int_Jf=0を満たす区間JJではSJ(2)(f)=−EJ(f)S^{(2)}_J(f)=-E_J(f)であるから、ρ<1\rho<1の相対判定は∣EJ(f)∣\lvert E_J(f)\rvertの大きさによらず満たされない。[0,1][0,1]はこの場合に当たる。
  2. ρ=1/10\rho=1/10の相対判定を用いると、[−1,1][-1,1]、[−1,0][-1,0]、[0,1][0,1]は判定を満たさず、長さ1/21/2の四区間は判定を満たす。評価回数は1717、Q=2(−5759/61440+5761/61440)=1/15360Q=2\bigl(-5759/61440+5761/61440\bigr)=1/15360であり、∫−11f−Q=−1/15360\int_{-1}^1f-Q=-1/15360である。受理した各区間KKは∣∫Kf−SK(2)(f)∣=∣∫Kf∣/5760\bigl\lvert\int_Kf-S^{(2)}_K(f)\bigr\rvert=\lvert\int_Kf\rvert/5760を満たすが、∫−11f=0\int_{-1}^1f=0であるから、どのρ′≥0\rho'\ge0についても∣∫−11f−Q∣≤ρ′∣∫−11f∣\bigl\lvert\int_{-1}^1f-Q\bigr\rvert\le\rho'\bigl\lvert\int_{-1}^1f\bigr\rvertは成り立たない。
  3. τ=2⋅10−3\tau=2\cdot10^{-3}、ρ=1/10\rho=1/10の併用判定を用いると、[−1,1][-1,1]は1/60>max⁡{2⋅10−3, 1/600}1/60>\max\{2\cdot10^{-3},\ 1/600\}から判定を満たさず、[−1,0][-1,0]と[0,1][0,1]は1/1920≤10−3=τ⋅121/1920\le10^{-3}=\tau\cdot\frac12から判定を満たす。評価回数は99、Q=2/1920=1/960Q=2/1920=1/960であり、∣∫−11f−Q∣=1/960≤τ\bigl\lvert\int_{-1}^1f-Q\bigr\rvert=1/960\le\tauである。このffではEJ(f)E_J(f)が真の誤差に等しいので、この不等式は受理の条件から従う。

5 標本値の限界

定義 5.1.a<ba<bを実数、YYを集合とし、∗\astを[a,b][a,b]に属さない記号とする。点x1∈[a,b]x_1\in[a,b]と、各j∈N≥1j\in\NNに対する写像φj ⁣:Rj→[a,b]∪{∗}\varphi_j\colon\R^j\to[a,b]\cup\{\ast\}、ψj ⁣:Rj→Y\psi_j\colon\R^j\to Yの組を、[a,b][a,b]上の 決定的な標本算法 (deterministic sampling algorithm) という。関数f ⁣:[a,b]→Rf\colon[a,b]\to\Rに対して、x1f:=x1x^f_1:=x_1とし、j≥1j\ge1についてx1f,…,xjfx^f_1,\dots,x^f_jが定まったときyif:=f(xif)y^f_i:=f(x^f_i)(1≤i≤j1\le i\le j)と置き、φj(y1f,…,yjf)∈[a,b]\varphi_j(y^f_1,\dots,y^f_j)\in[a,b]ならばxj+1f:=φj(y1f,…,yjf)x^f_{j+1}:=\varphi_j(y^f_1,\dots,y^f_j)と定める。φj(y1f,…,yjf)=∗\varphi_j(y^f_1,\dots,y^f_j)=\astを満たすjjが存在するとき、その最小のjjをnnとして、算法はffに対してnn回の評価で停止するといい、x1f,…,xnfx^f_1,\dots,x^f_nをその評価点、ψn(y1f,…,ynf)\psi_n(y^f_1,\dots,y^f_n)をその出力という。

定理 5.2.a<ba<bを実数とし、[a,b][a,b]上の決定的な標本算法が恒等的に00の関数に対してnn回の評価で停止し、その評価点がx1,…,xnx_1,\dots,x_nであるとする。関数g ⁣:[a,b]→Rg\colon[a,b]\to\Rがg(x1)=⋯=g(xn)=0g(x_1)=\dots=g(x_n)=0を満たすならば、算法はggに対してnn回の評価で停止し、その評価点はx1,…,xnx_1,\dots,x_n、その出力は恒等的に00の関数に対する出力に等しい。

証明. 恒等的に00の関数を00と書く。1≤j≤n1\le j\le nについて、xjgx^g_jが定まりxjg=xjx^g_j=x_jであることをjjに関する帰納法で示す。j=1j=1ではx1g=x1x^g_1=x_1である。1≤j<n1\le j<nとし、1≤i≤j1\le i\le jでxig=xix^g_i=x_iであるとすると、yig=g(xi)=0=yi0y^g_i=g(x_i)=0=y^0_iである。nnはφj(y10,…,yj0)=∗\varphi_j(y^0_1,\dots,y^0_j)=\astを満たす最小のjjであるからφj(0,…,0)=xj+1∈[a,b]\varphi_j(0,\dots,0)=x_{j+1}\in[a,b]であり、xj+1g=φj(y1g,…,yjg)=xj+1x^g_{j+1}=\varphi_j(y^g_1,\dots,y^g_j)=x_{j+1}である。したがって1≤j≤n1\le j\le nでyjg=0y^g_j=0であり、j<nj<nでφj(y1g,…,yjg)=xj+1≠∗\varphi_j(y^g_1,\dots,y^g_j)=x_{j+1}\ne\ast、φn(y1g,…,yng)=φn(0,…,0)=∗\varphi_n(y^g_1,\dots,y^g_n)=\varphi_n(0,\dots,0)=\astである。よって算法はggに対してnn回の評価で停止し、出力はψn(0,…,0)\psi_n(0,\dots,0)である。▨

系 5.3.a<ba<bを実数とし、[a,b][a,b]上の決定的な標本算法でY=RY=\Rであるものが、恒等的に00の関数に対して停止するとする。任意のτ>0\tau>0に対して、多項式関数g ⁣:[a,b]→Rg\colon[a,b]\to\Rが存在して、算法はggに対して停止し、その出力vvは∣∫abg(x) dx−v∣>τ\bigl\lvert\int_a^bg(x)\,dx-v\bigr\rvert>\tauを満たす。

証明. 恒等的に00の関数に対する評価点をx1,…,xnx_1,\dots,x_n、出力をvvとし、p(x):=∏i=1n(x−xi)2p(x):=\prod_{i=1}^n(x-x_i)^2と置く。ppは[a,b][a,b]上で連続かつ非負であり、有限個の点x1,…,xnx_1,\dots,x_n以外で正であるから、§E20.20 補題 1.2によりIp:=∫abp(x) dx>0I_p:=\int_a^bp(x)\,dx>0である。λ:=(∣v∣+τ+1)/Ip\lambda:=(\lvert v\rvert+\tau+1)/I_p、g:=λpg:=\lambda pと置く。g(xi)=0g(x_i)=0であるから、定理 5.2により算法はggに対して停止し、出力はvvである。∣∫abg−v∣≥λIp−∣v∣=τ+1>τ\bigl\lvert\int_a^bg-v\bigr\rvert\ge\lambda I_p-\lvert v\rvert=\tau+1>\tauである。▨

例 5.4.[a,b]=[0,1][a,b]=[0,1]、g(x):=sin⁡2(4πx)g(x):=\sin^2(4\pi x)とする。ggはC∞C^\infty級であり、g=(1−cos⁡8πx)/2g=(1-\cos8\pi x)/2から∫01g(x) dx=1/2\int_0^1g(x)\,dx=1/2である。x[0,1],i=i/4x_{[0,1],i}=i/4でg(i/4)=sin⁡2(iπ)=0g(i/4)=\sin^2(i\pi)=0であるから、S[0,1](1)(g)=S[0,1](2)(g)=0S^{(1)}_{[0,1]}(g)=S^{(2)}_{[0,1]}(g)=0、E[0,1](g)=0E_{[0,1]}(g)=0である。推定による判定、相対判定、併用判定のいずれを用いても、適応 Simpson 法は[0,1][0,1]を直ちに受理し、恒等的に00の関数に対するのと同じ55点で評価してQ=0Q=0を出力する。誤差は1/21/2である。上界による判定は関数値g(xJ,0),…,g(xJ,4)g(x_{J,0}),\dots,g(x_{J,4})以外の情報BBを用いる。g(4)=−(8π)4cos⁡(8πx)/2g^{(4)}=-(8\pi)^4\cos(8\pi x)/2であり、B([0,1])≥(8π)4/2B([0,1])\ge(8\pi)^4/2ならば、τ<(8π)4/(2⋅46080)=4.329…\tau<(8\pi)^4/(2\cdot46080)=4.329\ldotsのとき[0,1][0,1]は判定を満たさない。

6 端点特異性

例 6.1.f(x):=xf(x):=\sqrt x、[a,b]=[0,1][a,b]=[0,1]とする。β>0\beta>0に対してffは[0,β][0,\beta]上でC4C^4級でなく、(0,β](0,\beta]上でf(4)(x)=−1516x−7/2f^{(4)}(x)=-\frac{15}{16}x^{-7/2}は有界でない。したがって、左端が00の区間には命題 1.2を適用することができず、[0,1][0,1]上のffは定理 3.4の仮定を満たさない。

  1. f(βx)=βf(x)f(\beta x)=\sqrt\beta f(x)であるから、S[0,β](1)(f)=β3/2S[0,1](1)(f)S^{(1)}_{[0,\beta]}(f)=\beta^{3/2}S^{(1)}_{[0,1]}(f)、S[0,β](2)(f)=β3/2S[0,1](2)(f)S^{(2)}_{[0,\beta]}(f)=\beta^{3/2}S^{(2)}_{[0,1]}(f)、∫0βf=β3/2∫01f\int_0^\beta f=\beta^{3/2}\int_0^1fである。[0,1][0,1]では S[0,1](1)(f)=1+226,S[0,1](2)(f)=3+2+2312,e1:=23−S[0,1](2)(f)=5−2−2312,E1:=E[0,1](f)=1−32+23180S^{(1)}_{[0,1]}(f)=\frac{1+2\sqrt2}6,\qquad S^{(2)}_{[0,1]}(f)=\frac{3+\sqrt2+2\sqrt3}{12},\qquad e_1:=\frac23-S^{(2)}_{[0,1]}(f)=\frac{5-\sqrt2-2\sqrt3}{12},\qquad E_1:=E_{[0,1]}(f)=\frac{1-3\sqrt2+2\sqrt3}{180} であり、e1=1.01404…×10−2e_1=1.01404\ldots\times10^{-2}、E1=1.23033…×10−3E_1=1.23033\ldots\times10^{-3}である。任意のβ∈(0,1]\beta\in(0,1]についてE[0,β](f)/(∫0βf−S[0,β](2)(f))=E1/e1=0.12133…E_{[0,\beta]}(f)\big/\bigl(\int_0^\beta f-S^{(2)}_{[0,\beta]}(f)\bigr)=E_1/e_1=0.12133\ldotsであり、区間を00へ縮めてもこの比は11に近づかない。
  2. 0<τ<E10<\tau<E_1とし、推定による判定を用い、D\mathcal Dを[0,1][0,1]のすべての閉部分区間、nmax⁡n_{\max}を十分大きくとる。[0,1][0,1]からdd回の二等分で得られる区間[0,2−d][0,2^{-d}]は2−3d/2E1≤τ2−d2^{-3d/2}E_1\le\tau2^{-d}、すなわち2−d/2E1≤τ2^{-d/2}E_1\le\tauのとき判定を満たす。区間[0,2−d][0,2^{-d}]が判定を満たさなければ、次に[0,2−d−1][0,2^{-d-1}]が処理される。τ<E1\tau<E_1から[0,1][0,1]は判定を満たさないので、判定を満たす最初の区間[0,β][0,\beta]はβ<1\beta<1であり、β1/2E1≤τ<(2β)1/2E1\beta^{1/2}E_1\le\tau<(2\beta)^{1/2}E_1を満たす。その真の誤差は β3/2e1=e1E1β1/2E1⋅β>e12 E1τβ=5.827…⋅τβ\beta^{3/2}e_1=\frac{e_1}{E_1}\beta^{1/2}E_1\cdot\beta>\frac{e_1}{\sqrt2\,E_1}\tau\beta=5.827\ldots\cdot\tau\beta であり、この区間に長さに比例して割り当てた許容誤差τβ\tau\betaを超える。τ=10−6\tau=10^{-6}ではβ=2−21\beta=2^{-21}であり、真の誤差はτβ\tau\betaの7.002…7.002\ldots倍である。この実行は5050桁の十進演算で評価回数105105、∣K∣=26\lvert\mathcal K\rvert=26で受理により停止し、全体の誤差は∫01f−Q=2.748…×10−7\int_0^1f-Q=2.748\ldots\times10^{-7}である。
  3. 置換x=t2x=t^2により∫01x dx=∫012t2 dt\int_0^1\sqrt x\,dx=\int_0^12t^2\,dtである。被積分関数2t22t^2はP2\mathcal P_2に属するから、§E20.20 命題 1.3 (4)によりS[0,1](1)=S[0,1](2)=2/3S^{(1)}_{[0,1]}=S^{(2)}_{[0,1]}=2/3、E[0,1]=0E_{[0,1]}=0であり、適応 Simpson 法は55回の評価で[0,1][0,1]を受理してQ=2/3Q=2/3を出力する。同じ置換は、[0,1][0,1]上でC4C^4級のuuに対して∫01x u(x) dx=∫012t2u(t2) dt\int_0^1\sqrt x\,u(x)\,dx=\int_0^12t^2u(t^2)\,dtを与え、右辺の被積分関数は[0,1][0,1]上でC4C^4級である。

7 演習

問題 7.1.命題 4.3の証明を完成させよ。

解答.

α,β∈F\alpha,\beta\in Fであるから∣z∣≤max⁡{∣α∣,∣β∣}≤Nmax⁡\lvert z\rvert\le\max\{\lvert\alpha\rvert,\lvert\beta\rvert\}\le N_{\max}であり、§E20.1 定義 2.1によりfl⁡(z)\operatorname{fl}(z)はzzの最近接点として定まる。y∈Fy\in Fがy<αy<\alphaを満たすならば∣y−z∣=z−y>z−α=∣α−z∣\lvert y-z\rvert=z-y>z-\alpha=\lvert\alpha-z\rvertであり、yyはzzの最近接点でない。y>βy>\betaを満たすy∈Fy\in Fも同様に∣y−z∣>∣β−z∣\lvert y-z\rvert>\lvert\beta-z\rvertを満たし、最近接点でない。(α,β)(\alpha,\beta)にFFの元は無いから、fl⁡(z)∈{α,β}\operatorname{fl}(z)\in\{\alpha,\beta\}である。後半の主張は、(α,β)(\alpha,\beta)にFFの元が無いという仮定そのものである。▨

問題 7.2.a<ba<bを実数、f ⁣:[a,b]→Rf\colon[a,b]\to\Rを関数、τ>0\tau>0、M4>0M_4>0とし、上界による判定を定数関数B≡M4B\equiv M_4で用いる。λ\lambda、D\mathcal D、nmax⁡n_{\max}は命題 4.1の仮定を満たすとする。ddをM4((b−a)2−d)4≤46080τ/(b−a)M_4\bigl((b-a)2^{-d}\bigr)^4\le46080\tau/(b-a)を満たす最小の整数d≥0d\ge0とする。

  1. K\mathcal Kは、[a,b][a,b]を長さ(b−a)2−d(b-a)2^{-d}の2d2^d個の区間に等分したものであり、QQはh=(b−a)2−d−2h=(b-a)2^{-d-2}の複合 Simpson 則Sh(f)S_h(f)に等しいことを示せ。
  2. 評価回数は2d+2+12^{d+2}+1であり、d≥1d\ge1ならば8(b−a)/λ+18(b-a)/\lambda+1より小さいことを示せ。
解答.

命題 4.1により終了理由は「受理」であり、K=A\mathcal K=\mathcal Aである。[a,b][a,b]からjj回の二等分で得られる区間JJは∣J∣=(b−a)2−j|J|=(b-a)2^{-j}を満たし、判定の不等式M4∣J∣4≤46080τ/(b−a)M_4|J|^4\le46080\tau/(b-a)の左辺はjjについて狭義単調減少であるから、JJが判定を満たすこととj≥dj\ge dは同値である。j<dj<dの区間は判定を満たさず、命題 4.1の証明によりそれらは二等分される。j=dj=dの区間は判定を満たしてA\mathcal Aに入り、二等分されない。したがって手続きに現れる区間はj≤dj\le dのものであり、命題 3.3 (3)によりK\mathcal Kは[a,b][a,b]の分割をなすから、K\mathcal Kはj=dj=dの2d2^d個の区間の全体である。これらは[a,b][a,b]を長さ(b−a)2−d(b-a)2^{-d}に等分した区間である。h:=(b−a)2−d−2h:=(b-a)2^{-d-2}、xl:=a+lhx_l:=a+lhと置くと、K=[x4r,x4r+4]K=[x_{4r},x_{4r+4}]についてSK(2)(f)=S[x4r,x4r+2](f)+S[x4r+2,x4r+4](f)S^{(2)}_K(f)=S_{[x_{4r},x_{4r+2}]}(f)+S_{[x_{4r+2},x_{4r+4}]}(f)であり、rrについて和をとると§E20.20 定義 1.1のN=2d+2N=2^{d+2}の複合 Simpson 則Sh(f)S_h(f)になる。これで(1)は示された。

命題 3.3 (3)により評価回数は4⋅2d+1=2d+2+14\cdot2^d+1=2^{d+2}+1である。d≥1d\ge1ならばddの最小性からd−1d-1回の二等分で得られる区間は判定を満たさず、(b−a)2−d+1>λ(b-a)2^{-d+1}>\lambdaである。したがって2d<2(b−a)/λ2^d<2(b-a)/\lambdaであり、2d+2+1<8(b−a)/λ+12^{d+2}+1<8(b-a)/\lambda+1である。これで(2)は示された。▨

前提記事