1 補間多項式
定義 1.1.n∈N≥0とし、実係数で次数がn以下の多項式の全体をPnと書き、その元をR上の関数とみなす。相異なる実数x0,…,xnと、これらを含む集合S⊆R上の関数f:S→Rをとる。
- p∈Pnがp(xi)=f(xi)(0≤i≤n)を満たすとき、pをx0,…,xnにおけるfの 補間多項式 (interpolating polynomial) といい、x0,…,xnを 節点 (node) という。実数y0,…,ynが与えられたとき、f(xi):=yiで定まる{x0,…,xn}上の関数fの補間多項式を、データ(xi,yi)の補間多項式という。
- 0≤k≤n+1に対してωk(x):=∏j=0k−1(x−xj)(ω0:=1)と置く。ωn+1を 節点多項式 (node polynomial) という。
- 0≤i≤nに対してℓi(x):=∏j=i(x−xj)/(xi−xj)(n=0のときℓ0:=1)と置く。ℓ0,…,ℓnを Lagrange 基底 (Lagrange basis) といい、∑i=0nf(xi)ℓiをfの Lagrange 形式 (Lagrange form) という。
- 0≤i≤i+k≤nに対して、差商 (divided difference)f[xi,…,xi+k]をkに関して帰納的にf[xi]:=f(xi)、
f[xi,…,xi+k]:=xi+k−xif[xi+1,…,xi+k]−f[xi,…,xi+k−1](k≥1)
で定める。
- Nn:=∑k=0nf[x0,…,xk]ωkをfの Newton 形式 (Newton form) という。x0,…,xnのいずれとも異なるxn+1∈Sを節点に加えると、Newton 形式はNn+1=Nn+f[x0,…,xn+1]ωn+1となり、新たに計算する差商はf[xn+1−k,…,xn+1](0≤k≤n+1)である。
補題 1.2.r∈N≥1とし、相異なる実数a1,…,arとk1,…,kr∈N≥1をとり、K:=∑i=1rkiと置く。実係数多項式pが、1≤i≤rと0≤j≤ki−1を満たすすべてのi,jについてp(j)(ai)=0を満たすとする。
- 実係数多項式qが存在してp=q∏i=1r(x−ai)kiが成り立つ。
- m∈N≥0がm<Kを満たし、p∈Pmならば、p=0である。
- p∈PKならば、pのxKの係数をcとしてp=c∏i=1r(x−ai)kiである。
定理 1.3.n∈N≥0とし、実数x0,…,xnをとり、V:=(xij)0≤i,j≤nと置く。次の三条件は同値である。
- x0,…,xnは相異なる。
- 任意の(y0,…,yn)∈Rn+1に対して、p(xi)=yi(0≤i≤n)を満たすp∈Pnがただ一つ存在する。
- Vは正則である。
これらの条件が成り立つとき、(2)のpはp=∑i=0nyiℓiである。
証明.E:Pn→Rn+1をE(p):=(p(x0),…,p(xn))で定める。c=(c0,…,cn)∈Rn+1に対してE(∑j=0ncjxj)=Vcである。補題 1.2 (2)により∑jcjxjが零関数ならばc=0であるから、c↦∑jcjxjはRn+1からPnへの線形同型である。したがってEが全単射であることとVが正則であることは同値であり、(2)⇔(3)が成り立つ。
(1)⇒(2)を示す。ℓiの分子はj=iであるxjで0になり、xiで分母に等しいので、ℓi(xj)はj=iのとき1、j=iのとき0である。ℓi∈Pnであるから、p:=∑iyiℓi∈Pnはp(xj)=yjを満たす。p,p~∈Pnがともに条件を満たせば、p−p~∈Pnは相異なるn+1点x0,…,xnで0になるので、補題 1.2 (2)をki=1、K=n+1、m=nとして適用してp=p~を得る。
(2)⇒(1)を示す。i=jでxi=xjならば、yi=0、yj=1であるデータに対してp(xi)=0とp(xj)=1は両立しないので、(2)は成り立たない。▨
命題 1.4.n∈N≥0とし、相異なる実数x0,…,xnと、これらを含む集合上の関数fをとる。0≤i≤i+k≤nに対して、xi,…,xi+kにおけるfのPkの補間多項式をPi,kとする。
- Pi,kのxkの係数は
f[xi,…,xi+k]=l=i∑i+k∏i≤m≤i+k, m=l(xl−xm)f(xl)
に等しい。
- 0≤k≤nに対してP0,k=∑j=0kf[x0,…,xj]ωjである。特に、fの Newton 形式と Lagrange 形式は同じ多項式P0,nである。
証明.Pi,kのxkの係数をci,kと置く。
(1)を示す。定理 1.3を節点xi,…,xi+kに適用するとPi,k=∑l=ii+kf(xl)∏m=l(x−xm)/(xl−xm)(積はi≤m≤i+k、m=lにわたる)であり、第l項のxkの係数はf(xl)/∏m=l(xl−xm)であるから、ci,kは主張の和に等しい。ci,k=f[xi,…,xi+k]をkに関する帰納法で示す。k=0ではPi,0=f(xi)=f[xi]である。k≥1とし、k−1で等式が成り立つとする。
Q(x):=xi+k−xi(x−xi)Pi+1,k−1(x)−(x−xi+k)Pi,k−1(x)と置くとQ∈Pkである。Q(xi)=Pi,k−1(xi)=f(xi)、Q(xi+k)=Pi+1,k−1(xi+k)=f(xi+k)であり、i<l<i+kならばPi+1,k−1(xl)=Pi,k−1(xl)=f(xl)であるからQ(xl)=f(xl)である。定理 1.3の一意性によりQ=Pi,kであり、xkの係数を比べて
ci,k=xi+k−xici+1,k−1−ci,k−1=xi+k−xif[xi+1,…,xi+k]−f[xi,…,xi+k−1]=f[xi,…,xi+k]を得る。
(2)を示す。1≤k≤nとする。R:=P0,k−P0,k−1∈Pkは相異なるk点x0,…,xk−1で0になる。P0,k−1∈Pk−1であるから、Rのxkの係数はc0,k=f[x0,…,xk]である。補題 1.2 (3)をki=1、K=kとして適用してR=f[x0,…,xk]ωkを得る。P0,0=f[x0]ω0であるから、kについて和をとってP0,k=∑j=0kf[x0,…,xj]ωjを得る。k=nのとき右辺は Newton 形式であり、定理 1.3によりP0,n=∑if(xi)ℓiである。▨
例 1.5.f(x)=2xと節点0,1,2をとる。差商はf[0]=1、f[1]=2、f[2]=4、f[0,1]=1、f[1,2]=2、f[0,1,2]=1/2であり、Newton 形式はN2(x)=1+x+x(x−1)/2である。節点3を加えると、新たに計算する差商はf[3]=8、f[2,3]=4、f[1,2,3]=1、f[0,1,2,3]=1/6であり、N3(x)=N2(x)+x(x−1)(x−2)/6である。N3(3)=1+3+3+1=8である。
Lagrange 形式では、節点3を加えるとℓ0,ℓ1,ℓ2のそれぞれに因子(x−3)/(xi−3)が掛かり、すべての項が変わる。
2 補間の剰余
補題 2.1.a<bを実数、m∈N≥1とし、g:[a,b]→RをCm級の関数とする。r≥2を整数、t1<⋯<trを[a,b]の点とし、整数k1,…,krが1≤ki≤mと∑i=1rki≥m+1を満たすとする。1≤i≤rと0≤j≤ki−1を満たすすべてのi,jについてg(j)(ti)=0ならば、g(m)(ξ)=0を満たすξ∈(t1,tr)が存在する。
証明.mに関する帰納法で示す。m=1ならばg(t1)=g(t2)=0であり、gは[t1,t2]で連続かつ(t1,t2)で微分可能であるから、§D1.14 定理 2.2によりg′(ξ)=0を満たすξ∈(t1,t2)⊆(t1,tr)が存在する。
m≥2とし、m−1で主張が成り立つとする。各1≤i≤r−1について、§D1.14 定理 2.2を[ti,ti+1]上のgに適用して、g′(si)=0を満たすsi∈(ti,ti+1)をとる。s1,…,sr−1と、ki≥2を満たすtiの全体を合わせた集合をZとし、siに重複度1、tiに重複度ki−1を与える。Zの点は相異なり、[t1,tr]に属する。ki≥2であるtiでは0≤j≤ki−2に対して(g′)(j)(ti)=g(j+1)(ti)=0であるから、Cm−1級の関数g′はZの各点で重複度未満の階数の導関数がすべて0である。重複度は1以上m−1以下であり、その和は(r−1)+∑ki≥2(ki−1)=∑i=1rki−1≥mである。r≥3ならばs1=s2であり、r=2ならばk1+k2≥m+1≥3からk1≥2またはk2≥2であるから、Zは二点以上を含む。帰納法の仮定をg′とZに適用して、Zの最小点と最大点の間の開区間に(g′)(m−1)(ξ)=0を満たすξを得る。この開区間は(t1,tr)に含まれ、g(m)(ξ)=0である。▨
定理 2.2.a<bを実数、n∈N≥0とし、f:[a,b]→RをCn+1級の関数、x0,…,xnを[a,b]の相異なる点、pをx0,…,xnにおけるfの補間多項式とする。
- 任意のx∈[a,b]に対して
f(x)−p(x)=(n+1)!f(n+1)(ξ)ωn+1(x)
を満たすξ∈(a,b)が存在する。xが節点のとき両辺は0である。n=0のとき、この等式はf(x)−f(x0)=f′(ξ)(x−x0)である。
- 任意のx∈[a,b]に対して
∣f(x)−p(x)∣≤(n+1)!maxt∈[a,b]∣f(n+1)(t)∣∣ωn+1(x)∣
が成り立つ。
証明.(1)を示す。xが節点ならばf(x)=p(x)、ωn+1(x)=0であり、任意のξ∈(a,b)で等式が成り立つ。xが節点でないとし、K:=(f(x)−p(x))/ωn+1(x)、g(t):=f(t)−p(t)−Kωn+1(t)(t∈[a,b])と置く。gはCn+1級であり、相異なるn+2点x0,…,xn,xで0になる。補題 2.1をm=n+1、すべての重複度を1として適用して、これらn+2点の最小点と最大点の間の開区間にg(n+1)(ξ)=0を満たすξを得る。この開区間は(a,b)に含まれる。p∈Pnからp(n+1)=0であり、ωn+1はxn+1の係数が1のn+1次多項式であるからωn+1(n+1)=(n+1)!である。したがって0=g(n+1)(ξ)=f(n+1)(ξ)−K(n+1)!であり、K=f(n+1)(ξ)/(n+1)!をKの定義に代入して等式を得る。
(2)は(1)から従う。▨
3 Lebesgue 定数
定義 3.1.a<bを実数とし、C([a,b])を[a,b]上の連続な実数値関数の全体、g∈C([a,b])に対して∥g∥∞:=maxt∈[a,b]∣g(t)∣とする。n∈N≥0とし、x0,…,xnを[a,b]の相異なる点、ℓ0,…,ℓnをその Lagrange 基底とする。Pnの元は[a,b]への制限によってC([a,b])の元とみなす。
- Inf:=∑i=0nf(xi)ℓiで定まる写像In:C([a,b])→C([a,b])を 補間作用素 (interpolation operator) という。
- λn(x):=∑i=0n∣ℓi(x)∣を Lebesgue 関数 (Lebesgue function) といい、Λn:=maxx∈[a,b]λn(x)を Lebesgue 定数 (Lebesgue constant) という。
- f∈C([a,b])に対してEn(f):=infq∈Pn∥f−q∥∞を、fのPnによる 最良一様近似誤差 (error of best uniform approximation) という。
定理 3.2.a<b、n∈N≥0とし、[a,b]の相異なる点x0,…,xnの補間作用素をIn、Lebesgue 関数をλn、Lebesgue 定数をΛnとする。
- Inは線形であり、任意のq∈Pnに対してInq=qである。
- sup{∥Inf∥∞∣f∈C([a,b]), ∥f∥∞≤1}=Λnである。
- δ≥0とし、実数yi,y~iが∣y~i−yi∣≤δ(0≤i≤n)を満たすとする。データ(xi,yi)と(xi,y~i)の補間多項式をそれぞれp,p~とすると、∥p~−p∥∞≤Λnδである。
- 任意のf∈C([a,b])に対して∥f−Inf∥∞≤(1+Λn)En(f)である。
証明.(1)を示す。各f↦f(xi)は線形であるからInは線形である。q∈Pnは節点x0,…,xnにおける自身の補間多項式であるから、定理 1.3によりInq=∑iq(xi)ℓi=qである。
(2)を示す。∥f∥∞≤1ならば、各x∈[a,b]で∣Inf(x)∣≤∑i∣f(xi)∣∣ℓi(x)∣≤λn(x)≤Λnである。λnは連続であるから、λn(x∗)=Λnを満たすx∗∈[a,b]が存在する。σi∈{−1,0,1}をℓi(x∗)の符号とし、g:[a,b]→Rを、各節点xiで値σiをとり、隣り合う二つの節点の間で一次式、最小の節点より左と最大の節点より右で定数である関数とする。g∈C([a,b])、∥g∥∞≤1であり、Ing(x∗)=∑iσiℓi(x∗)=Λnである。
(3)を示す。定理 1.3によりp~−p=∑i(y~i−yi)ℓiであるから、各x∈[a,b]で∣p~(x)−p(x)∣≤δλn(x)≤Λnδである。
(4)を示す。q∈Pnを任意にとる。(1)によりf−Inf=(f−q)−In(f−q)であり、(2)により∥f−Inf∥∞≤∥f−q∥∞+Λn∥f−q∥∞である。qについて下限をとって主張を得る。▨
4 重心形式
定義 4.1.n∈N≥0とし、相異なる実数x0,…,xnと実数y0,…,ynをとる。0≤i≤nに対してwi:=1/∏j=i(xi−xj)(n=0のときw0:=1)を 重心の重み (barycentric weight) という。節点でないx∈Rに対して
A(x):=i=0∑nx−xiwiyi,D(x):=i=0∑nx−xiwiと置く。x=xiのときyiを、xが節点でなくD(x)=0のときA(x)/D(x)を与える式を、データ(xi,yi)の 重心形式 (barycentric formula) という。
証明.x=xiであるから∏j=i(x−xj)=ωn+1(x)/(x−xi)であり、ℓi(x)=wi∏j=i(x−xj)から(1)を得る。定数関数1∈Pnはデータ(xi,1)の補間多項式であるから、定理 1.3により∑iℓi=1であり、(1)と合わせて1=ωn+1(x)D(x)を得る。定理 1.3と(1)によりp(x)=∑iyiℓi(x)=ωn+1(x)A(x)であり、(2)によりωn+1(x)=1/D(x)である。節点xiではp(xi)=yiである。▨
補題 4.3. 実数A,A^,D,D^,α,δが∣A^−A∣≤αと∣D^−D∣≤δ<∣D∣を満たすならば、D^=0であり、
D^A^−DA≤∣D∣−δα+∣A/D∣δが成り立つ。
証明.∣D^∣≥∣D∣−∣D^−D∣≥∣D∣−δ>0である。
D^A^−DA=D^(A^−A)−(A/D)(D^−D)であるから、分子の絶対値はα+∣A/D∣δ以下、分母の絶対値は∣D∣−δ以上である。▨
定理 4.4.Fを浮動小数点数系、uをその単位丸め誤差、flをFの最近接丸めとする。n∈N≥0とし、相異なるx0,…,xn∈F、零でないw0,…,wn∈F、y0,…,yn∈F、どのxiとも異なるx∈Fをとり、
A:=i=0∑nx−xiwiyi,D:=i=0∑nx−xiwi,MA:=i=0∑n∣x−xi∣∣wiyi∣,MD:=i=0∑n∣x−xi∣∣wi∣と置く。Tを{1,…,n+1}上の加算木とし、z=(z0,…,zn)∈Fn+1のTによる和の計算値vT(z)は、ziを第i+1成分として定める。整数d≥0が(d+3)u<1を満たし、すべての0≤i≤nについてdT(i+1)≤dであるとし、0≤k≤d+3に対してγk:=ku/(1−ku)と置く。
- 各iについて∣x−xi∣≤Nmaxならば、si:=fl(x−xi)は0でない。
- さらに、各iについて厳密な商wi/siが正規範囲にあり、qi:=fl(wi/si)とyiの厳密な積が0であるか正規範囲にあるとし、ai:=fl(qiyi)と置く。a=(a0,…,an)とq=(q0,…,qn)のTによる和の各加算の厳密な結果の絶対値がNmax以下であるとする。このときA^:=vT(a)とD^:=vT(q)は
∣A^−A∣≤γd+3MA,∣D^−D∣≤γd+2MD
を満たす。
- さらにγd+2MD<∣D∣ならばD^=0である。厳密な商A^/D^が0であるか正規範囲にあるならば、r:=fl(A^/D^)は
r−DA≤(1+u)e+uDA,e:=∣D∣−γd+2MDγd+3MA+∣A/D∣γd+2MD
を満たす。
- w0,…,wnがx0,…,xnの重心の重みであるとし、pをデータ(xi,yi)の補間多項式、λn(x):=∑i∣ℓi(x)∣とする。このときA/D=p(x)、MD/∣D∣=λn(x)、MA/∣D∣=∑i∣yiℓi(x)∣である。特に(3)の条件γd+2MD<∣D∣はγd+2λn(x)<1と同値であり、
e=1−γd+2λn(x)γd+3∑i∣yiℓi(x)∣+γd+2λn(x)∣p(x)∣
である。
証明.(1)を示す。−xi∈Fであり、x−xi=x+(−xi)であるから、§E20.1 系 3.3により∣δi,1∣≤uを満たす実数δi,1が存在してsi=(x−xi)(1+δi,1)である。x=xiかつu<1であるからsi=0である。
(2)を示す。§E20.1 系 3.2 (2)によりqi=(wi/si)(1+δi,2)、∣δi,2∣≤uである。qiyiが0ならば§E20.1 系 3.2 (1)により、正規範囲にあるならば§E20.1 系 3.2 (2)により、ai=qiyi(1+δi,3)、∣δi,3∣≤uである。したがって
qi=x−xiwi(1+δi,1)−1(1+δi,2),ai=x−xiwiyi(1+δi,1)−1(1+δi,2)(1+δi,3)である。§E20.3 定理 1.3 (1)により、vT(a)とvT(q)の第i項には絶対値がu以下のdT(i+1)個の因子1+δがさらに掛かる。したがってA^の第i項はwiyi/(x−xi)にdT(i+1)+3≤d+3個の因子(1+δ)±1を掛けたものであり、D^の第i項はwi/(x−xi)にdT(i+1)+2≤d+2個の因子を掛けたものである。§E20.1 補題 4.1とk↦ku/(1−ku)の単調性により、∣θi∣≤γd+3、∣θi′∣≤γd+2を満たす実数θi,θi′が存在して
A^=i=0∑nx−xiwiyi(1+θi),D^=i=0∑nx−xiwi(1+θi′)が成り立ち、∣A^−A∣≤γd+3MA、∣D^−D∣≤γd+2MDである。
(3)を示す。補題 4.3をα=γd+3MA、δ=γd+2MDとして適用すると、D^=0かつ∣A^/D^−A/D∣≤eである。A^/D^=0ならば§E20.1 系 3.2 (1)によりr=A^/D^であり、A^/D^が正規範囲にあるならば§E20.1 系 3.2 (2)により∣r−A^/D^∣≤u∣A^/D^∣≤u(∣A/D∣+e)である。いずれの場合も∣r−A/D∣≤e+u(∣A/D∣+e)である。
(4)を示す。命題 4.2によりℓi(x)=ωn+1(x)wi/(x−xi)、D=1/ωn+1(x)、A/D=p(x)であるから、∣ℓi(x)∣=(∣wi∣/∣x−xi∣)/∣D∣である。iについて和をとってMD/∣D∣=λn(x)とMA/∣D∣=∑i∣yiℓi(x)∣を得る。eの分子と分母を∣D∣で割ってeの式を得る。▨
例 4.5.F=F(2,53,−1022,1023)、flを最近接偶数丸め、u=2−53とする。節点(x0,x1,x2)=(−1,0,1)の重心の重みは(w0,w1,w2)=(1/2,−1,1/2)であり、f(x)=x2のデータ(y0,y1,y2)=(1,0,1)の補間多項式はp(x)=x2である。ℓ0(x)=x(x−1)/2、ℓ1(x)=1−x2、ℓ2(x)=x(x+1)/2であるから、0<x<1では∑i∣yiℓi(x)∣=x、λ2(x)=1+x−x2である。評価点x:=3⋅2−20をとり、Tを逐次和R3とするとd=2である。§E20.1 補題 1.2 (1)によりx+1、x、x−1はFに属するのでsi=x−xiである。有理数の演算で検算すると、q0+q2=−3⋅2−20はFに属し、A^=−xである。厳密な値はA=−x/(1−x2)であるからA^=A(1−x2)である。計算値はr=x2(1−x2)であり、相対誤差はx2=9⋅2−40≈8.19×10−12=73728uである。定理 4.4の仮定はすべて満たされ、γ4λ2(x)<1である。定理 4.4 (3)の右辺をp(x)で割った値は約1.94×10−10である。yを変数とする線形汎関数y↦∑iyiℓi(x)の成分ごとの相対条件数は、§E20.3 補題 2.1 (1)により∑i∣yiℓi(x)∣/∣p(x)∣=1/x=220/3≈3.50×105であり、これとuの積は約3.88×10−11である。相対誤差x2はこの積より小さい。
5 Chebyshev 節点
定義 5.1. 以下、k∈N≥0に対してTkは「共役勾配法」のk次の Chebyshev 多項式(§E20.11 定義 3.1)を表す。n∈N≥0に対して、cj:=cos((2j+1)π/(2n+2))(0≤j≤n)を[−1,1]のn+1個の Chebyshev 節点 (Chebyshev nodes) という。実数a<bに対して、(a+b)/2+(b−a)cj/2(0≤j≤n)を[a,b]のn+1個の Chebyshev 節点という。
命題 5.2.k∈N≥0とする。
- k≥1ならば、Tkの次数はkであり、xkの係数は2k−1である。
- k≥1ならば、maxx∈[−1,1]∣Tk(x)∣=1であり、0≤j≤kに対してTk(cos(jπ/k))=(−1)jである。
- k≥1ならば、cos((2j+1)π/(2k))(0≤j≤k−1)は(−1,1)の相異なる点であり、Tk=2k−1∏j=0k−1(x−cos((2j+1)π/(2k)))である。特に、n∈N≥0に対して[−1,1]のn+1個の Chebyshev 節点c0,…,cnはTn+1の零点の全体であり、2−nTn+1=∏j=0n(x−cj)である。
証明.(1)を示す。T1=xである。k≥1についてTkの次数がk、xkの係数が2k−1であり、Tk−1の次数がk−1以下であれば、Tk+1=2xTk−Tk−1の次数はk+1、xk+1の係数は2kである。
(2)を示す。§E20.11 補題 3.2 (3)により[−1,1]上で∣Tk∣≤1である。§E20.11 補題 3.2 (2)によりTk(cos(jπ/k))=cos(jπ)=(−1)jであり、j=0で値1をとる。
(3)を示す。θj:=(2j+1)π/(2k)(0≤j≤k−1)は(0,π)の狭義単調増加な点列であり、cosは[0,π]で狭義単調減少であるから、cosθjは(−1,1)の相異なる点である。§E20.11 補題 3.2 (2)によりTk(cosθj)=cos((2j+1)π/2)=0である。(1)と補題 1.2 (3)をki=1、K=kとして適用して、Tk=2k−1∏j(x−cosθj)を得る。この積表示からTkの零点はcosθjに限る。k=n+1とするとcosθj=cjであり、最後の主張を得る。▨
定理 5.3.n∈N≥0とし、qをxn+1の係数が1であるn+1次の実係数多項式とする。このときmaxx∈[−1,1]∣q(x)∣≥2−nである。q=2−nTn+1は等号を満たし、等号を満たすqは2−nTn+1に限る。
証明.ηj:=cos(jπ/(n+1))(0≤j≤n+1)と置くと、cosは[0,π]で狭義単調減少であるからη0>η1>⋯>ηn+1である。vj:=1/∏k=j(ηj−ηk)と置く。分母の因子のうち負であるものはk<jのj個であるから、vjの符号は(−1)jである。任意のs∈Pn+1は節点η0,…,ηn+1における自身の補間多項式であるから、命題 1.4 (1)により
(s の xn+1 の係数)=j=0∑n+1vjs(ηj)が成り立つ。s=2−nTn+1とすると、命題 5.2 (1)により左辺は1、命題 5.2 (2)によりs(ηj)=2−n(−1)jであるから、1=2−n∑j∣vj∣である。s=qとすると
1=j=0∑n+1vjq(ηj)≤j=0∑n+1∣vj∣∣q(ηj)∣≤2nx∈[−1,1]max∣q(x)∣であり、下界を得る。命題 5.2 (2)によりmaxx∈[−1,1]∣2−nTn+1(x)∣=2−nである。maxx∈[−1,1]∣q(x)∣=2−nとすると、各jでvjq(ηj)≤∣vj∣2−nであり、その和は2−n∑j∣vj∣=1に等しいので、各jでvjq(ηj)=∣vj∣2−n、すなわちq(ηj)=(−1)j2−n=2−nTn+1(ηj)である。q−2−nTn+1∈Pn+1は相異なるn+2点で0になるので、補題 1.2 (2)によりq=2−nTn+1である。▨
系 5.4.n∈N≥0とし、a<bを実数とする。
- 任意の実数x0,…,xnに対してmaxx∈[−1,1]∏j=0n(x−xj)≥2−nであり、等号が成り立つのは(x0,…,xn)が[−1,1]の Chebyshev 節点c0,…,cnの並べ替えであるときに限る。
- 任意の実数x~0,…,x~nに対してmaxx∈[a,b]∏j=0n(x−x~j)≥2((b−a)/4)n+1であり、x~0,…,x~nが[a,b]の Chebyshev 節点であるとき等号が成り立つ。
- f:[a,b]→RがCn+1級であり、pが[a,b]の Chebyshev 節点におけるfの補間多項式であるならば、
x∈[a,b]max∣f(x)−p(x)∣≤(n+1)!2(4b−a)n+1t∈[a,b]max∣f(n+1)(t)∣
である。[a,b]=[−1,1]のとき、右辺はmaxt∈[−1,1]∣f(n+1)(t)∣/(2n(n+1)!)である。
証明.(1)を示す。∏j(x−xj)はxn+1の係数が1のn+1次多項式であるから、定理 5.3により下界が成り立ち、等号は∏j(x−xj)=2−nTn+1のときに限る。命題 5.2 (3)により2−nTn+1=∏j(x−cj)である。この等式が成り立てば、各ckは∏j(x−xj)の零点であるからあるxjに等しく、相異なるn+1個のckがn+1個のxjに現れるので、(x0,…,xn)は(c0,…,cn)の並べ替えである。逆に並べ替えならば∏j(x−xj)=2−nTn+1である。
(2)を示す。ϕ(t):=(a+b)/2+(b−a)t/2は[−1,1]から[a,b]への全単射であり、tj:=ϕ−1(x~j)と置くと∏j(ϕ(t)−x~j)=((b−a)/2)n+1∏j(t−tj)である。(1)により[a,b]上の最大値は((b−a)/2)n+12−n=2((b−a)/4)n+1以上であり、tj=cjのとき等号が成り立つ。
(3)を示す。[a,b]の Chebyshev 節点は(a,b)の相異なる点である。定理 2.2 (2)と(2)から評価を得る。▨
例 5.5.[a,b]=[−1,1]、n=0、f(x)=x2とする。Chebyshev 節点はc0=cos(π/2)=0であり、補間多項式はp=f(0)=0、maxx∈[−1,1]∣f(x)−p(x)∣=1である。節点x0=1/2では補間多項式は1/2であり、maxx∈[−1,1]∣x2−1/2∣=1/2である。系 5.4 (1)が最小化するのはmaxx∈[−1,1]∣x−x0∣であり、その値はx0=0で1、x0=1/2で1+1/2である。
6 等間隔節点と Runge の例
命題 6.1.a<bを実数、n∈N≥1とし、h:=(b−a)/n、xj:=a+jh(0≤j≤n)とする。この節点の Lebesgue 関数λnと Lebesgue 定数Λnは
Λn≥λn(a+2h)=n!1j=0∏nj−21i=0∑n(in)∣i−21∣1≥4n3/22nを満たす。特にn→∞のときΛn→∞である。
例 6.3.f(x):=1/(1+25x2)を[−1,1]で考え、n∈{11,21}について、等間隔節点−1+2j/n(0≤j≤n)における補間多項式をpneq、Chebyshev 節点における補間多項式をpnchとする。
等間隔節点、点x∗:=1−1/n、fの節点とx∗での値はすべて有理数であり、f(x∗)−pneq(x∗)は有理数の演算で厳密に計算することができる。その値はn=11で−0.4525…、n=21で11.90…であり、絶対値は∥f−pneq∥∞の下界である。
50 桁の十進演算で、[−1,1]を20000等分した格子点上の∣f−p∣の最大値を求め、最大点の両隣の格子点の間で三分探索によって精密化した値は次のとおりである。これは観察であり、上界としては証明していない。
| n |
等間隔節点 |
Chebyshev 節点 |
| 11 |
5.568×10−1 |
1.828×10−1 |
| 21 |
1.760×101 |
2.527×10−2 |
fは∣x∣<1/5で冪級数∑j≥0(−25x2)jに等しいので、偶数kに対してf(k)(0)=k!(−25)k/2である。nが奇数ならばmaxt∈[−1,1]∣f(n+1)(t)∣≥(n+1)!5n+1であり、系 5.4 (3)の右辺は5n+1/2n以上である。この値はn=11で約1.19×105、n=21で約1.14×109であり、表の Chebyshev 節点の誤差の105倍、1010倍を超える。
7 Hermite 補間
定義 7.1.n∈N≥1とし、相異なる実数x1,…,xnと実数y1,…,yn、d1,…,dnをとる。H∈P2n−1がH(xi)=yi、H′(xi)=di(1≤i≤n)を満たすとき、Hをデータ(xi,yi,di)の Hermite 補間多項式 (Hermite interpolating polynomial) という。fが各xiで微分可能な関数でありyi=f(xi)、di=f′(xi)であるとき、Hをx1,…,xnにおけるfの Hermite 補間多項式という。
定理 7.2.n∈N≥1とし、相異なる実数x1,…,xnと実数y1,…,yn、d1,…,dnをとる。1≤i≤nに対してLi(x):=∏j=i(x−xj)/(xi−xj)(n=1のときL1:=1)と置く。データ(xi,yi,di)の Hermite 補間多項式はただ一つ存在し、
H=i=1∑n(yi(1−2Li′(xi)(x−xi))+di(x−xi))Li2である。
証明.hi:=(1−2Li′(xi)(x−xi))Li2、ki:=(x−xi)Li2と置く。Li∈Pn−1であるからhi,ki∈P2n−1である。j=iならばLi(xj)=0であり、hiとkiは一次式とLi2の積であって、その導関数は一次式の導関数とLi2の積と、一次式と2LiLi′の積の和であるから、hi(xj)=hi′(xj)=ki(xj)=ki′(xj)=0である。Li(xi)=1からhi(xi)=1、ki(xi)=0であり、
hi′(xi)=−2Li′(xi)Li(xi)2+2Li(xi)Li′(xi)=0,ki′(xi)=Li(xi)2=1である。したがってH=∑i(yihi+diki)は Hermite 補間多項式である。H,H~がともにデータ(xi,yi,di)の Hermite 補間多項式ならば、G:=H−H~∈P2n−1は各xiでG(xi)=G′(xi)=0を満たす。補題 1.2 (2)をki=2、K=2n、m=2n−1として適用してG=0を得る。▨
定理 7.3.a<bを実数、n∈N≥1とし、f:[a,b]→RをC2n級の関数、x1,…,xnを[a,b]の相異なる点、Hをx1,…,xnにおけるfの Hermite 補間多項式とする。任意のx∈[a,b]に対して
f(x)−H(x)=(2n)!f(2n)(ξ)i=1∏n(x−xi)2を満たすξ∈(a,b)が存在する。xが節点のとき両辺は0である。
証明.Ω(t):=∏i=1n(t−xi)2と置く。xが節点ならばf(x)=H(x)、Ω(x)=0であり、任意のξ∈(a,b)で等式が成り立つ。xが節点でないとし、K:=(f(x)−H(x))/Ω(x)、g(t):=f(t)−H(t)−KΩ(t)(t∈[a,b])と置く。gはC2n級である。各iについてΩ=(t−xi)2Ri、Ri:=∏j=i(t−xj)2と書けばΩ′=2(t−xi)Ri+(t−xi)2Ri′であるからΩ(xi)=Ω′(xi)=0であり、H(xi)=f(xi)、H′(xi)=f′(xi)と合わせてg(xi)=g′(xi)=0である。またg(x)=0である。相異なるn+1≥2点x1,…,xn,xに重複度2,…,2,1を与えると、重複度は1以上2n以下であり、その和は2n+1である。補題 2.1をm=2nとして適用して、これらn+1点の最小点と最大点の間の開区間にg(2n)(ξ)=0を満たすξを得る。この開区間は(a,b)に含まれる。H∈P2n−1からH(2n)=0であり、Ωはt2nの係数が1の2n次多項式であるからΩ(2n)=(2n)!である。したがって0=g(2n)(ξ)=f(2n)(ξ)−K(2n)!であり、K=f(2n)(ξ)/(2n)!をKの定義に代入して等式を得る。▨
命題 7.4.c∈R、h>0とし、x∈Rに対してt:=(x−c)/hと置き、
φ1(t):=(1−t)2(1+2t),φ2(t):=t2(3−2t),ψ1(t):=t(1−t)2,ψ2(t):=−t2(1−t)とする。
- 実数y1,y2,d1,d2に対して、H(x):=y1φ1(t)+y2φ2(t)+h(d1ψ1(t)+d2ψ2(t))は、節点c,c+hにおけるデータ(c,y1,d1)、(c+h,y2,d2)の Hermite 補間多項式である。
- t∈[0,1]ならば、φ1(t)≥0、φ2(t)≥0、φ1(t)+φ2(t)=1、∣ψ1(t)∣+∣ψ2(t)∣=t(1−t)≤1/4である。
- εy,εd≥0とし、実数y~1,y~2,d~1,d~2が∣y~i−yi∣≤εy、∣d~i−di∣≤εd(i=1,2)を満たすとする。データ(c,y~1,d~1)、(c+h,y~2,d~2)の Hermite 補間多項式H~はmaxx∈[c,c+h]∣H~(x)−H(x)∣≤εy+hεd/4を満たす。
- f:[c,c+h]→RがC4級であり、y1=f(c)、y2=f(c+h)、d1=f′(c)、d2=f′(c+h)ならば、maxx∈[c,c+h]∣f(x)−H(x)∣≤h4maxs∈[c,c+h]∣f(4)(s)∣/384である。
証明.(1)を示す。φ1(0)=φ2(1)=1、φ1(1)=φ2(0)=0、ψ1(0)=ψ1(1)=ψ2(0)=ψ2(1)=0であり、
φ1′(t)=−6t(1−t),φ2′(t)=6t(1−t),ψ1′(t)=(1−t)(1−3t),ψ2′(t)=t(3t−2)からφ1′,φ2′はt=0,1で0、ψ1′(0)=ψ2′(1)=1、ψ1′(1)=ψ2′(0)=0である。dt/dx=1/hであるからH′(x)=(y1φ1′(t)+y2φ2′(t))/h+d1ψ1′(t)+d2ψ2′(t)であり、H(c)=y1、H(c+h)=y2、H′(c)=d1、H′(c+h)=d2である。H∈P3であるから、Hは Hermite 補間多項式であり、定理 7.2によりただ一つである。
(2)を示す。t∈[0,1]では各因子が非負であるからφ1(t),φ2(t)≥0である。φ1(t)=1−3t2+2t3、φ2(t)=3t2−2t3であるから和は1である。∣ψ1(t)∣+∣ψ2(t)∣=t(1−t)2+t2(1−t)=t(1−t)=1/4−(t−1/2)2≤1/4である。
(3)を示す。(1)によりH~(x)−H(x)=∑i(y~i−yi)φi(t)+h∑i(d~i−di)ψi(t)である。x∈[c,c+h]ならばt∈[0,1]であり、(2)により∣H~(x)−H(x)∣≤εy(φ1(t)+φ2(t))+hεd(∣ψ1(t)∣+∣ψ2(t)∣)≤εy+hεd/4である。
(4)を示す。M4:=maxs∈[c,c+h]∣f(4)(s)∣と置く。定理 7.3をn=2、[a,b]=[c,c+h]として適用すると、各x∈[c,c+h]で∣f(x)−H(x)∣≤M4(x−c)2(x−c−h)2/24=M4h4t2(1−t)2/24である。(2)によりt2(1−t)2≤1/16であり、評価を得る。▨
例 7.5.c=0、h=1、f(x)=x4とし、Hを0,1におけるfの Hermite 補間多項式とする。f(4)=24であるから、定理 7.3により[0,1]の各点でf(x)−H(x)=x2(x−1)2である。この値はx=1/2で1/16であり、命題 7.4 (4)の右辺24/384=1/16に等しい。
8 演習
解答.
a∈Rと実係数多項式sに対して、l≥1のときxl−al=(x−a)∑m=0l−1xmal−1−mであるから、s(x)−s(a)=(x−a)s1(x)を満たす実係数多項式s1が存在する。
一点の場合として、k∈N≥1、s(j)(a)=0(0≤j≤k−1)ならばs=(x−a)ks2を満たす実係数多項式s2が存在することを、kに関する帰納法で示す。k=1の場合は上の等式でs(a)=0としたものである。s(j)(a)=0(0≤j≤k)とし、kの場合を用いてs=(x−a)ks2と書く。l<kならば((x−a)k)(l)は(x−a)k−lの定数倍でありaで0になるので、Leibniz の公式により
0=s(k)(a)=l=0∑k(lk)((x−a)k)(l)(a)s2(k−l)(a)=k!s2(a)である。s2(a)=0からs2=(x−a)s3を満たす実係数多項式s3があり、s=(x−a)k+1s3である。
補題 1.2 (1)をrに関する帰納法で示す。r=1は一点の場合である。r≥2とし、r−1の場合を用いてP:=∏i=1r−1(x−ai)kiと実係数多項式sによりp=Psと書く。arはa1,…,ar−1と異なるのでP(ar)=0である。0≤j≤kr−1とし、l<jでs(l)(ar)=0であるとすると、Leibniz の公式により
0=p(j)(ar)=l=0∑j(lj)P(j−l)(ar)s(l)(ar)=P(ar)s(j)(ar)であるからs(j)(ar)=0である。jに関する帰納法によりs(j)(ar)=0(0≤j≤kr−1)であり、一点の場合からs=(x−ar)krqを満たす実係数多項式qがある。p=q∏i=1r(x−ai)kiである。
補題 1.2 (2)を示す。補題 1.2 (1)のqが0でなければ、pの次数はdegq+K≥K>mであり、p∈Pmと両立しない。したがってq=0であり、p=0である。
補題 1.2 (3)を示す。p∈PKならば、補題 1.2 (1)のqは0であるか次数が0であり、定数c′である。c′∏i(x−ai)kiのxKの係数はc′であるからc′=cである。▨
解答.
t:=a+h/2と置く。t∈[a,b]であるからΛn≥λn(t)である。t−xj=(1/2−j)h、xi−xj=(i−j)hであり、∏j=i∣i−j∣=i!(n−i)!であるから
∣ℓi(t)∣=j=i∏∣i−j∣∣j−21∣=∣i−21∣i!(n−i)!1j=0∏nj−21であり、iについて和をとって等式を得る。0≤i≤nでは∣i−1/2∣≤n−1/2<nであるから、∑i(in)/∣i−1/2∣≥2n/nである。また
n!1j=0∏nj−21=21j=1∏njj−21=21j=1∏n(1−2j1)である。j≥2ならば(1−2j1)2=1−j1+4j21≥jj−1であるから、
j=1∏n(1−2j1)≥21(j=2∏njj−1)1/2=2n1である(n=1では空積を1とする)。これらを掛け合わせてλn(t)≥21⋅2n1⋅n2n=4n3/22nを得る。2n/(4n3/2)→∞であるからΛn→∞である。▨
問題 8.3.δ≥0とし、[−1,1]の節点(x0,x1,x2)=(−1,0,1)の Lebesgue 関数をλ2とし、実数y0,y1,y2をとる。∣y~i−yi∣≤δ(0≤i≤2)を満たす実数y~0,y~1,y~2と、データ(xi,yi)、(xi,y~i)の補間多項式p,p~について、∣p~(1/2)−p(1/2)∣の最大値を求め、それを達成するy~0,y~1,y~2を示せ。
解答.
Lagrange 基底はℓ0(x)=x(x−1)/2、ℓ1(x)=1−x2、ℓ2(x)=x(x+1)/2であり、(ℓ0(1/2),ℓ1(1/2),ℓ2(1/2))=(−1/8,3/4,3/8)である。定理 1.3によりp~−p=∑i(y~i−yi)ℓiであるから
∣p~(1/2)−p(1/2)∣≤i=0∑2∣y~i−yi∣∣ℓi(1/2)∣≤δλ2(1/2)=δ(81+43+83)=45δである。y~0:=y0−δ、y~1:=y1+δ、y~2:=y2+δと置くと∣y~i−yi∣≤δであり、
p~(1/2)−p(1/2)=−δ(−81)+δ⋅43+δ⋅83=45δである。したがって最大値は5δ/4であり、このy~0,y~1,y~2で達成される。▨