跳到主要内容

求根公式

· 阅读需 12 分钟
lailai
学生 & 开发者

多项式方程的求根公式和推导过程。

参考资料

约定

为便于理解,本文约定:

  1. 所有的方程都是一元多项式方程,即只有一个未知数。
  2. 在我看来“多项式”这个术语有些歧义:教科书中单项式与多项式统称为“整式”,多项式至少要有两项;但很多时候我们讨论多项式并不会刻意把只有一项的情形排除在外,换言之整式这个术语经常会被多项式给夺舍。

引入

在初中阶段,我们学习了二次方程的求根公式,但之后就没有再讲过高次方程的求根公式。

伽罗瓦理论 指出,对于一般五次以及五次以上的方程,不存在一般的代数解,即五次方程没有求根公式。

那么,三次方程和四次方程的求根公式是什么呢?它们是如何推导出来的?

基础知识

代数基本定理

任何一个复系数多项式方程至少有一个复数根。(注意:实数也属于复数)

f(x)f(x)nn 次复系数多项式,根据代数基本定理,它至少有一个根 x1x_1

因此根据 因式定理f(x)f(x) 可表示为:

f(x)=(xx1)g(x)f(x)=(x-x_1)g(x)

其中,g(x)g(x) 是一个 n1n-1 次复系数多项式。

反复使用这一拆分过程,最终可以将 f(x)f(x) 完全因式分解为 nn 个一次多项式的乘积。

因此,该定理还有另外两种等价描述:

  1. 任何一个 nn 次复系数多项式,都正好有 nn 个复数根(重根视为多个根)。
  2. 任何一个 nn 次复系数多项式,都可以因式分解为 nn 个复系数一次多项式的乘积。

韦达定理

韦达定理 描述了 多项式方程系数 之间的关系。

设多项式 f(x)f(x)nrn-r 次项系数为 anra_{n-r},即:

f(x)=anxn+an1xn1++a1x+a0=r=0nxnranrf(x)=a_nx^n+a_{n-1}x^{n-1}+\dots+a_1x+a_0= \sum_{r=0}^n x^{n-r}a_{n-r}

对于第二种等价描述,设 f(x)f(x)nn 个根分别为 x1,x2,,xnx_1,x_2,\dots,x_n,则:

f(x)=an(xx1)(xx2)(xxn)=0f(x)=a_n(x-x_1)(x-x_2)\dots(x-x_n)=0

代入任意根 xix_i,均有 f(xi)=0f(x_i)=0,方程显然成立。

通过这个定理可以轻松推导出 韦达定理

将因式分解式展开:

f(x)=an(xx1)(xx2)(xxn)=xnan+xn1an(x1x2xn)+xn2an(x1x2+x1x3++x1xn+x2x3++xn1xn)++xnran[1i1<i2<<ir1<irn(xi1)(xi2)(xir1)(xir)]++an(1)n(x1x2xn)=r=0nxnran(1)r(xi1xi2xir1xir)\begin{aligned} f(x) &= a_n(x-x_1)(x-x_2)\dots(x-x_n) \\ &= x^n \cdot a_n \\ &+ x^{n-1} \cdot a_n (-x_1-x_2-\dots-x_n) \\ &+ x^{n-2} \cdot a_n (x_1x_2+x_1x_3+\dots+x_1x_n+x_2x_3+\dots+x_{n-1}x_n) \\ &+ \dots \\ &+ x^{n-r} \cdot a_n \left[\sum_{1\le i_1<i_2<\dots<i_{r-1}<i_r\le n}(-x_{i_1})(-x_{i_2})\dots(-x_{i_{r-1}})(-x_{i_r})\right] \\ &+ \dots \\ &+ a_n(-1)^n(x_1x_2\dots x_n) \\ &= \sum_{r=0}^n x^{n-r}a_n(-1)^r\left(\sum x_{i_1}x_{i_2}\dots x_{i_{r-1}}x_{i_r}\right) \end{aligned}

因为多项式每一项系数相等,整理得:

anr=an(1)r(xi1xi2xir1xir)a_{n-r}=a_n(-1)^r\left(\sum x_{i_1}x_{i_2}\dots x_{i_{r-1}}x_{i_r}\right)

最终结论:

xi1xi2xir1xir=(1)ranran\sum x_{i_1}x_{i_2}\dots x_{i_{r-1}}x_{i_r}=(-1)^r\frac{a_{n-r}}{a_n}

这就是系数与根的对称关系,也就是韦达定理的内容。

一次方程

一般形式

ax+b=0(a0)ax+b=0\left(a \ne 0 \right)

推导过程

