そして現時点のステージにおける私のラスボスはどうやら超越関数(transcendental function)らしい?
吉田武「オイラーの贈物」「基礎理論(Basic Theory)」より
- 数列(numerical sequence)…一般項(general term)が規定する規則に従って並べられた数の列。そのうち数の間隔が「隣り合う二項の差=公差(common difference)」で定められるものを等差数列(arithmetic progression)あるいは算術数列(arithmetic sequence)、「隣り合う二項の比=公比(common difference)」で定められるものを等比数列(geometric progression)あるいは幾何数列(geometric sequence)という。
- 自然数(natural number)…数列の立場からすれば「一般項(general term)N,公差(common difference)1の等差数列(arithmetic progression)の1以上」となる。
- 整数(integer)…数列の立場からすれば「一般項(general term)N,公差(common difference)1の等差数列(arithmetic progression)」となる。
「実数(Real number)」は有理数と無理数から構成されている。「有理数(rational number)」とは「比(ratio)」で書ける数、整数も含めた広い意味での分数の事であり、無理数(irrational number)とはかかる表現が不可能な数をいう。
*こうした立場からすると両者は「有比数」「無比数」と呼ぶのが正しい。
それでは数式とは?
「式(formula)」において、数や文字の掛け算で表された一つの単位を「項(term)」という。また、項の中で注目している文字以外の文字や数を「係数(coefficient)」という。
一つの項からなる式を「単項式(monomial)」、複数の項からなる式を「多項式(polynomial)」あるいは「整式(an integral expression)」という。
二つの多項式の割り算すなわち「商(quotient)」の形で与えられる式を「有理式(rational expression)」あるいは「分数式(fractional expression)」という。これは数の概念における整数から有理数への拡張の、式の概念に対する敷衍となっている。
またk個のaの積をa^kと書きaのk乗と読む。このkを「指数(expornent)」という。
まずはこの辺りが出発点…
未知数xを含む方程式(formula)f(x)=0には様々な形式があり、このうち代数的演算(Algebraic operations、加減算、乗除算、冪根)を有限回用いて表せる代数方程式(Algebraic formula)という。
統計言語Rによる実行例
#代数的演算
3+2
[1] 5
3-2
[1] 1
3*2
[1] 6
3/2
[1] 1.5
3^2
[1] 9
#平方根
sqrt(2)
[1] 1.414214
2^0.5
[1] 1.414214
#三乗根
2^(1/3)
[1] 1.259921
x-2=0の場合
- 左辺の定数項-2を右辺に移項し2とする。
- 両辺に2を加える。
あるいは
- 両辺に2を加える。
答えは2となる。
統計言語R(with YACAS)による実行例
library(Ryacas)
yacas("Solve(x-2==0,x)")
Yacas vector:
[1] x == 2
2x+6=0の場合
- 両辺から6を引く。
- 両辺を2で割る。
答えは-3となる。
統計言語R(with YACAS)による実行例
library(Ryacas)
yacas("Solve(2*x+6==0,x)")
Yacas vector:
[1] x == -3
ax^2-b=0の場合
- ax^2=bに変形。
- x^2=b/aに変形。
- x=±sqrt(b/a)に変形。
よって答えは±sqrt(b/a)の2つとなる。
統計言語R(with YACAS)による実行例
library(Ryacas)
yacas("Solve(a*x^2+b==0,x)")
Yacas vector:
[1] x == root(abs(b/a), 2) * complex_cartesian(cos(argument(-(b/a))/2), sin(argument(-(b/a))/2))
[2] x == root(abs(b/a), 2) * complex_cartesian(cos*1 + 2 * pi)/2), sin*2 + 2 * pi)/2))
2x^2-1=0の場合
- 2x^2=1に変形
- x^2=1/2に変形
- x=±sqrt(1/2)に変形
よって答えは±sqrt(1/2)の2つとなる。
統計言語R(with YACAS)による実行例
library(Ryacas)
yacas("Solve(2*x^2-1==0,x)")
Yacas vector:
[1] x == root(1/2, 2) x == -root(1/2, 2)
sqrt(1/2)
[1] 0.7071068
-sqrt(1/2)
[1] -0.7071068
ただし代数方程式の解き方は1種類とは限りません。
(x+m)^2-n=0の場合
- (x+m)^2=nに変形
- 平方根を取るとx+m=±sqrt(n)
- x=±sqrt(n)-mに変形
よって答えは±sqrt(n)-mの2つとなる。
統計言語R(with YACAS)による実行例
library(Ryacas)
yacas("Solve*3/2
(x+2)^2-3=0の場合
- (x+2)^2=3に変形
- 平方根を取るとx+2=±sqrt(3)
- x=±sqrt(3)-2に変形
よって答えは±sqrt(3)-2の2つとなる。
統計言語R(with YACAS)による実行例
library(Ryacas)
yacas("Solve*4/2aax^2+2bx+cの場合、x=(-b±sqrt(b^2-ac))/a これは因数分解出来なくても解けるパターンとなる。
統計言語R(with YACAS)による実行例
library(Ryacas)
yacas("Solve*5/(2 * a^2)
yacas("Solve*6/(2 * a^2)結論的にいえば,二次方程式の重解の場合,「1つしかない」のが「解」であり 「同じものが2つある」のが「根」である.
異なる概念を混同しているのが今の高校教科書である.
「根」はrootから来ている言葉だ. 「根」という言葉は今の高校数学では「根号」とか「平方根」というところに残っているだけだ. しかし√という記号はもともとrootのrから来ているのだから, 毎日「根」は使っている.
「根」は「根っこ」であり「大地」である. こんなすばらしい言葉を高校数学から追放した現在の教科書の罪は深い。
x^2-3x+2=0の場合
- 根の公式x=(-b±sqrt(b^2-4ac))/2aから(-(-3)±sqrt*7/(2*1)=(3±1)/2
よって答えは1と2の2つとなる。
統計言語R(with YACAS)による実行例
library(Ryacas)
yacas("Solve(x^2-3*x+2==0,x)")
Yacas vector:
[1] x == 1 x == 2
yacas("Solve*8
yacas("Simplify*9")
expression(x^2 - 3 * x + 2)二項定理(Binomial theorem)とも関連してくる領域となる。
反比例式について
統計言語R(with YACAS)による実行例
library(Ryacas)
yacas("Solve(x*y-1==0,x)")
Yacas vector:
[1] x == 1/y
yacas("Solve(x*y-1==0,y)")
Yacas vector:
[1] y == 1/xピタゴラスの定理について
ユークリッド幾何学における平面代数曲線 (plane algebraic curve)におけるx^2 + y^2 = a (a は実定数)。これは、実数の範囲で考えた時、以下となる。
- a > 0 なら円
- a = 0 なら原点一点
- a < 0 なら空集合
ただしa < 0 でも、複素数の範囲で解を考えればたくさんある。このように、代数曲線といってもどの範囲で解を考えるのか、どの体で解を考えるのかを明らかにしないと定かにはさだまらない。
例で見たとおり、実数の範囲で考えると一点や空集合なども「代数曲線」であることになり、直感に合わない。通常は、代数曲線といったら複素数解の全体をあらわすことが多い。
統計言語R(with YACAS)による実行例
library(Ryacas)
yacas("Solve(x^2+y^2-1==0,x)")Yacas vector:
[1] x == root(abs(y^2 - 1), 2) * complex_cartesian(cos(argument(1 - y^2)/2), sin(argument(1 - y^2)/2))
[2] x == root(abs(y^2 - 1), 2) * complex_cartesian(cos*10yacas("Solve(x^2+y^2-1==0,y)")
Yacas vector:
[1] y == root(abs(x^2 - 1), 2) * complex_cartesian(cos(argument(1 - x^2)/2), sin(argument(1 - x^2)/2))
[2] y == root(abs(x^2 - 1), 2) * complex_cartesian(cos*11以下続報…
*1:argument(-(b/a
*2:argument(-(b/a
*3:x+m)^2-n==0,x)")
Yacas vector:
[1] x == (root(4 * m^2 - 4 * (m^2 - n), 2) - 2 * m)/2 x == -(2 * m + root(4 * m^2 - 4 * (m^2 - n), 2*4:x+2)^2-3==0,x)")
Yacas vector:
[1] x == (root(12, 2) - 4)/2 x == -(root(12, 2) + 4)/2
#+の場合の解答
sqrt(3)-2
[1] -0.2679492
(sqrt(12)-4)/2
[1] -0.2679492#-の場合の解答
-(sqrt(3)-2)
[1] 0.2679492
-(sqrt(12)-4)/2
[1] 0.2679492ax^2+bx+c=0あるいはax^2+2bx+c=0の場合
以下の根の公式(Root formula)を使う。
- ax^2+bx+cの場合、x=(-b±sqrt(b^2-4ac
*5:a*x)^2+b*x+c==0,x)")
Yacas vector:
[1] x == (root(b^2 - 4 * (a^2 * c), 2) - b)/(2 * a^2) x == -(b + root(b^2 - 4 * (a^2 * c), 2*6:a*x)^2+2*b*x+c==0,x)")
Yacas vector:
[1] x == (root(4 * b^2 - 4 * (a^2 * c), 2) - 2 * b)/(2 * a^2) x == -(2 * b + root(4 * b^2 - 4 * (a^2 * c), 2*7:-3)^2-4*1*2
*8:1*x)^2+(-3)*x+2==0,x)")
Yacas vector:
[1] x == 1 x == 2因数分解が可能な場合
因数分解を行うにはacx^2+(ad+bc)x+bd=0→(ax+b)(cx+d)=0の関係に注目して定数a,b,c,dを決定する必要がある。具体的には二次方程式の各係数から次の「たすき掛け」関係を満たす値を試行錯誤して発見する。
x^2-3x+2=0の例では
より、a=1,b=-1,c=1,d=-2となり
- x^2-3x+2=(x-1)(b-2)=0
よってx=1 or x=2となる。
統計言語R(with YACAS)による実行例
library(Ryacas)
yacas("Factor(x^2-3*x+2)")
expression((x - 2) * (x - 1*9:x-2)*(x-1
*10:argument(1 - y^2) + 2 * pi)/2), sin((argument(1 - y^2) + 2 * pi)/2
*11:argument(1 - x^2) + 2 * pi)/2), sin((argument(1 - x^2) + 2 * pi)/2