zdr0,公众号:eulermath0。 大家好!事情的起因是半个多月之前的一个晚上,我无意间在油管上看到了 3b1b 大佬的一个视频[1]。看完之后我突然「灵光一现」,打算就此写一个「观后感」。我大意了啊,没有停笔,很快这个「灵光」的光强就「烧掉了」我不少头发。 现在大家看到的这篇科普文是原文的「花絮」,无论是在长度上还是在难度上相较于原文都有所削减。因为原文是长达 37 页的 pdf,是本人写科普文以来写过的最长的一篇文章,也是我修改次数最多的一篇文章。并且在原文中对很多细节都做了比较详细的讨论,我把原文的下载链接放在了最后[2],大家有兴趣的话可以去读一读。 如果各位读了原文,并发现了其中的错误的话请一定评论告知我(请不要私信,除非有特殊情况,否则我一般不看私信)。感谢! 最后的一个小通知:由于这学期我非常忙,所以《十分钟数学课》系列暂时停更,等下个假期再重新开更。并且专栏文章的更新速度会变得很慢。大家见谅。 在阅读本文之前,请忘记你所熟知的 Euler 公式: 因为当你将 代入时它会直接告诉你: 但如果这样这篇文章就没有存在的意义了。 总注: 不要被文章后面那些「复杂的」符号「吓到了」。如果大家能够将前面基本符号的运作方式搞清楚,则后面那些「复杂」符号的运作方式大家也就能清楚了。并且我对每个符号都举了例子,相信大家通过这些例子一定可以清楚那些符号的运作方式。 文中的下划线没有特殊含义。 群论部分我会尽量用最简单的语言讲清楚。这也是为了告诉大家不要跳过文章中的任何一部分,因为每一部分都至关重要并且环环相扣。跳过其中一部分会对后面的阅读造成障碍。 这次文中没有任何证明,可安心阅读。 节的目录结构与内容与原文的目录结构与内容一致。 引言 群 群同态 置换与置换群 站在群的角度上来理解代数运算 再看群同态与上帝公式和群论的关系 引言 所谓上帝公式(即我们常说的 恒等式 ): 这个公式充斥着无尽的美感,所以它也是我最喜欢的公式,没有之一。这个公式将自然底数 ,单位虚数 ,圆周率 ,最小的自然数(这里认为 0 不是自然数) 与数字 巧妙的组合在了一起。这个公式的起源有很多文章已经介绍过了,所以这篇文章我们就换一个视角来重新探索上帝公式背后隐藏的数学知识,而它背后的数学知识也告诉了我们上帝公式绝不仅仅只有表面上的这种数字关系。 为了探索这种探索上帝公式背后的数学知识,我们首先要来学一些群论的知识。 群 我们先不看群的定义。现在让我们穿越回上小学的时候。上小学的时候,我们最先接触到的数字之间的运算就是两个数字之间的加法,更准确地说应该是两个自然数之间的加法。因为当时我们还不知道什么是整数,什么是小数等等。现在让我们脱离两个自然数之间的加法,来看一个更为高级运算,即两个整数之间的加法。 为了与后面的群中的运算做对比,这里我们将整数集上的加法记作 (这与我们熟知的加法是一样的,只不过为其加上了下标 。其中 表示整数集。为一种运算添加这样的下标可以时刻提醒我们该运算是定义在哪个集合上的。这并非多此一举的做法,因为当运算种类增加的时候,如果没有这样的下标就可能会出现理解混乱)。 对于整数集上的加法我们知道它是满足结合律的,也就是说比如: 再比如: 那么一般的,对于整数集 中的任意三个整数 ,我们有: 除此以外我们还知道任何整数与整数 的和都是该整数本身。比如: 即对于任意一个整数 而言,我们有: 因为整数 的这种性质,我们将整数 称为整数集 中的对加法 的单位元素 。同样是为了与将来群中的单位元素做对比,我们将 的单位元素 记作 。 此外,对整数集中的每一个整数都存在一个「与之相反的」整数,使得两者的和为 。比如: 所以一般的,对于任意一个整数 ,我们有: 这样的一个整数 我们称为整数集 中的整数 的对加法 的逆元。同样是为了与将来群中的逆元做对比,这里我们将整数 的逆元记作 。 最后我们要说的是两个整数的和一定还是一个整数,我们将此性质称为整数集对其上的加法 是封闭的 。 另外,我们可以将 上的加法 看做是一种作用,这个作用的效果是将输入的两个整数通过相加的方式变成第三个整数。这就意味着我们可以将 上的加法 看做是一个映射: 这样一个映射也可以说明整数集对其上的加法 是封闭的。 显然,整数集上的单位元素是唯一的,即为 ,且对每个整数 ,其逆元也是唯一的,即为 。(注意,这里不要说成整数集中的逆元是唯一的) 大家如果能完全理解上述有关整数的加法的例子话那么就成功了 啦~因为通过类比,我们可以非常轻松又快速地理解群的定义。下面我们就给出群的定义: 设 是一个集合,且设 为 上的一个运算: 则称结构 是一个群 ,当它满足以下条件时: 是可结合的; (至少)存在一个 ,使得对于所有的 有: 这样的一个 称为 中的单位元素 。 对于每个 ,存在(至少)一个 ,使得: 显然,当我们将定义 中的集合 换成集合 ,将运算 换成整数集上的加法 ,将集合 中的单位元素 换成整数集 中的单位元素 ,将 换成 ,将 换成 时我们就可以理解群的定义了。 根据群的定义我们可以知道 是一个群,我们将这个群称为整数加法群 。 请可各位读者朋友独立验证 与 也是两个群。且前者称为实数加法群 ,后者称为复数加法群 。 认识了什么是群之后我们就已经结束了三分之一的工作啦~打起精神,一鼓作气,把剩下的群的知识学完!下面将要介绍的一个重要的概念是群同态 。 群同态 这个名词听起来挺高端的是吧?其实我们通过一个我们高中就学过的函数便可以「可视化」群同态这个概念,进而让这个概念变得很好理解。下面我们就从这个函数讲起。 这个函数就是自然底数 的指数函数。我们知道同底数的(这里为 )指数运算律为: 我们知道 的定义域是实数集 ,值域是正实数集 。所以,不严谨地可以说: 此时我们可以将 写为正实数集上的乘法,即 。这是因为这里正实数集对 是封闭的,即: 又因为 ,所以我们可以将 写为实数域上的加法 。如之前所述, 是一个群。并且容易验证 是一个乘法群(作为练习,请各位自行验证。注意, 的封闭性已经说过了,只需验证剩下三条即可)。于是现在我们得到了两个群,我们将两者分别定义为: 则在这两个群之间的映射 满足: 如果现在我们将群 与群 换成为两个一般的群 和 ,群 与群 之间的映射 换成任意一个映射 ,但是使 仍保持性质: 则 就称为群 与群 之间的一个群同态。 可以将式 与式 做一个类比: 这样群同态就好理解了。 下面我就要给出群同态的定义了。 设 与 是两个群。一个从群 到群 的群同态是一个映射 ,对该映射有: 我们将所有从群 到群 的同态 的集合记作 。而且最为正规的记法为: 置换与置换群 置换 新的知识又出现啦!我们还是先讲一个直观的例子。 图片 1 如图片 1 所示,我们将一个正方形的顶点自左上开始,按照顺时针方向从 ① 到 ④ 进行了编号。这样做的目的是为了让大家能够最直观的看到这个正方形所做的所有旋转和镜像变换。 现在我们来总结一下上面正方形的八种变换,它们分别是:什么也不做 围绕中心做逆时针 的旋转,关于两条平行于边的对称轴的镜像,以及关于两个对角线的镜像。 这样用文字描述变换实在是很不方便,所以我们现在来做一件有意思的事情,就是使用数字来表示这些变换。首先我们按照从 ① 到 ④ 的顺序将处于初始状态的正方形的顶点写在一个括号中,比如像这样: 这里需要注意:处于初始状态与不对这个正方形做任何变换不是一回事!现在我们让这个写有初始状态顶点所对应的数字的括号变得大一些: 即我们在原先的括号下面又增加了一行,那么这一行要写什么呢?在回答这个问题之前我们要明确的是,除了不对正方形做变换这种情况以外,其他七种情况下,只要对正方形做了变换,那么变换之后正方形的每个顶点数字相对于初始状态的顶点数字都发生了变化。于是这一行要写的就是:正方形做了某一次变换后,相对于初始状态的顶点对应数字的变化。举两个具体的例子好了,首先就是最特殊的,我们不对正方形做任何变换,那么此时正方形的状态与处于初始状态时是一致的,即顶点 依然对应顶点 ,顶点 依然对应顶点 ...等等,所以此时第二行应该写的是: 再比如正方形做了一个 的旋转,那么对于旋转之后的顶点我们有:顶点 对应了初始状态的顶点 ;顶点 对应了初始状态的顶点 ;顶点 对应了初始状态的顶点 ;顶点 对应了初始状态的顶点 。于是此时,我们的第二行应该写: 请大家尝试将剩余的 的情况写出来。 这样我们就实现了通过数字取描述正方形的这八种变换了。因为我们可以将处于初始状态的被数字 标记的正方形的四个顶点看成是 号到 号这四个位置,然后正方形每做一次变换这四个位置上的某几个数字就会出现更替,我们将更替之后的数字与 号到 号这四个位置一一对应起来就可以描述这种变换了。 很显然,数字的更替意味着数字相对于初始状态时的位置发生了变换,因此,我们将这些变换都称为置换 。 通过上述例子,相信大家对置换的概念已经有了一个基本的认识了,现在我们来深化一下置换的概念。我们还是继续上面的例子。 现在让我们脱离正方形这个实体 ,而仅考虑 这四个数字。我们还是先将 按照顺序写在一个括号中的第一行: 这里的第二行我们写 这四个数字在做某种重新排列之后的结果,比如 : 对应了之前正方形的八种变换中的哪一种? 显然,第一行的数字经过这「某种重新排列」之后被重新排序,重新排序的结果是第二行的元素。现在我将所有的对应关系写出来,以方便大家理解: 通过所列出的所有对应关系我们可以发现:这种所谓的「重新排列」的变换实际上是一种映射关系,即 这四个数字中的每一个数字都通过这种映射变成 这四个数字中的 另一个。我们现在将该映射记作 ,然后我们可以将上面列出的四种关系写为: 现在我们可以说: 这种排列顺序经过映射 的作用变成了 这种排列顺序。现在我们将这种对应关系在之前的括号中可得: 当然,对于不同的重新排列我们的映射也是不同的,比如现在有如下的对应关系: 显然,我们刚才的映射 并不能实现这种从 到 的这种排列,因为比如 。但是我们可以找到另外一个映射,使得这个映射可以实现这种重新排列呀。比如我们可以将这个映射记作 ,即: 现在我们在置换的概念上又更近一步了,但是还缺乏严谨性。比如映射 (或映射 )具有什么性质呢?对于任意一个可数的有限集合我们如何定义这个一个映射呢?这种映射之间可以复合吗?复合所产生的效果又是什么呢?下面我们就一一来回答这些问题。 从我们刚刚所说的例子中我们发现:无论是映射 还是映射 它们都具有以下性质: 当映射 (或者映射 )作用于 这四个数字中的每个数字时,其结果也必然是这四个数字中的某一个,而不会出现别的数字。 当映射 (或者映射 )作用于 这四个数字中的每个数字时,每个结果都是不同的,比如: 当映射 (或者映射 )作用于 这四个数字中的每个数字时,每个数字在映射的作用下都会得到一个结果。 综合以上三条,我们现在可以说映射 (或者映射 )是一个从集合 到自身上的一个双射。拿映射 举例,我们可以将它定义为: 其实定义了这样一个映射 之后我们就得到了关于 的全部置换了。也就是说将来我们就不再区分 和 了。 现在我们来回答第二个问题:对于任意一个可数的有限集合我们如何定义这个一个映射呢?从上一个问题的答案中我们知道,这样的一个映射 是一个集合到自身的双射,而这里的集合必须是有限可数集合 。 这里的有限可数集合可以非常不严谨地理解为:可以清点这样一个集合中的全部元素。 现在我们就来考察一个最简单的有限可数集合—由 到 这 个自然数构成的集合 。则对于这样的一个集合我们可以定义置换 : 我们也可以将其写为括号的形式,即: 更为一般地,我们可以对任意一个与集合 等势的 集合 定义置换: 或将其写为括号的形式: 这里的等势可以非常不严谨地理解为:集合 与集合 具有「相同的」元素个数。 现在我们来到了一个关键性的问题面前:两个置换之间是否可以进行复合?为了回答这个问题,我们再次回到之前所说的正方形的例子。首先非常显然的是我们现在处于初始状态的正方形逆时针绕中心旋转 ,然后在此基础上再逆时针绕中心旋转 就相当于直接从初始状态逆时针绕中心旋转 。 另外一个不是十分明显的例子是: 图片 2 即我们先将处于初始状态的正方形逆时针旋转 ,然后在此基础上再将其关于连结左上和右下顶点的对角线进行镜像,所得到的结果与直接对处于初始状态的正方形关于竖直对称轴镜像的结果是一致的。图片 2 中的中的复合 表示的是变换的复合,也就是说「将处于初始状态的正方形逆时针旋转 ,然后在此基础上再将其关于连结左上和右下顶点的对角线进行镜像」是一个复合变换 ,其效果与单次变换「将处于初始状态的正方形关于竖直对称轴镜像」的结果是一致的。 同样我们发现,使用文字来描述这个复合变换是在是非常的繁琐。既然我们之前已经使用数字去表示置换了,那我们现在就使用这些数字去表示复合变换,即表示置换的复合。对于置换的复合,我们仍然使用符号 。 由之前所述我们知道,「将处于初始状态的正方形逆时针旋转 」这个变换的数字表述为: 而「将处于初始状态的正方形关于连结左上和右下顶点的对角线进行镜像」这个变换的数字表述为: 最后,「将处于初始状态的正方形关于竖直对称轴镜像」这个变换的数字表述为: 于是,根据刚刚对复合变换的文字描述,我们有: 对于这一点我们可以来验证一下。 显然,我们是对的! 通过这个直观的例子我们可以明白一个十分重要的问题:置换之间是可以进行复合的,且复合之后的可以得到一个「新的」置换。并且从初始状态通过复合置换得到的结果与从初始状态直接通过这个「新的」置换得到的结果必然是一致的 。而且如果你愿意的话,你甚至可以将多个置换进行复合。 置换群 现在我们已经认识了群、群同态以及置换的概念了。下面我们来介绍置换群 。置换群中的元素是一个非空集合 上的置换。一个具体的例子就是我们刚才所举的集合 上的置换 。那么现在就产生了几个基本的问题: 置换群中的运算是什么? 置换群中的单位元素是什么? 置换群中各个元素的逆元是什么? 这些基本的问题都是关于群的定义的问题。下面我们还是来一一解答一下。 首先是置换群中的运算。置换群中的运算就是我们之前所提到的两个置换之间的复合运算 。容易验证该运算是满足结合律的,且非空集合 上的置换所构成的集合对该运算是封闭的。 置换群中的单位元素我们记作 。之前正方形置换的例子中,「什么也不做」这一变换就是正方形置换的置换群中的单位元素。 置换群中的元素 的逆元我们记作 ,因为: 一个直观的例子是:设变换 为将正方形逆时针绕中心旋转 ,则 表示的就是将正方形顺时针绕中心旋转 ,那两个变换的复合变换 就是将正方形先绕中心逆时针旋转 ,然后再将正方形绕中心顺时针旋转 ,那么最后的结果与「什么也不做」(即 )这一变换是一样的。 置换 的逆是存在的,因为我们之前说过,置换是一个双射。 一个以集合 上的全部置换为元素的群我们称为 的对称群 ,并记作 。但集合 具有 则元素时, 的对称群可以记作 ,称为 次对称群。现在我们在这篇文章中所需要的知识已经全部学完了。群论是一个非常庞大的知识体系,我这里也仅仅是为了写这篇科普文章才简单的介绍了一下群的一些基本概念。其他更深的知识就请对群论感兴趣的朋友自行探索吧。 站在群的角度上来理解代数运算 在本节中,我们将要「忘记」我们熟知的基本的代数运算加法和乘法。我们会将数字理解为一些作用,通过这些作用可以将原来的数字变成新的数字。在定义后面的这些作用的时候我们会 仿照定义置换时所使用的那种括号的形式 。 整数的滑动与实数的滑动 首先我们来定义滑动的概念。为了进一步的讨论和方便大家的理解,我们就将滑动的概念定义在整数集上。我们这里将要仿照置换的定义对滑动进行定义。首先我们还是来看直观的例子。 图片 3 如图片 3 所示,为了保证直观性,我们定义了所谓的「整数轴」,整数轴只在具体的整数处为点,其余各处均为虚线。现在我们对整数轴做一个向右滑动的动作,这个动作使整个整数轴向右滑动了一个单位。特别的,如果我们只观察数字 的话,我们发现它通过这种滑动滑到了原来数字 的位置上。这样一个滑动作用使我们有了以下的对应关系: 显然,上述的对应关系蕴含了一种映射关系,我们将这个映射记为 ,则: 虽然整数集是一个可数无穷集,但是我们依然可以借助置换那里的记号,将上述映射关系写在一个括号中,即: 这样我们就可以定义整数集上的一个向右的滑动为: 整数集上的一个向左的滑动为 : 下面通过几个例子说明几个问题。 比如先将整数 向右滑动 个单位,即 ,得到结果 然后再将 向左滑动 个为单位,即 ,得到结果 ,这与直接将 向左滑动两个单位,即 得到的结果是一样的。这说明了整数的滑动是可以复合的 。 将任意一个整数滑动任意一个固定的整数单位 所得到的结果都是唯一的,这说明了整数的滑动是可逆的(即双射的)。并且具体的,将整数 向右滑动 个单位,即 ,得到结果 然后再将 向左滑动 个为单位,即 ,结果又回到了 。这说明了对任意一个固定的整数单位 ,左滑动与右滑动互为逆元 。且对任意一个固定整数单位 的左滑动与右滑动的复合为单位元 ,表示「不做滑动」。 显然,整数的任意两个滑动的复合还是一个整数的滑动。即定义在整数集上的滑动对复合运算 是封闭的。 有了整数的滑动以后我们就可以仿照它来定义实数的滑动了。实数的一个向右的滑动定义为: 实数的一个向左的滑动为 : 同理,我们可以说明实数的滑动也是: 可以复合的。 双射的,且具有逆元和单位元。 对复合是封闭的。 请大家自行验证以上三条,对内容的理解会有一定帮助。 非零有理数与非零实数的伸缩 正有理数与负有理数的伸缩 作为引入,首先我们先来考察正有理数集 。我们先来定义正有理数集上的伸缩。 图片 4 如图片 4 所示,我们这里又定义了一个「正有理数轴」(正有理数轴的虚线比整数轴稍微密了一点,这只是为了做一下区分)。现在我们对这个正有理数轴做一个拉长的动作,这个动作将整个正有理数轴拉长为原来的两倍(这就意味着做正有理数轴上的每一个点都被「拉长为」原来的两倍)。如果我们只观察正有理数 的话,我们会发现它通过这种拉长的作用变为的原来的正有理数 。因此对于这样一个拉长的作用我们有以下对应关系: 显然,上述的对应关系也蕴含了一种映射关系,我们将这个映射记为 ,则: 我们依然仿照置换中的记号,将上面的对应的关系写为括号的形式: 这样我们就可以定义正有理数集上的一个拉长为: 同理可定义正有理数集上的一个收缩为: 下面我们依然通过几个例子说明几个问题。 比如先将 拉长 个单位,即 ,得到结果 ,然后再将 收缩 个为单位,即 ,得到结果 ,这与直接将 收缩两个单位,即 得到的结果是一样的。这说明了正有理数的伸缩是可以复合的 。 图片 5:正有理数的伸缩复合示例。 将任意一个正有理数拉长 (或收缩) 任意一个固定的正有理数单位 所得到的结果都是唯一的,这说明了正有理数拉长 (或收缩)是可逆的(即双射的)。并且具体的,先将 拉长 个单位,即 ,得到结果 ,然后再将 收缩 个为单位,即 ,结果又回到了 。这说明了对任意一个固定的正有理数单位 ,拉长与收缩互为逆元 。且对任意一个固定整数单位 的拉长与收缩的复合为单位元 ,表示「不做伸缩」。 显然,正有理数的任意两个伸缩的复合还是一个正有理数的伸缩。即定义在正有理数集上的伸缩对复合运算 是封闭的。 有了正有理数的伸缩作为引入之后,我们再来看看负有理数集 上的伸缩。 为了方便说明,我们再来定义一个「负有理数轴」。这里我们同样将负有理数轴拉长到原来的两倍(这就意味着做负有理数轴上的每一个点都被「拉长为」原来的两倍)。如果我们只观察负有理数 的话,我们会发现它通过这种拉长的作用变为的原来的负有理数 。因此对于这样一个拉长的作用我们有以下对应关系: 显然,上述的对应关系也蕴含了一种映射关系,我们将这个映射记为 ,则: 我们依然仿照置换中的记号,将上面的对应的关系写为括号的形式: 这样我们就可以定义负有理数集上的一个拉长为: 同理可定义负有理数集上的一个收缩为: 并且,负有理数的伸缩与正有理数的伸缩的性质 是类似的。留做练习,请大家自行说明。 非零有理数的纯镜像以及其负有理数倍伸缩 刚才我们定义的伸缩中都有。 那么现在问题来了,如果我非要定义一个负有理数倍的伸缩 (即 ) 那怎么办呢?这里我们可以不直接对这个负有理数倍的伸缩做定义,我们先来定义一个叫非零有理数的纯镜像的概念。 图片 6 为了定义这个纯镜像的概念,如图片 6 所示,我们首先在正有理数轴上固定一个点 ,然后我们在有理数 处放上一面镜子(平面镜),则会在负有理数轴上出现一个点 ,这个点与有理数 之间的距离也为 ,我们就把 称为正有理数 的负镜像点 。同理,对于每个负有理数 ,我们将 称为负有理数 的正镜像点 。 举两个例子: 现在我们可以定义非零有理数的镜像的概念了。我们定义正有理数的纯负镜像 为: 定义负有理数的纯正镜像 为: 有了非零有理数的纯镜像的概念之后我们就可以定义所谓的负数倍的伸缩了。定义正有理数的负有理数倍拉长 为: 定义正有理数的负有理数倍收缩 为: 定义负有理数的负有理数倍拉长 为: 定义负有理数的负有理数倍收缩 为: 举两个例子,比如将 拉长 倍,即: 将 收缩 倍,即: 现在为了统一符号,我们将要舍弃我们之前的正有理数的正有理数倍伸缩与负有理数的正有理数倍伸缩的定义,并通过一个新的概念—— 纯虚镜像 ,给出两者的等价定义。首先我们来定义纯虚镜像。 定义正有理数的纯正虚镜像 为: 定义负有理数的纯负虚镜像 为: 举两个例子: 有了纯虚镜像的定义之后,我们就可以将非零有理数的正有理数倍伸缩进行等价地定义了。我们将正有理数的正有理数倍拉长 等价地定义为: 将正有理数的正有理数倍收缩 等价地定义为: 将负有理数的正有理数倍拉长 等价地定义为: 将负有理数的正有理数倍收缩 等价地定义为: 举两个例子,比如将 拉长 倍,即: 将 收缩 倍,即: 显然,通过上面所举的例子我们发现,以上八种变换都是可逆的(即双射的)。 最终我们可以将以上八种情况合并为种: 下面我们要来谈一谈 的复合问题。我们通过一个例子来说明 的复合问题。我们先将 拉长 倍(负有理数的正有理数倍拉长),即: 得到结果 ,然后我们再将 拉长 倍(负有理数的负有理数倍拉长),即: 这就说明了负有理数的负有理数倍拉长是可以复合负有理数的正有理数倍拉长的,更一般的,负有理数的负有理数倍伸缩可以复合负有理数的正有理数倍伸缩。 但是比如第一次做的伸缩是负有理数的正有理数倍伸缩,那么根据定义,此时的结果是负有理数,所以就不能对此结果再做正有理数的伸缩操作了。这就说明了:正有理数的伸缩不能与负有理数的正有理数倍伸缩复合。但是正有理数的伸缩可以与负有理数的负有理数倍伸缩复合,这是因为负有理数的负有理数倍伸缩的结果是正有理数。 经过以上的分析我们发现: 的复合可分为有效复合与无效复合两种情况。所谓有效复合,指的就是例如负有理数的负有理数倍伸缩与负有理数的正有理数倍伸缩的复合,且: 而所谓无效复合,指的就是例如正有理数的正有理数倍伸缩不能与负有理数的正有理数倍伸缩复合,并且对于无效复合,我们定义复合的结果为第一次伸缩变换的结果,即例如: 定义有效复合与无效复合的原因是为了保证八种 的两两复合对复合运算都是封闭的。因为从有效复合与无效复合的定义来看,两者的结果都仍是八种 中的某一种。 由于八种 都是双射的,所以他们的到达域等于值域,于是我们便可以将第一次伸缩变换的到达域下一次伸缩变换的定义域做一下比较,当两者相同时复合便是有效的,否则是无效的。 并且我们有: 有效复合的有效复合是有效的; 有效复合的无效复合是无效的; 无效复合的有效复合是有效的; 无效复合的无效复合是无效的。 在原文中我对 的两两复合做了非常详细的讨论,推荐大家去看一下原文或者视频 。 有关逆元,我们也通过一个例子来说明。 我们先将 拉长 倍(负有理数的正有理数倍拉长),即: 得到结果 ,然后我们再将 收缩 倍(负有理数的正有理数倍收缩),即: 结果又回到了 ,这就说明了对于同一伸缩倍数 而言,负有理数的正有理数倍拉长与负有理数的正有理数倍拉长互为逆元,两者复合的结果是单元元 ,表示「不进行伸缩」。 实际上,对于八种 : 它们的逆元都是唯一的,并且(从左到右)分别为: 对于非零实数而言,我们也可以定义它的伸缩为: 其中 表示非零实数的伸缩运算, 表示非零实数的镜像(包括纯镜像和纯虚镜像)运算。与 一样,其也有八种情况: 并且上述的八种映射都是双射的,也就是说它都是具有逆的,它们的逆分别是(从左到右): 并且这八种情况的复合也分有效复合与无效复合两种。且任意两个 对一般的复合运算 也是封闭的,且无效复合的无效复合还是无效的,无效复合的有效复合是有效的,有效复合的无效复合是无效的,有效复合的有效复合是有效的。总之, 与 的运作方式以及基本性质都是十分相似的。 复数的滑动 图片 7 如图 7 中的滑动是将原始的复平面沿复数 进行的滑动。它可以被视为在实轴上的 个单位的向右滑动(对应了实数的滑动)和虚轴上的 个单位的向上滑动的复合,如图 8 所示。 图片 8 图片 8 中的 为一种运算,后面我们会看到它的定义。 这样的分解可以让我们分别得到实轴与虚轴上的两个对应关系。首先是实轴上的对应关系: 利用之前定义的实数的向右滑动 我们可以得到: 然后我们就可以将实轴上的这种对应关系写为括号的形式了: 下面我们再来看虚轴上的对应关系: 我们发现,如果我们只考察虚部的话,那么这种对应关系也可以被视为是实轴上的滑动。我们将这种只看虚部的向上滑动定义为 。于是我们有: 写为括号的形式为: 这样我们就可以定义复数集上的一个右上滑动为: 其中运算 表示先沿实轴做滑动 ,然后在沿虚轴做滑动 。 我们刚刚定义了复平面的右上滑动,同理我们可以借助 和 具体的定义 个基本方向上的滑动。但是在此之前,我们还需要先对 做一个明确的定义。定义只考虑虚部的下滑动为: 定义只考虑虚部的上滑动为: 接下来我们就可以具体地定义复平面的 个基本方向上的滑动了。定义复数集上的右上滑动 : 定义复数集上的右下滑动 : 定义复数集上的左上滑动 : 定义复数集上的左下滑动 : 定义复数集上的竖直上滑动 : 定义复数集上的竖直下滑动 : 定义复数集上的水平左滑动 : 定义复数集上的水平右滑动 : 下面我们通过例子来说明几个问题。 我们对复数 先做右上滑动 得到结果 ,再做右上滑动 得到结果 ,那么最终的效果与直接做右上滑动 滑动的效果是一样的。这就说明了复数的滑动是可以复合的 。 图片 9:复数滑动的复合。 我们对复数 先做右上滑动 得到结果 ,再做左下滑动 ,结果又回到了 。这就说明了复数的滑动是可逆的 。具体而言,之前定义的复平面在八个基本方向上的滑动: 的逆分别是(从左至右)分别是: 复数集上的任意两个滑动的复合还是还是一个复数集上的滑动。即定义在复数集上的滑动对复合运算 是封闭的 。 非零复数的旋转伸缩 现在终于来到了我们的最后一个部分了。非零复数的伸缩分为两种,一种是非零复数的非零实数倍的伸缩,这种伸缩我们也称为纯伸缩 。另外一种是非零复数的非零复数倍的伸缩,这种伸缩我们称为带旋转的伸缩 。对于带旋转的伸缩,我们还需定义的是纯旋转 的概念。首先我们先来看非零复数的纯伸缩。 非零复数的纯伸缩 这是原文中最为复杂的一部分,所以这里我打算换一种简单的定义方式。 图片 10 如图片 10 所示,我们将复平面拉长为原来的两倍,这相当于我们同时将实轴与虚轴拉长到原来的两倍。而非零实数的正实数倍拉长我们之前已经定义过了,并且,对虚轴如果我们只考虑它的虚部的话,那么这里虚轴的拉长我们也可以视为非零实数的正实数倍拉长。这或许为我们定义非零复数的纯伸缩提供了一种思路。所以我们不妨顺着这个思路继续深入。我们首先要做的就是仿照非零实数的正实数倍拉长,定义一个对应的只考虑虚轴的拉长 。 这里将 中的左右箭头 换成了上下箭头 ,表示的是竖直方向上的伸缩 。显然, 也具有 种子情况。 其中 必须与 必须同为拉长或者同为收缩,并且同为拉长时,拉长的倍数必须相等;同为收缩时,收缩的倍数必须相等 。 并且我们知道 的定义域与值域也是 与 。这样我们就可以先来定义实部和虚部都不等于零的复数的伸缩了: 其中运算 表示 实轴与虚轴同时做相同倍数的拉长或者相同倍数的收缩 。另外我们知道,非零复数还包括在实轴上的复数和在虚轴上的复数。那么我们进一步定义在实轴上的复数的伸缩为: 而在虚轴上的复数的伸缩我们定义为: 式 并不意味着当其中一个轴做伸缩时另外一个轴就不做相同的伸缩了,所以这里我们可以理解为当实轴做伸缩 时,虚轴在被动地做与实轴一样的伸缩 ;当虚轴做伸缩 时,实轴在被动地做与虚轴一样的伸缩 。 现在我们将 合并到一起,并统一定义为: 我们根据非零复数所处的位置便可知道 为 中的哪一个。具体的我们可以定义非零复数的纯拉长为: 定义非零复数的纯收缩 为: 最后我们来谈一谈 复合的问题。对于 或者 的复合情况这里就不再说明了,因为这两种情况下的复合与非零实数伸缩的复合原理是一样的。不过可以从这两种特殊情况中看到的是: 复合也会涉及到有效复合与无效复合这两种不同的情况。但是, 的复合是否有效也完全取决于 (或 )之间的复合是否有效。 举一个实际的例子。比如我想将复数 做 倍的拉长,这就意味着我们要同时对实轴和虚轴做 倍的拉长: 这样得到的结果是 。因为此时 都是负实数(即 为一负有序实数对),所以我们就不能进一步对 做正实数的伸缩的了(即正有序实数对的负伸缩不能复合其自身,即这种复合就是无效的)。但是我们可以对负有序实数对 做负有序实数对的伸缩,比如再对它做一个 倍的拉长: 这样最终的结果是 。 对于无效的复合,我们依然将其结果定义为复合之前的变换。这样就保证了 对复合的封闭性。并且我们断言: 的所有情况都是可逆的。 非零复数的纯旋转 非零复数的纯旋转的定义可以说是非常直观的。首先是非零复数的纯逆时针旋转 : 然后是非零复数的纯顺时针旋转 : 举个实际的例子: 表示的就是将长度为 的,辐角为 的复数逆时针旋转 。 并且我们容易验证以下几点: 定义在复数集上的纯旋转是可以复合的。比如先将复平面逆时针旋转 (即 ),然后再逆时针旋转 (即 ),则最后的效果与直接逆时针旋转 (即 )的效果是一致的,如图 11 所示: 图片 11 定义在复数集上的纯旋转是双射的(即可逆的)。因为我们可以将任意一个非零的复数 通过逆时针(或顺时针)旋转角度 都可对应于复平面上的一个复数。而且反过来,将复数 (或 ) 顺时针(或逆时针)旋转之后都可以唯一对应到一个非零的复数 。 定义在复数集上的任意两个纯旋转的复合还是一个复数集上的纯旋转。即定义在复数集上的纯旋转对复合运算 是封闭的。 非零复数的带旋转的伸缩 在定义非零复数的带旋转的伸缩之前我们首先要来思考一个问题:我们是否真的仅仅将非零复数的纯伸缩与纯旋转进行复合就可以了?答案是否定的。但这是为什么呢?如果不将两者直接复合那应该如何定义非零复数的的带旋转的伸缩呢?这里我们不妨先回忆我们非零复数的纯伸缩的定义。在我们讨论非零复数的纯伸缩的时候我们发现,对于非零复数的正实数伸缩,伸缩的结果总是没有镜像效果的(我们可以将这种伸缩称为非零复数的保向伸缩 ),即非零复数的正实数伸缩总是将一个复数直接进行伸缩而不用考虑镜像(这一点的根源是非零实数的正实数伸缩)。而非零复数的负实数伸缩总是会产生镜像作用的(即复数在被拉长的同时会通过复平面的原点中心对称,这一点的根源是非零实数的负实数伸缩),而这种镜像作用恰好对应了非零复数的纯 旋转。所以我们如果直接将非零复数的纯伸缩与非零复数的纯旋转复合的话会很混乱。所以取而代之的是,我们将 非零复数的正实数伸缩与非零复数的纯旋转进行复合 ,进而来定义非零复数的带旋转的伸缩。 这里我们首先要给出具体的非零复数的正实数伸缩的定义。我们将要分八种情况进行说明。我们将「挖掉原点的」复平面拆解一下,拆解为一下八个部分: 实轴正半轴 ; 实轴负半轴 ; 虚轴正半轴 ; 虚轴负半轴 ; 实部与虚部均大于零的部分 ; 实部小于零,但是虚部大于零的部分 ; 实部与虚部均小于零的部分 ; 实部大于零,但是虚部小于零的部分 。 之后我将使用相应的编号来代表这八个部分 。首先要明确的是任意一个非零复数一定处于这八个部分中的一个,且同时只能属于唯一的一个 。所以我们定义非零复数的正实数伸缩可以通过对这八种情况分别进行定义。下面我们就来逐一的定义一下: 我们将以上八种情况合并为映射 。根据复数所处的位置我们可以明确 应为以上八种情况中的哪一种。 现在非零复数的正实数倍拉长 已经定义好了,下面我们就可以来定义非零复数带旋转的伸缩了。如之前所述,非零复数带旋转的伸缩可由为零复数的正实数倍拉长与非零复数的纯旋转复合得到(我们下面只讨论逆时针旋转 ,顺时针旋转同理): 举一个具体的例子: 先将 逆时针 的旋转得到: 变成复数 之后再拉长 倍: 最后得到结果 。 在之前的讨论中,我们知道 与 都是双射的,则他们的复合 也是双射的。于是,当两个 之间可以复合时,复合的结果自然也是双射的。所以我们需要重点讨论的是 的可复合性。现在设: 我们可以将复合 写为: 复合的有效性取决于 与 复合的合法性。为了保证两个非零复数的正实数倍拉长复合的合法性,我们必须要留意的是做完 之后非零复数所处的位置,然后再根据位置从前述的八种情况中选出对应的一种 进行复合 。在 无效时我们定义: 即保持复合之前的旋转伸缩,这一定义与非零实数的非零实数倍拉长的无效复合的定义是类似的。并且由合法复合与非合法复合的定义我们保证了 对复合运算是封闭的。 站在群的角度上来理解代数运算 在这之前我们已经做足了铺垫,现在我们可以站在群的角度上来理解代数运算了。整数和有理数我们就不再讨论了。我们只讨论实数与复数。首先我们先给出结论: 实数的滑动对应于实数的加法; 非零实数的非零实数倍伸缩对应于非零实数的乘法; 复数的滑动对应于复数的加法; 非零复数的纯伸缩对应于非零复数与非零实数的乘法; 非零复数的旋转伸缩对应于非零复数与非零复数的乘法。 这里我们没有为复数的纯旋转找到对应关系。这一关系我们将在下一节中补上。 下面我就仅对 各举一个例子。 对于复数 ,给它加上另一个复数 得到 。这相当于对复数 做了一个右上滑动,即: 对于复数 ,给它乘上另一个负实数 得到 。这相当于对复数 做了一个纯负实数倍的拉长,即: 对于复数 ,给它乘上另一个复数 得到 。这相对于先对复数 做了一个 的纯旋转: 变成复数 之后再拉长 倍: 最后总结一下,如果在群的角度上理解代数运算的话我们实际上是将数字看成了一种作用,通过这种作用可以将原来的数字变成新的数字,所以说代数运算只不过是群作用的一种实际体现。 再看群同态与上帝公式和群论的关系 在之前我们看到,以 为底的指数函数的运算律是群同态的一种体现。其实不止以 为底的指数函数,以其他大于零的实数 作为底数的指数函数也是群同态的一种体现。因为我们也有: 现在我们假设 ,由于之前我们将实数的加法解释为了实数的滑动,将非零实数的乘法解释为了非零实数的伸缩,并且底数大于零的实指数函数的值域是 。于是现在我们可以这样去理解 :我们将实数的滑动 作为输入,得到的是正实数的伸缩 。这为我们提供了指数函数运算律的另一种理解方式。 那么基于这种理解方式,我们自然能想到是的:以其他大于零的实数 作为底数的指数函数,当输入为复数的滑动时,输出的应是非零复数的旋转伸缩 。那么这个结论是否正确呢?下面我们就来简单讨论一下。 不妨设: 则: 由于 ,所以 ,进而 起到的是纯伸缩的作用。那么现在的问题是为什么 起到的是纯旋转的作用呢?一种比较简单的解释方式是: 由于 ,所以 ,进而 。现在我们将 定义为 ,则: 这就说明了 总是一个长度为 的复数。所以它起到是复平面上的纯旋转作用。并且我们看到,以任意一个大于零的实数 为底的指数函数将虚轴映射为复平面上的单位圆 。也就是说给定一个非零复数,给它乘以一个 相当于使该复数纯旋转了角度 。于是我们的又一个结论是(补 中的复数的纯旋转找到对应关系): 非零复数的纯旋转对应于非零复数与复数 的乘法。 现在让我们再看到 ,现在我们将 定义为 。则: 就是说我们对以任意一个大于零的实数 为底的指数函数的指数上放置一个纯虚数 ,相当于在单位圆上从 开始转动了角度 ,其在单位圆上从 开始转动的弧长也是 。则当 时有: 也就是说以 为底的指数函数的特殊之处在于,当其指数为 时,其在单位圆上从 开始转动的角度恰好也是 ,并且在单位圆上从 开始转动的弧长也是 。更为特殊的,当 时, 表示的是:在单位圆上从 开始转动的角度为 ,并且在单位圆上从 开始转动的弧长也是 ,而在单位圆上从 开始转动弧长 后到达的点是 。因此,在这种意义上我们有: 阅读原文