Pages

Thursday, 30 March 2023

一般一元五次(及以上)方程无求根公式的直观解释

 

前言

记得中学学方程的时候老师提到过高次方程的可解性问题,那时候我满脑子想的是上课怎么睡觉不会让老师发现和下课怎么和隔壁班的美女偶遇,对这种事情自然不会放在心上。然而命运和人性就是这么捉摸不定,在远离了课堂和考试之后,我发现自己对这种问题越来越感兴趣了……

知乎上 这个问题 出现在我时间线后,我看完了下面的每一个答案,用心的超长答案不少,给的一些链接也是干货满满。其中我觉得最认真的回答是匡世珉的这个回答,(我能看懂的)最严肃的回答是韩京俊写的一篇论文,最直观易懂的是姜子麟的这个回答,最生动的是一个 YouTube 上的视频,最全面的回答是一个三百多页的英文 pdf,来自 V.I. Arnold 的课程讲义(我只看了看目录。。)
其中韩京俊、姜子麟和 YouTube 上的视频用的都是同样的方法,本文也将使用这种方法来解释。

说到 V.I. Arnold,这位可是个传说级的俄国数学家,「数学直觉主义」代表人物,对形式化的公理证明不屑一顾(@罗素 和他的数学原理。。),认为数学是物理的一部分,对剥离了与物理世界的联系、剔除了直观感觉的纯粹抽象的数学深恶痛绝。这里有一篇他犀利的演讲,感兴趣的读者可以看看演讲的 英文译文中文译文

言归正传,既然这个问题已经有这么多答案了,为什么还会有这篇文章呢?

因为这些回答有些公式多得让人眼花头疼,有些专用术语深奥得只能让本来就懂这个定理的人看懂,有的通俗易懂却偏偏缺失了关键地方的证明……我绝不敢说这篇文章能答得比这些答案好,但我承诺本文尽量不用超出中学水平的数学公式,尽量让最多的人能够看懂。
有些数学证明可以不用公式甚至不用文字就能让人看懂(比如余弦定理的无字证明),恰好的是,这个定理也堪堪让人不用公式就能理解其证明。

其实,这个问题在两百年前就已经被人类解决了,定理的名字叫做阿贝尔-鲁菲尼定理

问题的研究开始于大名鼎鼎的拉格朗日,(半)证明于鲁菲尼,完证于阿贝尔,升华于伽罗华。其中过程大家可以阅读北大院士丁伟岳写的一篇文章。阿贝尔和伽罗华都是两个颇具悲剧色彩的天才,都死于二十几岁,他们的思想因为超前于时代而生前不为人所重视,死后人们才渐渐发现其过人之处。特别是伽罗华,人们常把他创建的群论看作 19 世纪最伟大的数学成就,如果他不是 21 岁就死于一场决斗,他所能取得的成就将无法想象。感兴趣的读者可以搜索了解这些人的生平。

当然,大家也不要忘记,是拉格朗日首先意识到根的置换起到的重要作用,开辟了这项研究的康庄大道,并提出了一般高次(五次及以上)方程没有求根公式的猜测(背景是人们发现一元三次及四次方程的求根公式后几百年内都没能发现五次及以上方程的求根公式)。

正如文章题目所说,本文利用现代浏览器的高级功能,给出了这个定理的直观(动画)解释,读者甚至可以自己动手尝试和验证。为了确保文中的动画能够正常运行,请读者使用 PC 或 Mac 上的的现代浏览器(如 Chrome, Firefox, Safari 等)浏览本文。

本文主要参照的是姜子麟的回答,甚至可以说是那篇回答的补充说明。

复数的几何意义

如果读者已经理解了复数的几何意义,可跳过本章。

Q:为什么要引入复数,难道就不能在实数范围内好好玩耍吗。。
A:还真不能,后面会给出原因。

本文绝不会提到一个数的平方竟然会等于 -1 这么反人类的事。

我们先来定义一种结构和两个运算(不要被唬住了,都是很简单的运算)
一种结构(a,b,c,d 都是实数):
(a, b)
两个运算:
「加法」: (a, b) + (c, d) = (a+c, b+d)
「乘法」: (a, b) · (c, d) = (ac-bd, ad+bc)

Q:为啥要定义这么稀奇古怪的结构和运算?
A:别急,后面会有说明。

大家一定会觉得第一个运算十分眼熟,这不就是向量的加法吗!可是第二个运算是什么东西,为啥结果不是 ac + bd

管它是啥,带入几个简单的数字算算再说。
(1, 1) · (2, 1) = (1*2-1*1, 1*1+1*2) = (1, 3)

