3次方程式、4次方程式の解き方  −代数的解法


3次方程式、4次方程式の解き方  −代数的解法

 Mathematicaを使えば、三次方程式、四次方程式の解を即座に求めることができるが、ここではそういうコンピュータを使った数値的解法による解ではなく、代数的な解き方を紹介する。ちなみに代数的に解けるのは4次方程式までであり、一般的に5次方程式以上は代数的に解くことができないことが証明されている。つまり、5次方程式以上は解の公式が存在しない。
 (式が面倒なので平方根は^0.5(0.5乗の意味)、3乗根は^(1/3)で表現してある。なお、筆者は数学の専門家ではないので、数学的厳密さにおいて間違っている表現があるかもしれない)

まず、3次方程式の解き方。(4次方程式を解くには3次方程式を解けることが必要)

 y3 + py2 + qy + r = 0

で、y = x - p/3を代入すると

 x3 + ax + b = 0  ただし a = 1/3・(3 q - p2), b = 1/27・(2p3 − 9pq + 27 r)

ときれいな形になる。

これの根は

A = {−b/2+(b2/4+a3/27)^0.5}^(1/3)
B = {−b/2−(b2/4+a3/27)^0.5}^(1/3)

として

x1 = A+ B
x2, x3 = −1/2・(A + B) ±(3^0.5) i/2・(A−B)

となる。

こうなる理由について
   上の方程式をx = A + Bとして変形すれば、
   (A + B)3 + a (A + B) + b = 0
   A3 + B3 + (3AB + a)x + b = 0
   となる。だから
   A3 + B3 + b = 0 かつ 3AB + a = 0を満たす
   A, Bが上式の解である。
   この2式を連立させて解けば、上のA, Bの値となる。

上の根x1, x2, x3だが、b2/4 + a3/27によって、実根かどうか判別できる。

・b2/4 + a3/27=0のとき、3根とも実数になる。根からbを消去すれば
   b>0のとき
     x = −2・(−a/3)^0.5, (−a/3)^0.5, (−a/3)^0.5
   b<0のとき
     x = 2・(−a/3)^0.5, −(−a/3)^0.5, −(−a/3)^0.5 

・b2/4 + a3/27<0なら、3根とも実数になる。
  三角関数を用いた別の表記の仕方もできる。

・b2/4 + a3/27>0なら、実根1つと、共役複素根となる。

4次方程式の解き方

 y4 + py3 + qy2 + ry + s = 0

で、y = x -p/4を代入すると

  x4 + ax2 + bx + c = 0

ただし a = −3/8・p2 + q, b = p3/8 − pq/2 + r, c = −3/256・p4 + p2q/16−rp/4
(各自で計算して確認のこと)

この4次方程式の根は3次方程式

 t3 + (a/2) t2 + (a2−4c)/16・t −b2/64 = 0

の3根をA, B, Cとすると

 x1 = ±{−A^0.5−B^0.5−C^0.5}
 x2 = ±{−A^0.5 + B^0.5 + C^0.5}
 x3 = ±{A^0.5−B^0.5 + C^0.5}
 x4 = ±{A^0.5 + B^0.5−C^0.5}

となる。(複号はそれぞれb>0,b<0に対応する)

こうなる理由について

   上の4次方程式を変形して、
   (x2 + L x + M)(x2 - Lx + N ) = 0
   とすれば、2次方程式の解の公式で解けるようになる。
   この式中のL, M, Nをa, b, cで表すべく計算を進めると、
   結局、上の3次方程式に行き着くようである。

コラム一覧へもどる