最高项归一

方程两边同时除以 aa,使最高次项系数化为 11

x+ba=0(a0)x+\frac{b}{a}=0\left(a \ne 0 \right)

整理

移项:

x=bax=-\frac{b}{a}

求根公式

x=bax=-\frac{b}{a}

二次方程

一般形式

ax2+bx+c=0(a0)ax^2+bx+c=0\left(a \ne 0 \right)

推导过程

最高项归一

方程两边同时除以 aa,使最高次项系数化为 11

x2+bax+ca=0x^2+\frac{b}{a}x+\frac{c}{a}=0

思想

对于一般的二次方程,如果注意力涣散,很难瞪出求根公式。

但如果没有一次项:

x2+t=0x^2+t=0

解方程就变得非常容易:

x=±tx=\pm\sqrt{-t}

因此我们可以通过 换元法 消除一次项。

次高项归零

令:

xx0b2ax\gets x_0-\frac{b}{2a}

代入:

(x0b2a)2+ba(x0b2a)+ca=0\left(x_0-\frac{b}{2a}\right)^2+\frac{b}{a}\left(x_0-\frac{b}{2a}\right)+\frac{c}{a}=0

展开:

(x02bx0a+b24a2)+(bx0ab22a2)+ca=0\left(x_0^2-\frac{bx_0}{a}+\frac{b^2}{4a^2}\right)+\left(\frac{bx_0}{a}-\frac{b^2}{2 a^2}\right)+\frac{c}{a}=0

化简:

x02+cab24a2=0x_0^2+\frac{c}{a}-\frac{b^2}{4a^2}=0 x0=±b24ac4a2x_0=\pm\sqrt{\frac{b^2-4ac}{4a^2}}

还原:

x=±b24ac2ab2ax=\pm\frac{\sqrt{b^2-4ac}}{2a}-\frac{b}{2a}

配方法

以上推导方法为 换元法,还可以使用 配方法 推导。

配方法

移项:

x2+bax=cax^2+\frac{b}{a}x=-\frac{c}{a}

通过 配方法,使方程左边变为一个完全平方式。方程两边同时加上 (b2a)2\left(\frac{b}{2a}\right)^2

x2+bax+(b2a)2=ca+(b2a)2x^2+\frac{b}{a}x+\left(\frac{b}{2a}\right)^2=-\frac{c}{a}+\left(\frac{b}{2a}\right)^2

化简:

(x+b2a)2=b24ac4a2\left(x+\frac{b}{2a}\right)^2=\frac{b^2-4ac}{4a^2}

将平方转化为开根:

x+b2a=±b24ac4a2x+\frac{b}{2a}=\pm\sqrt{\frac{b^2-4ac}{4a^2}}

移项:

x=±b24ac2ab2ax=\pm\frac{\sqrt{b^2-4ac}}{2a}-\frac{b}{2a}

整理

解得:

x=b±b24ac2ax=\frac{-b\pm\sqrt{b^2-4ac}}{2a} x1=b+b24ac2a,x2=bb24ac2ax_1=\frac{-b+\sqrt{b^2-4ac}}{2a},x_2=\frac{-b-\sqrt{b^2-4ac}}{2a}

求根公式

x1=b+b24ac2a,x2=bb24ac2ax_1=\frac{-b+\sqrt{b^2-4ac}}{2a},x_2=\frac{-b-\sqrt{b^2-4ac}}{2a}

分类讨论

令判别式:

Δ=b24ac\Delta=b^2-4ac

Δ>0\Delta>0,有两个不等实数根:

x1=b+Δ2a,x2=bΔ2ax_1=\frac{-b+\sqrt{\Delta}}{2a},x_2=\frac{-b-\sqrt{\Delta}}{2a}

Δ=0\Delta=0,有两个相等实数根:

x1=x2=b2ax_1=x_2=-\frac{b}{2a}

Δ<0\Delta<0,有两个共轭复数根:

x1=b2a+Δ2ai,x2=b2aΔ2aix_1=-\frac{b}{2a}+\frac{\sqrt{-\Delta}}{2a}i,x_2=-\frac{b}{2a}-\frac{\sqrt{-\Delta}}{2a}i
注意

根的判别式不适用于非实系数的二次方程。

三次方程

一般形式

ax3+bx2+cx+d=0(a0)ax^3+bx^2+cx+d=0\left(a \ne 0 \right)

推导过程

最高项归一

方程两边同时除以 aa,使最高次项系数化为 11

x3+bax2+cax+da=0x^3+\frac{b}{a}x^2+\frac{c}{a}x+\frac{d}{a}=0

思想

