第 1 回 関数を近似して遊ぶ (実験から始まる数学 2)1 関数を近似して遊ぶ
1.1 有理数と無理数
実数には大きく 2 つに分けられます．ある整数 m, n によって分数 mn と表わされるものと，そうでないものです．前者を有理数と呼び，後者を無理数と呼びます．
ある実数が有理数であることは，それを小数で表したときに，(有限個の) 同じ並び繰り換えされることと同値です．例えば，

t = 1.1111 · · ·という実数は10t = 11.11 · · ·であることから，両辺を引き算をして 9t = 10，つまり，t = 109 であることより有理数であることが分かります*1 ．
ある数が与えられた時，それが有理数か無理数かを判定するのは一般には非常に難しい√です。 2 や 円周率 π は無理数であることが知られていますが，「オイラーの定数*2 」等，世の中にはどちらであるか知られていない数が沢山あります．
今回は，このような無理数とコンピュータについて考えて行きたいと思います．ある数が無理数であることは，小数で表わした時に循環しない列が無限に続くことを意味しています．ですから，通常の方法では，コンピュータは無理数を直接扱うことはできません．
しかしながら，実用という面では，無限に続く中の最初から有限個の部分が分かれば十分であることが多いです．
ここで問題が生じます．それは 用途によって欲しい精度が変わる ということです．
例えば，円周率 π = 3.1415926535 . . . について考えます．日常生活では，3.14 とすれば十分でしょう．ですが，実験等では，3.1416 等として使用するらしいです．ちなみに，衛星の打ち上げなどでは，30 桁ぐらいが必要とのことです．
円周率に限らず，与えられた無理数 (と思われるもの) をコンピュータで扱うには，臨機応変に近似できる方法が必要になるわけです．
それでは，そのようなうまい近似方法は存在するのでしょうか? 実は，「良い」関数に対しては，微分を用いることによって，うまい方法が存在することが知られています．これを「テイラー展開」と呼びます*3 ．この手法を使って，色々な値を近似して遊ぶことに*1 厳密には，「収束」の話をしなければならないのですが，今はこの計算は成り立つことを確かめられます．
*2 limn→∞`´1
1 + 12 + · · · + n− log n

*3 前回の講座で行なったのは「フーリエ級数展開」と呼ばれるもので，関数の形 (グラフ) を近似したのですが，今回は，各点での値についての近似です．

1

2
しましょう．

1.2 テイラー展開の原理
数学の教科書の巻末には近似値の一覧が載っているものがあります. 中学校のものには「平方根表」高校校のものには「対数表」や「三角関数表」といったものです. これは,√1.1 や log10 2, つまり，10x = 2 を満たす x の値といった, 簡単には分からない値の近似値を調べる時に使います. コンピュータを用いることで, 実際にこのような値を求めることにしましょう．
テイラー展開とは, 関数の中で，値が分かっている点を 1 つ固定して, その周囲の値を求める方法です. そのために，「Maxima」という数学ソフトウェアを使って，関数のグラフを描いてみることにしましょう．まずは, x の多項式に対して考えます．
実験 1. XMaxima を起動して下さい. 下半分にある青字の部分をクリックすることで計算させることができます．また，キーボードで数字を変えて計算させることもできます．

1. まず, f(x):=x^4+x^3-7*x^2 +6*x+2 という部分が, 関数 f (x) の定義です. a:1となっているので, f (x) の x = 1 の周りの値を近似することにします. まず, 最初に接線を求めることにします. これは, 微分を行なうことで簡単に求めることができます．クリックすると, f (x) およびその接線が図示されます. 接している状態,というのは, 傾き, つまり 1 次導関数が等しいことを意味しています. これは, f (x)を x = 1 の周辺で 1 次関数, つまり直線によって近似していることを意味しています *4 ．

2. 次に, もっと良い近似を考えます. それは, 2 次関数, つまり放物線によって近似することです. これは, 2 次導関数まで一致させることを意味しています. クリックすることで図示されます. x = 1 の周辺では先程よりも良い近似になっていることが見て取れると思われます.

3. 同様に, 3 次関数以上でも近似することができます.
実験 2. 先の例では，f (x) は 4 次式なので, 4 次関数の近似は f (x) そのものとなっています. 今度は, 多項式ではないもので考えることにしましょう．ここでは，f (x) :=√xを考えます．先と同様に，1 次式，2 次式，. . . で近似していって下さい．グラフはどうなっ√ているでしょうか? また，b の値を変えることで， b の近似値を求めて下さい．b の値によっては，n をいくら大きくしても近似ができない場合があります．それはどのような場合でしょうか? n や b の値を変えたり，グラフからも考えて下さい．
*4 一般に，(a, f (a)) における接線は y = f 0 (a)(x − a) + f (a) で与えられます．

第 1 回 関数を近似して遊ぶ (実験から始まる数学 2)
このように，テイラー展開とは，多項式の「接曲線」で近似する手法です．「良い *5 」
関数 f (x) に対して, x が a に十分近い状態では以下の等式が成り立ちます. (ここで，n! = n · (n − 1) · · · 2 · 1.)
f (x) = f (a) + f 0 (a)(x − a) +f 00 (a)f (n) (a)(x − a)2 + · · · +(x − a)n + · · ·2!
n!

これを最初から有限個だけを取り出していたわけです. n 個取り出すと, x = a における(n − 1) 次導関数までが等しくなります. それは，一般に xα を微分すると，αxα−1 となることから分かります．n = 2 の場合が接線となります.. x − a が小さい程，(x − a)2 ,(x − a)3 とどんどん値が小さくなるので, 近似が可能になったり，精度が良い近似が得られるわけです．うまく近似ができる範囲は「収束半径」と呼ばれ，与えられた関数によって決まっています．
参考 1. 今の場合，f (n) (x) を計算すると，f1となるので，a 2 =√(n)√() () ()11131(x) = · −· −···
− n + 1 x 2 −n2222a の値が求まれば，テイラー展開は求まることになります．例えば，10 の値を求めたい場合には，a = 256
25 (= 10.24) としてテイラー展開を行なば良いでしょう．

1.3 等比級数との関係
最後に，関数f (x) =11−xについて，x = 0 におけるテイラー展開を考えてみましょう．
実験 3. まずは，近似の様子を，XMaxima で確かめてみましょう．グラフの様子を調べ下さい．また，テイラー展開の形を見て，その法則性を考えて下さい．
さて，この様子を，理論から見ることにしましょう．f (x) を微分すると，

f 0 (x) =23!
1, f 00 (x) =, f (3) (x) =,...
23(1 − x)(1 − x)(1 − x)4*5 これは，関数が何回でも微分可能であって，ある収束条件を満たす，という条件ですが，多くの関数がこの条件を満たしています．

34となることから，一般に

f (n) (x) =n!
, f (n) (0) = n!.
(1 − x)n+1となることが予想でき，実際にそうなります．ですから，テイラー展開は次のようになります．

f (x) = 1 + x +n!
2! 2 3! 3x + x + · · · xn + · · ·2!
3!
n!

つまり，以下を得ます．

1= 1 + x + x2 + · · · + xn + · · ·1−x
これは，−1 < x < 1 の範囲で成り立つことが知られており，等比級数の和の公式として1知られているものです．ちなみに，x = 10と入れると，今回最初に出てきた有理数が出てきて，計算が合うことが分かります．
他にも，x = 0 におけるテイラー展開*6 で代表的なものを挙げておきます. 最後のもの
は −1 < x < 1 の範囲で成立しますが，最初の 3 つは全ての x で成立することが知られています．

11 5(−1)nsin x = x − x3 +x + ··· +x2n+1 + · · ·3
5·3(2n + 1) · (2n − 1) · · · 3
11 4(−1)ncos x = 1 − x2 +x + ··· +x2n + · · ·2
4·2(2n) · (2n − 2) · · · 2
11 31
ex = 1 + x + x2 +x + · · · + xn + · · ·23·2n!
n+11(−1)
1xn + · · ·log(1 + x) = x − x2 + x3 − · · · +23n
テイラー展開のように無限和で表す方法は，級数表示 と呼ばれています．この手法の便利な所は，「必要に応じて好きなだけ近似ができる」ということです．どこまで近似する必要があるか? というのは実用の際の時間と精度の兼ね合いで決まります．計算するのはコンピュータでも，その方針を決定するのは人間の仕事であると言うことができるでしょう．

*6 マクローリン展開とも呼ばれています．