跳转至

一元高次方程的求解

一元二次方程

一元二次方程(quadratic equation of one unknown),简称二次方程(quadratic equation),可以用完全平方公式\(a^2+b^2+2ab=(a+b)^2\)求出方程的解。对于一个一般的一元二次方程

\[ ax^2+bx+c=0 \]

其中\(a,b,c \in \mathbb{C}\)\(a\ne0\),我们下面尝试将其配为完全平方式。

首先将方程两边除以\(a\)得:

\[ x^2+\frac{b}{a}x+\frac{c}{a}=0, \]

然后在两边减去\(c/a\)再加上\((b/2a)^2\)得:

\[ x^2+\frac{b}{a}x+\left(\frac{b}{2a}\right)^2=\left(\frac{b}{2a}\right)^2-\frac{c}{a}, \]

左边利用完全平方公式可得:

\[ \left(x+\frac{b}{2a}\right)^2=\frac{b^2-4ac}{\left(2a\right)^2}, \]

两边开平方,有:

\[ x+\frac{b}{2a}=\pm\frac{\sqrt{b^2-4ac}}{2a}, \]

最后两边减去\(b/2a\)得:

\[ x=\frac{-b\pm\sqrt{b^2-4ac}}{2a}. \]

此即一元二次方程的求根公式。

对于实系数的一元二次方程,注意到公式中有开根号的部分,我们将根号内的部分\(b^2-4ac\)称为判别式,记作希腊字母\(\Delta\)。根据\(\Delta\)的符号,我们可以做以下讨论:

  • \(\Delta\ge0\)时,方程有实数根;
    • \(\Delta>0\)时,方程有两个不等的实数根;
    • \(\Delta=0\)时,方程有一个二重根;
  • \(\Delta<0\)时,方程无实数根,但可解出两个共轭复数\(\alpha\pm \beta\mathrm{i}\)(其中\(\alpha=-b/2a,\beta=\sqrt{-\Delta}/2a\))。

一元三次方程

一元三次方程(Cubic equation of one unknown)的求解比一元二次方程复杂得多。

一元三次方程的基本形式为:

\[ ax^3+bx^2+cx+d=0 \]

(其中\(a,b,c,d\in\mathbb C,a\ne0\))。我们先在两边除以\(a\),得到三次项的系数为\(1\)的方程:

\[ x^3+b'x^2+c'x+d'=0 \]

(其中\(b'=b/a,c'=c/a,d'=d/a\))。令方程的左边为\(f(x)\),则\(f(x)\)是一个三次函数。

在实数范围内,三次函数的图像有一个拐点,且图像关于拐点中心对称,这启示我们可以通过平移变换来进一步化简方程。

\(f''(x)=6x+2b'=0\)\(x=-b'/3\)。我们可以将函数图像往右平移\(b'/3\),令\(x=z-b'/3\)有:

\[ \left(z-\frac{b'}{3}\right)^3+b'\left(z-\frac{b'}{3}\right)^2+c'\left(z-\frac{b'}{3}\right)+d'=0, \]

展开得:

\[ g(z)=z^3+pz+q=0 \]

(其中\(p=c'-b'/3,q=2(b')^3/27-b'c'/3+d\))。于是,我们得到了一个缺二次项的一元三次方程,问题归结为解这个一元三次方程。

\(q=0\vee p=0\),则原方程的解是显然的(由因式分解定理很容易看出来)。以下我们讨论\(q\ne0 \land p\ne0\)的情形。

引入两个新的未知数\(z=u+v\),我们注意到有:

\[ z^3=(u+v)^3=u^3+3u^2v+3uv^2+v^3=u^3+v^3+3uv(u+v)=u^3+v^3+3uvz, \]

或者写为:

\[ z^3-3uvz-(u^3+v^3)=0. \]

于是,我们将上式与\(g(z)\)的形式比较,得到:

\[ \begin{cases} uv=-\displaystyle \frac{p}{3},\\ u^3+v^3=-q;\\ \end{cases} \]

将第一个等式两边立方得:

\[ \begin{cases} u^3v^3=-\displaystyle \frac{p^3}{27},\\ u^3+v^3=-q;\\ \end{cases} \]

上式和Vieta定理的形式很相似,我们利用Vieta定理,将\(u^3,v^3\)看作二次方程\(y^2+qy-p^3/27=0\)的两个根。

于是,这个二次方程的判别式为:

\[ \Delta=\left(\frac{p}{3}\right)^2+\left(\frac{q}{2}\right)^2, \]

解这个二次方程得:

\[ u^3,v^3=-\frac{q}{2}\pm\sqrt{\left(\frac{p}{3}\right)^2+\left(\frac{q}{2}\right)^2} =\frac{q}{2}\pm\sqrt{\Delta}; \]

在复数域下,\(u,v\)可取到到六个解:

\[ u,v=\omega^i\sqrt[3]{\frac{q}{2}\pm\sqrt{\Delta}} \]

(其中\(i\)可取\(0,1\)\(2\),与后面正负号组合得到\(2\times3=6\)个解)。

此时由\(z=u+v\)可取得根\(z\)的21中可能情况。

不过,我们知道\(g(z)\)实际上只有3个根,而这里出现了21种可能,这说明有些情况不是\(g(z)=0\)的解。由三次方程的Vieta定理,有:

\[ \begin{cases} z_1+z_2+z_3=0,\\ z_1z_2+z_2z_3+z_3z_1=p,\\ z_1z_2z_3=-q;\\ \end{cases} \]

代入验证(也可以直接代入原方程),我们可以排除其中的几种情况,剩下3个解,为:

\[ \begin{cases} z_1=\sqrt[3]{\frac{q}{2}+\sqrt{\Delta}}+\sqrt[3]{\frac{q}{2}-\sqrt{\Delta}},\\ z_2=\omega\sqrt[3]{\frac{q}{2}+\sqrt{\Delta}}+\omega^2\sqrt[3]{\frac{q}{2}-\sqrt{\Delta}},\\ z_3=\omega^2\sqrt[3]{\frac{q}{2}+\sqrt{\Delta}}+\omega\sqrt[3]{\frac{q}{2}-\sqrt{\Delta}}; \end{cases} \]

上面这个公式也称为Cardan公式

得到\(g(z)=0\)的3个根之后,我们再令\(x_i=z_i-b'/3=z_i-b/3a\),得到原方程\(ax^3+bx^2+cx+d=0\)的三个根。

一元四次方程

一元四次方程(Quartic equation of one unknown)的解法也需要基于一元三次方程。以下我们提供一元四次方程的Ferrari解法

对于一般的一元四次方程\(ax^4+bx^3+cx^2+dx+e=0(a,b,c,d,e\in\mathbb C,a\ne0)\),我们在方程的两边除以\(a\),再做平移\(x=z-b/4a\)\(-b/4a\)\(f'''(x)=0\)的零点),得到如下形式:

\[ g(z)=z^4+pz^2+qz+r=0. \]

\(q=0\),则这可以看作是一个关于\(z^2\)的二次方程,因此很容易求出它的解。下面我们讨论\(q\ne0\)的情况。

引入一个参数\(u\)。为使\(g(z)\)能因式分解,在上式插入\(uz^2+u^2/4\)一项,得到:

\[ \left(z^4+uz^2+\frac{u^2}{4}\right)-\left[(u-p)z^2-qz+\frac{u^2}{4}-r\right]=0. \]

上式的第一个括号是完全平方,如果第二个括号也是一个完全平方,我们就可以利用平方差公式,因式分解为两个二次多项式的乘积。第二个括号是完全平方的条件为:

\[ \Delta=q^2-4(u-p)\left(\frac{u^2}{4}-r\right)=0, \]

这是一个关于\(u\)的三次方程,称为一元四次方程的预解式

由预解式解出一个\(u\)后,一元四次方程可因式分解为两个一元二次方程。从方程解出\(z\),再代回变换\(x=z-a/4\),就得到四次方程的解。

而注意到,虽然由预解式可以得到\(u\)的3个解,但由因式分解定理,四次方程的因式分解结果一定是唯一的。所以,代入不同的\(u\)只影响因式分解的过程,而不影响因式分解的结果,所以也不影响方程的解。

五次以上方程

一般地,多项式\(p(x)=a_0+a_1x+\cdots+a_nx^n(n\ge1)\)求根公式,就是将根表示为关于多项式系数的函数:

\[ (x_1,\dots,x_n)=\vec{f}(a_0,a_1,\dots,a_n). \]

前面有关2、3、4次方程的求根公式,均是将根表示为了系数的函数。

根据代数基本定理(Fundamental theorem of algebra),\(n\)次多项式在复数域\(\mathbb{C}\)上必有\(n\)个根(重根按重数计算)。所以,5次及以上的方程,它的根是必定存在的。不过,可以发现,虽然我们在代数基本定理证明了根的存在,但却没有给出求根公式或者根的算法。

历史上,5次方程和5次以上方程的解法,经过了很长时间的探索。直到1830s,法国数学家Galois在研究这一问题的过程提出了群论(Group theory),并借助群理论证明了5次以上方程的解不可能用有限次四则运算和开根号表示

积分学中,许多初等函数的积分无法用初等函数表示;而代数学中,五次以上的方程也无法用四则运算和根式表示。它们的本质原因,都是一个人为规定的集合(如初等函数)太过狭小,不足以涵盖所有的情况。

正因为多项式的根无法直接求出,我们才要研究更多一元多项式理论,例如用辗转相除法求最大公因式,用导数和高阶导数判断多项式的根,以及研究有理系数多项式的求根方法,等等。