二次方程求根公式推导的核心,在于如何通过配方把平方转化为开根。

但三次方程无法直接配方,要先用换元法消除二次项。

次高项归零

令:

xx0b3ax\gets x_0-\frac{b}{3a}
为什么是 b3a-\frac{b}{3a}

设三次函数:

f(x)=ax3+bx2+cx+df(x)=ax^3+bx^2+cx+d

设:

xx0+tx\gets x_0+t

代入方程:

(x0+t)3+ba(x0+t)2+ca(x0+t)+da=0\left(x_0+t\right)^3+\frac{b}{a}\left(x_0+t\right)^2+\frac{c}{a}\left(x_0+t\right)+\frac{d}{a}=0

展开:

(x03+3tx02+3t2x0+t3)+(bx02a+2btx0a+bt2a)+(cx0a+cta)+da=0\left(x_0^3+3tx_0^2+3t^2x_0+t^3\right)+ \left(\frac{bx_0^2}{a}+\frac{2btx_0}{a}+\frac{bt^2}{a}\right)+ \left(\frac{cx_0}{a}+\frac{ct}{a}\right)+ \frac{d}{a}=0

化简:

x03+(3t+ba)x02+(3t2+2bta+ca)x0+(t3+bt2a+cta+da)x_0^3+\left(3t+\frac{b}{a}\right)x_0^2+\left(3t^2+\frac{2bt}{a}+\frac{c}{a}\right)x_0+\left(t^3+\frac{bt^2}{a}+\frac{ct}{a}+\frac{d}{a}\right)

要让二次项系数 3t+ba=03t+\frac{b}{a}=0,可以令:

t=b3at=-\frac{b}{3a}

代入:

(x0b3a)3+ba(x0b3a)2+ca(x0b3a)+da=0\left(x_0-\frac{b}{3a}\right)^3+\frac{b}{a}\left(x_0-\frac{b}{3a}\right)^2+\frac{c}{a}\left(x_0-\frac{b}{3a}\right)+\frac{d}{a}=0

展开:

x03+(cab23a2)x0+(2b327a3bc3a2+da)=0x_0^3+\left(\frac{c}{a}-\frac{b^2}{3a^2}\right)x_0+\left(\frac{2b^3}{27a^3}-\frac{bc}{3a^2}+\frac{d}{a}\right)=0

令:

p=cab23a2,q=2b327a3bc3a2+dap=\frac{c}{a}-\frac{b^2}{3a^2},q=\frac{2b^3}{27a^3}-\frac{bc}{3a^2}+\frac{d}{a}

此时方程的最高次项系数为 11,并消除了二次项:

x03+px0+q=0x_0^3+px_0+q=0

x0=u+vx_0=u+v,代入:

(u+v)3+p(u+v)+q=0(u+v)^3+p(u+v)+q=0

展开:

u3+v3+3uv(u+v)+p(u+v)+q=0u^3+v^3+3uv(u+v)+p(u+v)+q=0 u3+v3+(3uv+p)(u+v)+q=0u^3+v^3+(3uv+p)(u+v)+q=0

为了让它成立,可以令:

