\( \DeclareMathOperator{\abs}{abs} \newcommand{\ensuremath}[1]{\mbox{$#1$}} \)

数列(Sequence)

1 数列

\[例題1 (1)第4項が14,第10項が62である等差数列の初項と公差を求め,一般項を求めよ。\\
   (2)第2項が14,第5項が112である等比数列の初項と公比を求め,一般項を求めよ。\] \[例題2 (1)初項3,公差2の等差数列で,初項から第何項までの和が63になるかを求めよ。\\
(2) 初項から第3項までの和が9,初項から第6項までの和が-63である等比数列の初項と公比を求めよ。\] \[例題3 \sum_{k=1}^{n}(k^2-3k+4)を求めよ。\]


\[例題4 数列 2,6,12,20,30,42,\cdotsの一般項を求めよ。\] \[例題5 初項から第n項までの和が S_n=n^3-nである数列の一般項を求めよ。\]

これは階差数列が等差のとき,等比のときはまた別,プログラミングしたくなる。
両方とも公式は n は2 以上。n=1 のとき,別に確認する。

2 漸化式と数学的帰納法

\[例題1 次のように定められた数列の一般項を求めよ。\\
   (1) a_{1}=3,a_{n+1}=a_{n}+n+1 (n=1,2,3,\cdots)\\
   (2) a_{1}=2,a_{n+1}=2a_{n}-1 (n=1,2,3,\cdots)\\
   (3)  a_{n+1}=2-\frac{1}{a_n},a_1=2 (n=1,2,3,\cdots)\] \[例題2 1歩で登るのが1段または2段であるような登り方をする時登り方をするとき,\\
   10段の階段を登りきるには,何通りの登り方があるだろうか\] \[例題3 nを自然数とするとき,数学的帰納法を用いて,次の等式を証明せよ。\\ 1+3+5+\cdots+(2n-1)=n^2\] Maxima が凄すぎて(漸化式を解く関数が作られている),Geogebra を使う気が今一つ湧かないが。
(1)は,階差数列でできる。(2)を目で見る仕掛けはよくある。
これは,ソースを置いておくか。
数字はiterationlistで計算する。





フィボナッチは,python で,

def fibo(n):
  fib=[1,2]
  for i in range(3,n):
    fib.append(fib[i-3]+fib[i-2])
  print(fib)

fibo(11)

[1, 2, 3, 5, 8, 13, 21, 34, 55, 89]

数列(Sequence)

1 数列

\[例題1 (1)第4項が14,第10項が62である等差数列の初項と公差を求め,一般項を求めよ。\\
   (2)第2項が14,第5項が112である等比数列の初項と公比を求め,一般項を求めよ。\\
例題2 (1)初項3,公差2の等差数列で,初項から第何項までの和が63になるかを求めよ。\\
(2) 初項から第3項までの和が9,初項から第6項までの和が-63である等比数列の初項と公比を求めよ。\] 微積とか数列とか Maxima のすごさを実感しますね。
 細かいマクロがあるんでしょう。functs(関数)をロードしてから。
等差数列,等比数列がそのまま入ってます。どころか,等差数列と等比数列の和まで入ってます。
 後の問題にもありますので,二つの項を入れて数列を確定するマクロ作りました.

(%i1) load(functs)$
(%i2) ari(i,p,j,q):=block(
l:solve([arithmetic(a,d,i)=p,arithmetic(a,d,j)=q],[a,d])[1],
a1:ev(a,l[1]),d1:ev(d,l[2]),
print("a=",a1,":d=",d1),
expand(arithmetic(a1,d1,n))
)$
(%i3) ari(4,14,10,62);
\[\mbox{}\\a= -10 :d= 8 \] \[(\%o3)8n-18\]
(%i4) solve(arithsum(3,2,n)=63,n);
\[(\%o4)[n=-9,n=7]\]
(%i5) geo(i,p,j,q):=block(
l:solve([geometric(a,r,i)=p,geometric(a,r,j)=q],[a,r])[1],
a1:ev(a,l[1]),r1:ev(r,l[2]),
print("a=",a1,":r=",r1),
geometric(a1,r1,n)
)$
(%i6) geo(2,14,5,112);
\[\mbox{}\\a= 7 :r= 2 \] \[(\%o6)7{{2}^{n-1}}\]
(%i7) solve([geosum(a,r,3)=9,geosum(a,r,6)=-63],[a,r]);
\[(\%o7)[[a=\sqrt{3}\%{}i,r=1-\sqrt{3}\%{}i],[a=-\sqrt{3}\%{}i,r=\sqrt{3}\%{}i+1],[a=3,r=-2]]\]

\[例題3 \sum_{k=1}^{n}(k^2-3k+4)を求めよ。\]
さあ, Maxima のすごいところ。数列の和を計算するには調べたところ(必死で英語の Help を読むわけだ)3種類あります。
まず,sum(これで駄目なら)最後に,simpsum とつける。
次は simplify_sum をロードして。
どうも一番協力で簡単なのが,nusum(unsum:差分をとる)の逆らしい,つまり和分。
少し実験してます。等比の和とか部分分数もOK
 これ以上のマクロもあるんです。超幾何級数の計算マクロ。
 zeilberger という人が書いたパッケージがあるんですよ。そのうち紹介する機会があるかな。

(%i8) sum(k^2-3*k+4,k,1,n);
\[(\%o8)\sum_{k=1}^{n}{\left. {{k}^{2}}-3k+4\right.}\]
(%i9) sum(k^2-3*k+4,k,1,n),simpsum;
\[(\%o9)\frac{2{{n}^{3}}+3{{n}^{2}}+n}{6}-\frac{3{{n}^{2}}+3n}{2}+4n\]
(%i10) ratsimp(%);
\[(\%o10)\frac{{{n}^{3}}-3{{n}^{2}}+8n}{3}\]
(%i11) factor(%);
\[(\%o11)\frac{n\,\left( {{n}^{2}}-3n+8\right) }{3}\]
(%i12) load(simplify_sum)$
(%i13) simplify_sum(sum(k^2-3*k+4,k,1,n));
\[(\%o13)\frac{2{{n}^{3}}+3{{n}^{2}}+n}{6}-\frac{3{{n}^{2}}+3n}{2}+4n\]
(%i14) nusum(k^2-3*k+4,k,1,n);
\[(\%o14)\frac{n\,\left( {{n}^{2}}-3n+8\right) }{3}\]
(%i15) nusum(3*n^2-3*n,n,1,n);
\[(\%o15)\left( n-1\right) n\,\left( n+1\right) \]
(%i16) sum(k*r^(k-1),k,1,n),simpsum;
\[(\%o16)\sum_{k=1}^{n}{\left. k\,{{r}^{k-1}}\right.}\]
(%i17) simplify_sum(%);
\[(\%o17)\frac{{{r}^{n}}\,\left( nr-n-1\right) }{{{\left( r-1\right) }^{2}}}+\frac{1}{{{\left( r-1\right) }^{2}}}\]
(%i18) ratsimp(%);
\[(\%o18)\frac{{{r}^{n}}\,\left( nr-n-1\right) +1}{{{r}^{2}}-2r+1}\]
(%i19) nusum(k*r^(k-1),k,1,n);
\[(\%o19)\frac{{{r}^{n}}\,\left( nr-n-1\right) }{{{\left( r-1\right) }^{2}}}+\frac{1}{{{\left( r-1\right) }^{2}}}\]
(%i20) sum(1/k/(k+1),k,1,n);
\[(\%o20)\sum_{k=1}^{n}{\left. \frac{1}{k\,\left( k+1\right) }\right.}\]
(%i21) simplify_sum(%);
\[(\%o21)\frac{n}{n+1}\]
(%i22) nusum(1/k/(k+1),k,1,n);
\[(\%o22)\frac{n}{n+1}\]

\[例題4 数列 2,6,12,20,30,42,\cdotsの一般項を求めよ。\]
具体的な数列から階差数列を取り,元の数列を求めるのはリストで工夫しました。

(%i23) kaisa(l):=rest(l,1)-rest(l,-1)$
(%i24) kaisa([2,6,12,20,30,42]);
\[(\%o24)[4,6,8,10,12]\]
(%i25) 2+sum(arithmetic(4,2,k),k,1,n-1),simpsum;
\[(\%o25)n+2\left( n-1\right) +{{\left( n-1\right) }^{2}}+1\]
(%i26) ratsimp(%);
\[(\%o26){{n}^{2}}+n\]

\[例題5 初項から第n項までの和が S_n=n^3-nである数列の一般項を求めよ。\]
unsumだと初項だけ別の式にならないので,和から一般項を出すマクロを作りました。

(%i27) wakara(s):=block(
   s(n):=s,
   a(n):=expand(s(n)-subst(n-1,n,s(n))),
   if subst(1,n,a(n))=subst(1,n,s(n)) then return(factor(a(n)))
   else print("a(1)=",subst(1,n,s(n)),",n>1:a(n)=",a(n))
)$
(%i28) wakara(n^3-n);
\[(\%o28)3\left( n-1\right) n\]
(%i29) unsum(n^3-n,n);
\[(\%o29)3{{n}^{2}}-3n\]
(%i30) unsum(n^2+1,n);
\[(\%o30)2n-1\]
(%i31) wakara(n^2+1)$
\[\mbox{}\\a(1)= 2 ,n\ensuremath{\ensuremath{>}}1:a(n)= 2n-1 \]

2 漸化式と数学的帰納法

\[例題1 次のように定められた数列の一般項を求めよ。\\
   (1) a_{1}=3,a_{n+1}=a_{n}+n+1 (n=1,2,3,\cdots)\\
   (2) a_{1}=2,a_{n+1}=2a_{n}-1 (n=1,2,3,\cdots)\\
   (3)  a_{n+1}=2-\frac{1}{a_n},a_1=2 (n=1,2,3,\cdots)\] \[例題2 1歩で登るのが1段または2段であるような登り方をする時登り方をするとき,\\
   10段の階段を登りきるには,何通りの登り方があるだろうか\] 漸化式を解くパッケージ(solve_rec),教科書レベルならすべて解ける。
分数漸化式も,隣接3項間漸化式もOK!
(%i32) kill(all)$
(%i1) load("solve_rec")$
(%i2) solve_rec(a[n+1]=a[n]+n+1,a[n],a[1]=3);
\[(\%o2){{a}_{n}}=\frac{\left( n-1\right) \,\left( n+2\right) }{2}+3\]
(%i3) ratsimp(%);
\[(\%o3){{a}_{n}}=\frac{{{n}^{2}}+n+4}{2}\]
(%i4) solve_rec(a[n+1]=2*a[n]-1,a[n],a[1]=2);
\[(\%o4){{a}_{n}}={{2}^{n-1}}+1\]
(%i5) solve_rec(a[n+1]=2-1/a[n],a[n],a[1]=2);
\[(\%o5){{a}_{n}}=\frac{n+1}{n}\]
(%i6) solve_rec(a[n+2]=a[n+1]+a[n],a[n],a[1]=1,a[2]=1);
\[(\%o6){{a}_{n}}=\frac{{{\left( \sqrt{5}+1\right) }^{n}}}{\sqrt{5}\,{{2}^{n}}}-\frac{{{\left( \sqrt{5}-1\right) }^{n}}\,{{\left( -1\right) }^{n}}}{\sqrt{5}\,{{2}^{n}}}\]
(%i7) l:rhs(%);
\[\tag{l}\label{l}\frac{{{\left( \sqrt{5}+1\right) }^{n}}}{\sqrt{5}\,{{2}^{n}}}-\frac{{{\left( \sqrt{5}-1\right) }^{n}}\,{{\left( -1\right) }^{n}}}{\sqrt{5}\,{{2}^{n}}}\]
(%i8) l,n=10;
\[(\%o8)\frac{{{\left( \sqrt{5}+1\right) }^{10}}}{1024\sqrt{5}}-\frac{{{\left( \sqrt{5}-1\right) }^{10}}}{1024\sqrt{5}}\]
(%i9) ratsimp(%);
\[(\%o9)55\]
(%i10) fib(10);
\[(\%o10)55\]
(%i11) for k:1 thru 10 do print(fib(k))$
\[1 1 2 3 5 8 13 21 34 55 \]

漸化式は解くだけでなく,よくある漸化式を目で見るパッケージ(力学)も用意されている。
階段関数とでもいうのですか.

(%i12) load(dynamics)$
(%i13) staircase(2*x-1,2,5,[gnuplot_preamble, "set zeroaxis"]);
\[\mbox{}\\\mbox{plot2d: some values were clipped.}\mbox{}\\\mbox{plot2d: some values were clipped.}\]

図 2:

\[例題3 nを自然数とするとき,数学的帰納法を用いて,次の等式を証明せよ。\\
   1+3+5+\cdots+(2n-1)=n^2\]
帰納法はまあ,手でやる証明法だから(高校の大体のものは直接に証明できます)。

(%i14) load(functs)$
(%i15) nusum(2*k-1,k,1,n);
\[(\%o15){{n}^{2}}\]

数列(Sequence)

1 数列

数列:progression,sequence
 pro(前)+gress(進む),sequ(後に来る)で面白いもんだ。
項:term 一般項:general term 項数:number of trems(?) 末項:last term
 termは限界,ターミナルとか
有限数列,無限数列:finite(infinite) progression
等差数列,公差:arithmetical progression A.P.,common difference
等比数列,公比:geometric progression G.P.,common ratio
 算術的と幾何的との違いは,農業生産の増加と人口の増加の違いだ,というのがマルサスの人口論。
複利法:compound interest 興味があるのは利子か
階差数列:progression of difference
和:sum 一番高いという意味らしい,サミット

2 漸化式と数学的帰納法

漸化式:recurrence formula re は再び occur する
フィボナッチ数列:ボナッチの息子の意味だそうだ
数学的帰納法:mathmatical induction ラテン語「導き入れる」の意から
Created with wxMaxima. inserted by FC2 system