有点意思,把这几个数画到坐标系上看看,括号中前面的数字对应水平轴上的取值,后面的数字对应竖直轴的取值。


 似乎看不出什么明显规律?不过 (1, 1)的平方和乘以(2, 1)的平方和刚好等于(1, 3)的平方和。。
另外注意三条线段和水平轴之间的夹角,会不会两条橙色线段与水平轴的夹角之和等于蓝色线段与水平轴的夹角? 我们先来验证平方和:

关于夹角我们再举一个例子看看:
(1, 1) · (1, 1) = (0, 2)


 
两个45度角加起来刚好等于90度角! 大胆假设后,值得我们求证一下了,由于我们只知道点的坐标而不知道角度,有必要请出三角函数来: 

需要注意的是,此处证明并不严谨,因为 y = tan(x) 是一个周期函数,在一个周期内才是单调函数。对于超出一个周期的情况,需要进行分类讨论,在此不做赘述,后面直接给出结论。

也可以参考这篇文章

Q:可是,这些东西又有什么用?
A:把上述所有形如 (a, b) 的结构全部换成 a + bi,恭喜你,你已经理解了复数的几何意义

诉诸语言的话:
如果把每一个复数看作是 x 轴为实部,y 轴为虚部的坐标系中的一个向量,那么

  • 复数的加法就是向量的加法
  • 复数的乘法得出的结果所代表的向量,其模长等于两乘数的模长之积,其与实数轴的夹角等于两乘数与实数轴的夹角之和。

注意,这里我们所说的夹角,就像三角函数里的 θ,表示以 x 轴正半轴为起点,逆时针旋转 θ 度,结果与向量方向重合。

最漂亮的是,我们定义的运算和我们曾经学过的实数运算法则完全相容,也就是说,如果把以前所有学过的实数运算统统改成 (a, 0) 这种结构的运算,结果全都等价!

比如:
1 + 1 = 2 对应 (1, 0) + (1, 0) = (2, 0)
2 * 3 = 6 对应 (2, 0) · (3, 0) = (6-0, 0+0) = (6, 0)

而且,我们定义的运算同样满足分配律和结合律!感兴趣的读者可以拿纸笔检验一下。
思考题: 减法和除法怎么办?

根号对复数的作用

√2 到底代表什么意思?

如果用中学老师教给我们的知识,我们知道它是一个平方等于 2 的无理数,其小数表达是 1.414...

可它为什么不能代表 -1.414... ?

因为老师说它就是这么定义的。。

已知 x^2 = 2,请问 x 等于多少?

在实数范围内,显然有两个数满足这个条件,分别是 √2 和 -√2。

如果拓展到复数呢?

有哪些复数(所代表的向量),它乘以自身后会落在 (2, 0)这个点?
这些复数必须满足以下条件:

  • 它代表的向量与实数轴的夹角的两倍为 0(或 2π 的整数倍)
  • 它代表的向量的模长的平方等于 (2^2+0^2)^(1/2) = 2

依然只有两个数(向量)满足这个条件,分别是 (√2, 0) 和 (-√2, 0),前者与实数轴的夹角为 0,两倍还是 0; 后者为 π,两倍后为 2π

1 的四分之一次方在复数域是什么意思?

它代表了这么一个(些)数,这个数的四次方等于 (1, 0)
即这个数所代表的向量应满足:

  • 向量的模长等于 1
  • 向量与实数轴的夹角的 4 倍为 2π 的整数倍

以下四个数满足此条件:


 

在复数域,给定一个数 a,a 的 (1/n) 次方(a 开 n 次方)的结果是这么一些数:

  • 这些数落在以圆心为原点的某个圆上,这个圆的半径的 n 次方等于 a 的模长
  • 这些数所代表的向量与实数轴之间的夹角的 n 倍等于数 a 所代表的向量夹角(加上 2π 的整数倍)
  • 可以很容易就得出一个推论:这些数把这个圆的圆周分成 n 等份

不知道读者有没有这样一种感觉:中学学到的实数域开根号其实「很差劲」,结果「不完整」,√a 竟然只落在数轴的正半边,而且 a 还不能小于 0。要表示平方等于 2 的数竟然还需要在 √2 前面加个正负号!

如果用我们在复数域的定义,问题完美解决,√a 本身就蕴含了所有可能的解,而且我们完全不用管 a 的取值范围!

根的置换

「置换」: 位置的变换

好了,基础知识已经补充完毕,读者可以直接打开姜子麟的回答(必读),如果读者直接看懂了那篇回答,那就可以不用回来了,该干啥干啥去吧……或者你也可以看看下面动画的直观演示。