{u3+v3=q3uv+p=0uv=p3\begin{cases} u^3+v^3=-q \\ 3uv+p=0 \Rightarrow uv=-\frac{p}{3} \end{cases}

U=u3,V=v3U=u^3,V=v^3,代入:

{U+V=qUV=(p3)3\begin{cases} U+V=-q \\ UV=(-\frac{p}{3})^3 \end{cases}

因此 UUVV 是如下二次方程的两个根:

X2+qXp327=0X^2+qX-\frac{p^3}{27}=0

解得:

U,V=X1,X2=q±q2+4p3272=q2±(q2)2+(p3)3U,V=X_1,X_2=\frac{-q\pm\sqrt{q^2+\frac{4p^3}{27}}}{2}=-\frac{q}{2}\pm\sqrt{\left(\frac{q}{2}\right)^2+\left(\frac{p}{3}\right)^3}

令:

U=q2+(q2)2+(p3)3U=-\frac{q}{2}+\sqrt{\left(\frac{q}{2}\right)^2+\left(\frac{p}{3}\right)^3} V=q2(q2)2+(p3)3V=-\frac{q}{2}-\sqrt{\left(\frac{q}{2}\right)^2+\left(\frac{p}{3}\right)^3}

还原:

u=U3=q2+(q2)2+(p3)33u=\sqrt[3]{U}=\sqrt[3]{-\frac{q}{2}+\sqrt{\left(\frac{q}{2}\right)^2+\left(\frac{p}{3}\right)^3}} v=V3=q2(q2)2+(p3)33v=\sqrt[3]{V}=\sqrt[3]{-\frac{q}{2}-\sqrt{\left(\frac{q}{2}\right)^2+\left(\frac{p}{3}\right)^3}}

解得:

x0=u+v=U3+V3x_0=u+v=\sqrt[3]{U}+\sqrt[3]{V}

还原:

x1=u+vb3a,x2=ωu+ω2vb3a,x3=ω2u+ωvb3ax_1=u+v-\frac{b}{3a},x_2=\omega u+\omega^2 v-\frac{b}{3a},x_3=\omega^2 u+\omega v-\frac{b}{3a}
提示

由于 u3,v3u^3,v^3 是共轭复数,引入单位根 ω=1+3i2\omega = \frac{-1+\sqrt{3}i}{2} 可得到其余两个复根。

求根公式

p=cab23a2,q=2b327a3bc3a2+dap=\frac{c}{a}-\frac{b^2}{3a^2},q=\frac{2b^3}{27a^3}-\frac{bc}{3a^2}+\frac{d}{a} u=q2+(q2)2+(p3)33,v=q2(q2)2+(p3)33u=\sqrt[3]{-\frac{q}{2}+\sqrt{\left(\frac{q}{2}\right)^2+\left(\frac{p}{3}\right)^3}},v=\sqrt[3]{-\frac{q}{2}-\sqrt{\left(\frac{q}{2}\right)^2+\left(\frac{p}{3}\right)^3}} x1=u+vb3a,x2=ωu+ω2vb3a,x3=ω2u+ωvb3ax_1=u+v-\frac{b}{3a},x_2=\omega u+\omega^2 v-\frac{b}{3a},x_3=\omega^2 u+\omega v-\frac{b}{3a}

分类讨论

根据 介值定理 三次方程至少有一个实数根:

介值定理:假设 f:[a,b]Rf:[a,b]\to \mathbb{R} 为一连续函数。若一实数 uu 满足 (f(a)u)(f(b)u)0(f(a)-u)(f(b)-u)\le0,则存在一实数 c[a,b]c \in [a,b] 使得 f(c)=uf(c)=u

令判别式:

Δ=18abcd4b3d+b2c24ac327a2d2\Delta=18abcd-4b^3d+b^2c^2-4ac^3-27a^2d^2

Δ>0\Delta>0,有三个不相等实数根。

Δ=0\Delta=0,有实数重根(即至少两个实根相等)。

Δ<0\Delta<0,有一个实根和两个共轭复根。

四次方程

一般形式

ax4+bx3+cx2+dx+e=0(a0)ax^4+bx^3+cx^2+dx+e=0\left(a \ne 0 \right)

推导过程

最高项归一

方程两边同时除以 aa,使最高次项系数化为 11

x4+bax3+cax2+dax+ea=0x^4+\frac{b}{a}x^3+\frac{c}{a}x^2+\frac{d}{a}x+\frac{e}{a}=0

次高项归零

同二次、三次方程,令:

xx0b4ax\gets x_0-\frac{b}{4a}

代入:

(x0b4a)4+ba(x0b4a)3+ca(x0b4a)2+da(x0b4a)+ea=0\left(x_0-\frac{b}{4a}\right)^4+\frac{b}{a}\left(x_0-\frac{b}{4a}\right)^3+\frac{c}{a}\left(x_0-\frac{b}{4a}\right)^2+\frac{d}{a}\left(x_0-\frac{b}{4a}\right)+\frac{e}{a}=0

展开:

x04+(8ac3b28a2)x02+(b34abc+8a2d8a3)x0+3b4+16ab2c64a2bd+256a3e256a4=0x_0^4+\left(\frac{8ac-3b^2}{8a^2}\right)x_0^2+\left(\frac{b^3-4abc+8a^2d}{8a^3}\right)x_0+\frac{-3b^4+16ab^2c-64a^2bd+256a^3e}{256a^4}=0

令:

p=8ac3b28a2,q=b34abc+8a2d8a3,r=3b4+16ab2c64a2bd+256a3e256a4p=\frac{8ac-3b^2}{8a^2},q=\frac{b^3-4abc+8a^2d}{8a^3},r=\frac{-3b^4+16ab^2c-64a^2bd+256a^3e}{256a^4}

此时方程的最高次项系数为 11,并消除了三次项:

x04+px02+qx0+r=0x_0^4+px_0^2+qx_0+r=0

五次及以上方程

伽罗瓦理论指出,对于一般五次以及五次以上的方程,不存在一般的代数解。

大多数五次方程的根无法通过加、减、乘、除和开方来表示。