SPP: 数式処理電卓による実験数学 1 関西学院大学数理科学科山根英司

1
SPP: 数式処理電卓による実験数学 1
関西学院大学数理科学科 山根英司
http://sci-tech.ksc.kwansei.ac.jp/~yamane/
習った問題の類題なら,解法を思い出してなんとか解けます.それでは,初
めて見る問題はどうすればいいでしょうか.こういうときに有効な方法の一
つは実験です.問題をいきなり一般に (完全に) 解くのが無理なら, できると
ころから実験して手探りで様子を調べます. そうすると何らかの規則性が見え
てくるので, 予想を立て, 証明するのです. これを実験数学∗ といいます.もち
ろん予想を立てるのも証明するのも人間だし, 証明は手計算でやります.(教
員向け注: 機械に頼ると学力が落ちるという批判が的外れであることが分かり
ます.)
今日は大学入試問題から題材を取って実験数学の入門をします.別に受験
対策をするつもりはないのですが,高校数学で面白い題材を見つけようと思っ
たら, 大学入試問題を調べるのが手っ取り早いのです.
京都大学 2007
x, y を相異なる正の実数とする. 数列 {an } を
a1 = 0, an+1 = xan + y n+1
(n = 1, 2, 3, · · · )
によって定めるとき, lim an が有限の値に収束するような座標平面上の
n→∞
点 (x, y) の範囲を図示せよ.
まずは a2 , a3 , a4 , . . . を電卓で順に求めて,一般項を予想しましょう.実は
問題の漸化式を解くためにはよく知られたトリックがありますが,ここでは
それに頼らずに,実験 → 予想 → 証明 という手順で話を進めましょう.解法
を知っていたから解けたというよりも, 手探りで解法を見つけ出す方がたく
ましい感じがします.後者のような態度で数学を勉強する人は,初めて見る
問題でも解けるようになるでしょう.そしてゆくゆくは,単に入試問題を解
くだけでなく, 誰も知らなかった新しい定理・法則を発見したり, 新技術を開
発したりできるようになるでしょう.
an+1 = xan + y n は,
「直前の計算結果に x をかけて y n を加えよ」と言っ
ています. Voyage では「直前の計算結果」は ans(1) です. 2nd (-) で出ます.
∗ 計算機実験という言葉は昔からありますが,それは数値実験
(小数で表された数値による近
似計算) のことです.実験数学は数式処理 (文字式の計算) を使うものを指します.
2
Voyage 200 で微分の計算ができます. F3 の微積分メニューで 1.d( を選べ
ば微分できます. キーボードショートカットは 2nd 8 です.
大阪大学 1998 年後期 (改)
今度は g(x) = x2 ex の n 次導関数を求めよ.
ln は自然対数 loge のことです (Voyage では数学ではなく物理や化学の習
慣に従って log は常用対数 log10 を表すことになっています).
本稿では地の文では log は自然対数を表すことにします.
例題
log x
の高次導関数について調べよ.(n 次導関数を短い式で書
x
くことはできないが,かなりきれいな規則性は現れる. )
慈恵医大 05 年前期 (改)
f (x) =
xn log x の n 次導関数について調べよ. (n 次導関数を短い式で書くこと
はできないが,かなりきれいな規則性は現れる. )
3
SPP: 数式処理電卓による実験数学 2
関西学院大学数理科学科 山根英司
秋田県立大学 2004 年 (改)
∫1
n が 0 以上の整数のとき,In = 0 (1 − x2 )n dx について考える.
(1) I0 , I1 , . . . を求めよ (電卓使用).
In
(2) n が 1 以上のとき,
の一般項を予想せよ (電卓使用).
In−1
(3) 部分積分を用いて, 上の予想が正しいことを示せ (手計算).
(4) In を n を用いて表せ (まず手計算, 電卓で検算).
注 次の記号 !! が便利です.
(2n + 1)!! = (2n + 1)(2n − 1) · · · 5 · 3 (2n + 1 以下の全ての奇数の積)
(2n)!! = (2n)(2n − 2) · · · 4 · 2 (2n 以下の全ての偶数の積)
関西学院大学 2003 年 (改)
∫
x
dt
1 とおく.Voyage を使って fn (x) を計算し,規
(1 + t2 )n+ 2
則性を見つけよ. そしてそれを手計算で証明せよ. (fn (x) を短い式で書
fn (x) =
0
くことはできないが,かなりきれいな規則性は現れる. )
4
SPP: 演習の課題 (因数分解) ∗
関西学院大学数理科学科 山根英司
因数定理の知識を前提とします.
F2
2:factor( で因数分解ができます.
factor(x∧2-3x+2)
とすれば x2 − 3x + 2 が因数分解されます. 3x は本当は 3∗x と書くべきです
が, 係数がただの数なので ∗ の省略が許されています. a∗x のときは省略し
てはいけません. ax とすると掛け算でなく ax という名前の一つの変数とい
うことになってしまいます.これは数学でなくプログラミング言語の習慣に
従っています.
電卓なら factor(x∧100-1) のような計算もたちまちできます.
演習課題
x4 + a が整数係数の範囲で因数分解できる自然数 a を求めよ.
同じような計算を繰り返すときはユーザ定義関数を使うと便利です.例え
ば xn − 1 の n の値を n = 2, 3, 4, · · · と色々取り替えて因数分解するとしま
しょう.
factor(x∧n-1)
STO>
xx(n)
と置きます. 後は xx(2) などとすればいいのです.
注
コマンドの名前はキーを押すのが楽な xx にしました.一文字の名前は
避けるのが無難です. また既にあるコマンドと同じ名前は使うことはできま
せん.
∗ 福井高専の長水先生の研究発表を参考にしました.