如果没看懂或者有些地方不清楚,可以看看本文接下来的部分有没有解答。

首先让我引用一段姜子麟回答中的原话,明确我们要讨论的问题:


本文接下来的讨论默认都是在复数域

考虑方程 ax^2 + bx + c = 0 (a 不等于 0)
还记得我们曾经背得滚瓜烂熟的求根公式吗?


注意,我们是在复数域中讨论求根公式!所以根号本身就代表了所有可能的解,不需要再画蛇添足地添加正负号了!

我们发现,方程的根竟然只跟等式左边多项式的系数有关!在读者吐槽这不是显然的吗之前,请细想一下,这真的是显然的吗?

对于任何一元二次方程 ax^2 + bx + c = 0 (a 不等于 0)
我们都可以将等式两边同时除以 a,消去一个变量,化成形如
x^2 + dx + e = 0 的方程。所以我们只需要考虑

x^2 + dx + e = 0

我们假设求得的两个根分别是 x1, x2,那么必然有
0 = (x - x1)(x - x2)
= x^2 - (x1 + x2)x + x1x2
= x^2 + dx + e

虽然从上面几乎可以断定 d 和 e,但是谨慎起见,根据韦达定理,我们有

d = -(x1 + x2)
e = x1 * x2

我们发现: 方程左边多项式的系数只和方程的根有关!

我们结合一下两个发现:

  • 方程的根只和方程左边多项式的系数有关
  • 方程左边多项式的系数只和方程的根有关

得出推论: 方程的根只和方程的根有关。(这回是真的显然了)

……等等,这不是死循环了吗。。
别急,我们再来观察一下 d 和 e

注意到: 如果把 x1 和 x2 交换位置,d 和 e 的值不变!

这是巧合,还是必然?
我们回到最开始的 (x - x1)(x - x2)
根据乘法的交换律它完全可以写成 (x - x2)(x - x1) 嘛!

换句话说,交换 x1 和 x2 的位置对这个表达式没有丝毫影响!
也就是说,x1 和 x2 置换后,d 和 e 不变。
对于更高次的方程也是同理,再乘以 (x - x3)(x - x4)...同样满足乘法的交换律。

Excited! 我们已经掌握理解这个定理的钥匙了!

在继续下一步之前,我们回顾一下已经掌握的信息:

  • 方程的求根公式只和方程左边的多项式系数有关
  • 这些系数在方程根的置换下保持不变

Q: 我们先来思考这样一个问题:如果方程的求根公式不准用根号,会发生什么?
A: 如果不用根号,那么一个表达式只能求出一个值,也就是说一个求根公式只能得出一个固定的值(点)。

好,我们假设对于一个一元n次方程(n>=2),我们已经知道了其中一个根的求根公式 x1 = (某个由多项式系数加减乘除组成的表达式)

根据以上条件,我们知道:

  • x1 由这个方程的系数唯一确定
  • 这个方程的系数在方程根的置换下保持不变

于是几乎立刻就能得出矛盾:
如果把 x1 和 x2 所对应的两个点移动置换,那么在 x1 向着 x2 移动(同时 x2 也在向着 x1 移动)的过程中,方程的系数(由方程的根决定)在不断发生变化,而由方程的系数组成的求根公式也在不断发生变化。

如果这个求根公式是正确的话,那么我们期望这个求根公式求出来的解应该一直等于 x1(跟着 x1 跑),可是,在置换完成后,由于「方程的系数在方程根的置换下保持不变」以及「x1 由这个方程的系数唯一确定」,这个求根公式依然求出的是原来 x1 的值!

而此时占据原来 x1 位置的是 x2,x1 已经跑到原来 x2 的位置上去了!于是得出矛盾,所以一元二次及以上方程的求根公式中不能没有根号(一元一次方程则没有此限制,因为根据代数基本定理,它只有一个根,没法和别的根进行置换)。

说了这么多,还是动画最直观,请(使用 chrome 等现代浏览器)看演示
点击 move 按钮开始动画,关于输入框中的 2 1 3 4 5,意思是把 x1 和 x2 的位置互换,后面会有详细说明。将鼠标悬浮在图中任意点的上方,会出现此点的具体信息。
左侧的图表示某个一元五次方程的 5 个根,右侧是我们假想的求根公式算出来的 x1 的位置,这个求根公式中没有根号,由方程左边的多项式系数加减乘除组成,而这些系数又根据左侧根的变化而变化,它与左侧 x1 相不相等并不重要,我们只需注意它本身的位置,这才是我们导出矛盾的地方。

from https://viegg.com/abel/readme.html

 

 

 

No comments:

Post a Comment