正四面体、正方体、正八面体、正十二面体、正二十面体,这是古希腊人就发现的五种正多面体,它们拥有最高标准的对称性。这五种正多面体又叫做 Platonic 体,它们在古希腊的哲学观念中占据着至关重要的地位。 Leonhard Euler 发现,多面体的顶点数 V 、棱数 E 和面数 F 一定满足公式 V – E + F = 2 ,这叫做 Euler 多面体公式。利用这个公式,我们可以证明正多面体只有五种。假设一个正多面体的每个面都是正 p 边形,那么所有 F 个面一共就有 p · F 条边;每两条边拼在一起形成了一条棱,因而总的棱数就是 E = p · F / 2 。反过来, F 就应该等于 2 · E / p 。不妨再假设每个顶点处都汇集了 q 条棱,那么总的棱数似乎应有 q · V 个;但这样计算的话,每条棱都被重复算了两次,因而总的棱数实际上应该是 E = q · V / 2 。反过来, V 就应该等于 2 · E / q 。另外, Euler 的多面体公式告诉我们, V – E + F = 2 始终成立。
把上面几个式子合在一起,于是得到:
2 · E / q – E + 2 · E / p = 2
整理可得:
1/p + 1/q – 1/2 = 1/E
因此, 1/p + 1/q 一定大于 1/2 。但是,正多面体每个面至少都有三条边,每个顶点也至少汇集了三条棱,因此 p 和 q 都是大于等于 3 的整数。要想 1/p + 1/q > 1/2 ,只有以下五种可能:
这正好对应于那五种正多面体。最近沉迷于折纸,我也因此学习了不少与多面体相关的东西。想不到,这些看似老生常谈的东西,里面的水可深着呢。这五种正多面体表面上只是问题的五个不同的解,但互相之间却有着出人意料的联系。我们再列一个更加完整的表格,有意思的东西会慢慢呈现出来:
名称 | 面数 F | 顶点数 V | 棱数 E | 每个面的边数 p | 每个顶点处的棱数 q |
正四面体 | 4 | 4 | 6 | 3 | 3 |
正方体 | 6 | 8 | 12 | 4 | 3 |
正八面体 | 8 | 6 | 12 | 3 | 4 |
正十二面体 | 12 | 20 | 30 | 5 | 3 |
正二十面体 | 20 | 12 | 30 | 3 | 5 |
很容易看出,这五种多面体是成对出现的。你会发现,正方体和正八面体的面数 F 和顶点数 V 互相颠倒, p 值和 q 值也互相颠倒,棱数 E 则相同。其实,这并不是巧合。如果作出正方体的每个面的中心,再把相邻的面所对应的中心连在一起,就会得到一个正八面体;再作出正八面体的每个面的中心,和刚才一样把它们连起来,又会变回正方体。我作了一个动画,直观地表明了它们之间的关系。
容易看出,每次变换前后,原图形的每个面与新图形的每个顶点一一对应,原图形的每个顶点与新图形的每个面一一对应,因此两种图形的面数 F 和顶点数 V 是互相颠倒的。同时,原图形中的两个相邻的面,就变成了新图形中的两个相邻的顶点,因而原图形的每个面有多少条边,新图形的每个顶点处就会引出多少条棱;原图形中的两个相邻的顶点,也会变成新图形中的两个相邻的面,因而原图形的每个顶点有多少条棱,在新图形中它就会被多少条边框住。这也就解释了 p 和 q 互相颠倒的原因。最后,原图形的每条棱和新图形的每条棱也都是一一对应的,而且每两条对应的棱在空间中正好垂直。我们把变换前后的两个多面体叫做一对“对偶多面体”(dual polyhedron)。
类似地,正十二面体和正二十面体也拥有互相颠倒的 F 和 V ,以及互相颠倒的 p 和 q ,以及同样数目的 E ,这也是因为它们互为对方的对偶多面体。我也作了一个动画来演示这一点。
那么,正四面体怎么办呢?这就是我觉得最好玩的事情了:它和它自己对偶!
有一件事情刚才我们有意一直没提:究竟什么叫做正多面体。简单地说,正多面体(regular polyhedron)指的是这样的多面体:它的所有顶点都是一样的,所有的棱都是一样的,所有的面也都是一样的。所谓“所有顶点都一样”,意思就是,这些顶点之间没有本质上的差异,每个顶点都能充当其他任何顶点的角色。换句话说,你可以把任意一个顶点挪到任意另一个顶点所在的位置,然后利用平移、旋转和镜像这几种操作,让整个图形和原来完全重合。类似地,“所有棱都一样”就表示每条棱都可以变到每条棱的位置,“所有面都一样”也就表示每个面都可以等价地替换每个面。正多面体同时满足“所有顶点都一样”、“所有棱都一样”和“所有面都一样”,因此我们才说,正多面体拥有最高标准的对称性。
为了精确地刻画出正多面体,“所有顶点都一样”、“所有棱都一样”和“所有面都一样”,这三个条件缺一不可。如果去掉“所有顶点都一样”,但保留另外两个条件不变的话,会出现一些不是正多面体的图形。比如说,把一个正方体分成六个全等的四棱锥,再分别粘到另一个同样的正方体的六个面上,就会得到一种所有棱和所有面都一样,但顶点与顶点却有区分的图形(如左图)。如果去掉“所有棱都一样”,但保留另外两个条件不变的话,也会出现一些不是正多面体的图形。比如说,作出一个长方体各个面上的对角线,会组成一个四面体,它的所有顶点和所有面都一样,但棱与棱是有区分的(如中图)。最后,只去掉“所有面都一样”,保留另外两个条件不变,也会出现问题。标出一个正方体每条棱上的中点,然后据此切掉正方体的所有八个角,就会得到这么一个图形,它的所有顶点和所有棱都一样,但面与面是有区分的(如右图)。这是三个非常经典的多面体,一会儿我们再提到它们时,不妨把它们叫做“三个代表”吧。
正多面体的定义虽然容不得丝毫删减,但却有很多修改和替换的余地。如果在刚才对正多面体的定义中,把“所有棱都一样”和“所有面都一样”换成“各个面是全等的正多边形”,满足要求的立体图形还是只有那五个。因此,正多面体还有一个等价的定义:由若干个完全相同的正多边形拼成的,且所有顶点完全相同的多面体就是正多面体。
古希腊人还研究了“半正多面体”(semiregular polyhedron),即由两种或多种不同的正多边形拼成的,且所有顶点完全相同的多面体。长方体就不是一个半正多面体,虽然它的各个顶点完全相同,但各个面却不都是正多边形。由一个正方形和四个等边三角形组成的四棱锥(就像金字塔那样)也不是一个半正多面体,因为它的顶角和四个底角显然是有区别的。三个侧面都是正方形的正三棱柱则是一个典型的半正多面体,它同时满足半正多面体的两个条件。容易想到,每个侧面都是正方形的正五棱柱、正六棱柱、正七棱柱等等,它们也都是半正多面体了(排除掉正四棱柱的原因是,四个侧面都是正方形的正四棱柱其实就是正方体,它是正多面体,不是半正多面体)。因而,我们立即得知,半正多面体有无穷多个。另外,把棱柱的底面稍稍旋转,与顶面错开,再用一个个上下交错的三角形充当侧面,还能得到一类叫做“反棱柱”(antiprism)的多面体。如果反棱柱的顶面和底面是全等的正多边形,每个侧面正好都是等边三角形,那么整个多面体也会成为半正多面体。如果你把正二十面体从上到下分作三层,中间那层其实就是一个这样的多面体。显然,这样的多面体也有无穷多个,如下图的第二行所示。大家会注意到,三角反棱柱没有纳入这一行当中,因为它实际上就是正八面体。
除了棱柱和反棱柱以外,还有别的半正多面体吗?这个问题就非常有意思了。古希腊数学家 Pappus 曾在自己的著作中详尽地列出了问题的 13 个解,并认为这些解最早是由 Archimedes 发现的。因此,这些非平凡的半正多面体就被后人称作 Archimedean 体。欧洲文艺复兴时期,这些简洁对称的立体图形重新引起了人们的关注,不同的人在不同的时期重新发现了不同的 Archimedean 体。左图是 Leonardo da Vinci 为数学家 Luca Pacioli 的著作所作的插图。右图是 Wenzel Jamnitzer 的作品,右上角那个立体图形就是一个 Archimedean 体。
在这段时期里,第一个把所有 Archimedean 体当作一个整体概念,对其进行系统的分析研究的人,应该是德国数学家、天文学家 Johannes Kepler (是的,就是那位提出行星运动三大定律的“天空立法者”)。他在《世界的和谐》(Harmonices Mundi)一书中列出了 13 种 Archimedean 体,画出了每个 Archimedean 体的样子,给它们起了不同的名字,并且证明了, Archimedean 体一共就只有这 13 种:
为了方便大家观察,我也重新作了一张图:
这里面有很多图形想必大家都会非常熟悉。第一行的第一个图形,其实就是刚才那“三个代表”中最右边的图形,也就是 Wenzel Jamnitzer 的作品中右上角的那个图形,是去掉正方体的八个角得来的。对正方体进行去角操作后,原来的每个角都变成了一个等边三角形,原来的每个面都只剩一个内接的小正方形,最终得到的正是第一行的第一个 Archimedean 体。不过,有一件事情刚才我们没说:这个图形同样也可以看作是对正八面体进行去角操作得来的。原来的每个角都会变成一个正方形,原来的每个面都只剩下一个内接的小等边三角形,最终得到的也是第一行的第一个 Archimedean 体。为什么正方体和正八面体的去角结果是相同的呢?其中一个重要的原因就是,因为正方体和正八面体是对偶的。正方体去角后的每一个面,都对应于正八面体去掉的每一个角,不管从哪个角度看,一共都是 6 个正方形;正方体去掉的每一个角,则都对应于正八面体去角后的每一个面,不管从哪个角度看,一共都是 8 个等边三角形。最终所得的,就是这么一个由 6 个正方形和 8 个等边三角形组成的图形。
类似地,由于正十二面体和正二十面体互为对偶图形,因此它们的去角结果也是相同的。所得的图形就是第二行的第二个 Archimedean 体,它由 20 个等边三角形和 12 个正五边形组成。每一个等边三角形都是正十二面体被去掉的一个角,也可以看作是正二十面体去角后的一个面;每一个正五边形都是正十二面体去角后的一个面,也可以看作是正二十面体被去掉的一个角。
值得注意的是,去角后的正四面体却不在 13 个 Archimedean 体当中,因为去角后的正四面体其实就是一个正八面体。不过,适当减小去角的幅度,正四面体也能变成 Archimedean 体。标出正四面体每条棱上的两个三等分点,然后从这些地方下刀,于是每个角都会变成一个等边三角形,每个面都会变成一个正六边形,整个图形会变成第一行的第二个 Archimedean 体。
对正多面体进行去角操作,是构造 Archimedean 体的基本途径之一。刚才,我们至少已经看到了两种去角的模式,这里我们有必要区分一下。不妨把之前从中点处开刀的那种去角方式叫做“全截角”(complete truncation)或者“截半”(rectification),此时原多面体的每条棱都只剩下一个点。后面那种精心选择下刀处,使得每条棱所剩的长度都和截面边长相等的去角方式,则叫做“均匀截角”(uniform truncation)。如果只说“截角”(truncation),尤其是当对象为某个高度对称的多面体时,通常指的就是均匀截角。
对正方体进行均匀截角后,也会变成一个 Archimedean 体,即第一行的最后一个图形。均匀截角后的正八面体,会变成第一行的第三个图形。均匀截角后的正十二面体,则会变成第二行的最后一个图形。均匀截角后的正二十面体呢?正二十面体有 12 个顶点,每个顶点处都有五条棱。把它们全都削掉,就会得到 12 个正五边形。正二十面体有 20 个面,每个面都是一个等边三角形。把所有顶点全都削掉,它们就会变成 20 个正六边形。因此,最终得到的图形就有 12 个正五边形和 20 个正六边形,如第三行的第一个图所示。有没有觉得, 12 个正五边形和 20 个正六边形,这几个数字让人非常亲切?没错,这正是足球表面黑白色块的分布情况。 1962 年,丹麦的体育用品生产商 Select Sport 首先想到了把这种结构用在足球上。随后, Adidas 生产的 Telstar 把这种设计发扬光大,并成为了 1970 年墨西哥世界杯的官方用球。此后,这个 Archimedean 体便成为了足球的象征。
至此, 13 个 Archimedean 体的来历已经讲了 7 个。对刚才的两个全截角图形再做全截角或者均匀截角,其结果可以近似地看作是另外 4 个 Archimedean 体。第一行的第一个图形是对正方体或者正八面体进行全截角得来的。如果对它再来一次全截角,就会近似地得到第一行的第四个图形,它包含 8 个等边三角形和 18 个正方形;如果对它做的是均匀截角,就会近似地得到第二行的第三个图形,它包含 12 个正方形、 8 个正六边形和 6 个正八边形。第二行的第二个图形则是对正十二面体或者正二十面体进行全截角得来的。如果对它再来一次全截角,就会近似地得到第二行的第四个图形,它包含 20 个等边三角形、 30 个正方形和 12 个正五边形;如果对它做的是均匀截角,你将会近似地得到最后一行的最后一个图形。这是最大的一个 Archimedean 体,它由 30 个正方形、 20 个正六边形和 12 个正十边形组成,里面一共有 120 个顶点、 180 条棱和 62 个面。需要注意的是,这 4 个 Archimedean 体都有更准确的生成方式,利用截角法只能得到拓扑结构相同的近似图形。这些近似图形的各个面不保证都是正多边形,需要再做调整才能变成真正的 Archimedean 体(不妨看看 Wenzel Jamnitzer 的作品中最下面一行的两个图形)。
至此, 13 个 Archimedean 体的来历已经讲了 11 个。在 Multidimensional Transformations Unit Origami 一书的附录里,作者 Tomoko Fuse 用一张图清楚地画出了 5 个 Platonic 体和 13 个 Archimedean 体之间的关联。
这一页里还画着两个孤立的 Archimedean 体,正好也就是我们还没提到的 Archimedean 体,即第二行的第一个图形,以及第三行的第二个图形。这两个图形的生成方式很难描述。把一个正方体的六个面向外拉出,再让它们同时顺时针或者逆时针旋转某个特定的度数,并用 32 个等边三角形填补中间的空隙,就会得到第二行的第一个图形。类似地,把一个正十二面体的十二个面向外拉出,再让它们同时顺时针或者逆时针旋转某个特定的度数,并用 80 个等边三角形填补中间的空隙,就会得到第三行的第二个图形。这两种图形的生成方式中都涉及到了“顺时针或者逆时针旋转”,因而每个物体都没法和自己的镜像重合(就像你的左鞋和右鞋没法重合一样,如下图所示)。换句话说,这两种图形都有“手性”(chirality)之分。如果把左手系的物体和右手系的物体算作两个不同的物体,那么 Archimedean 体一共就有 15 个了。
说到 Archimedean 体的数量,还有一件事情不得不提。接下来,我们要构造一个非常非常非常特殊的多面体。取出第一行第四个 Archimedean 体(如下面的左图所示),把它分成上中下三层,然后保持中层和下层不动,仅仅让上层旋转 45° (如下面的右图所示)。
整个图形无缝拼接,和之前的样子似乎并无太大的区别。它的所有面也都是正多边形,它的所有顶点也都是由三个正方形和一个等边三角形以相同的方式汇聚而成的。但是,它却不是 Archimedean 体。作为半正多面体, Archimedean 体的对称性要求也是非常高的,它要求“所有顶点都一样”,而不仅仅是“所有顶点看起来都一样”。右边的那个图形中,虽然从局部来看,各个顶点的性质完全相同,但站在全局的角度来看,这些点并不能随意扮演其他点的角色。比方说,注意到整个图形只有一条由正方形连成的“腰带”,它上面的点显然不能被其他的点所取代。而它的原版图形有三个互相垂直的腰带,每个顶点都位于其中两个腰带上。在所有由正多边形拼成的图形当中,这是唯一一个“所有顶点看起来都一样但其实不一样”的图形。因此,有的人也会把它称作第 14 个 Archimedean 体。 Johannes Kepler 本人很可能也发现了这一点。他曾经说过 Archimedean 体一共有 14 个,虽然最终只在《世界的和谐》里写了 13 个。
根据 Archimedean 体的定义,每个 Archimedean 体都满足“所有顶点都一样”,并且都不满足“所有面都一样”(因为 Archimedean 体要求由两种或两种以上的正多边形构成)。但是,光从定义来看,我们无法得出与棱的对称性相关的信息。逐一分析可以发现,在 13 个 Archimedean 体当中,有 2 个满足“所有棱都一样”:对正方体或者正八面体进行全截角所得的图形,以及对正十二面体或者正二十面体进行全截角所得的图形。和其他半正多面体相比,这 2 个多面体显然距离真正的正多面体更近一些,人们把它们叫做“拟正多面体”(quasiregular polyhedron)。早些时候,为了说明正多面体的定义缺一不可,我们构造了“三个代表”。当时,我们想要在最右边展示出舍去“所有面都一样”这项条件的后果,所使用的例子就是前一个拟正多面体。
现在,让我们来看一看,我们已经见过多少种多面体的对称模式了:
所有点都一样 | 所有棱都一样 | 所有面都一样 | 例子 |
× | × | × | 各种随意的图形,比如一个四棱锥 |
× | × | √ | ??? |
× | √ | × | ??? |
× | √ | √ | “三个代表”的左例 |
√ | × | × | 长方体,或大多数半正多面体 |
√ | × | √ | “三个代表”的中例 |
√ | √ | × | “三个代表”中的右例,或称拟正多面体 |
√ | √ | √ | 有且仅有五个,即五种正多面体 |
目前,人们已经证明,第三类多面体是不存在的。也就是说,一个棱与棱无差异的多面体,要么顶点也是无差异的,要么面也是无差异的(当然也有可能顶点和面都是无差异的)。所以,我们只差最后一种对称模式需要研究了:顶点有区别,棱也有区别,面都是一样的。其实,这样的多面体并不难构造。或许有人已经意识到了——其实,第二类和第四类多面体,分别是第五类和第七类多面体的对偶多面体。
在构造一般多面体的对偶多面体时,我们不能照搬正多面体的处理方法,把各个面的中心连接起来。其中一个原因就是,对于一般多面体的顶点来说,它周围的各个面并不是完全相同的,因而这些面的中心会参差交错地环绕于该顶点,连起来很可能并不在同一个平面上,因而也就无法形成一个对应的面了。如果多面体的顶点正好是无差异的,那么我们可以过多面体的各个顶点作出整个多面体的外接球的切面。由于多面体的顶点和顶点之间无差异,因此所有顶点到多面体中心的距离都是相等的,这保证了外接球的存在性。最后,所有切面围出的图形,就是原多面体的对偶多面体。对于那些没有外接球的多面体,生成对偶图形还有更一般的方法:把多面体内的某个点,通常是这个多面体的对称中心(如果有的话),记作点 O ,然后对于多面体的每个顶点 P ,作一个垂直于 OP 的面,使得 O 到 P 的距离与 O 到这个面的距离的乘积为某个定值。虽然生成对偶多面体的方法有所变化,但对偶概念最核心的东西始终没变:原图形的顶点与新图形的面一一对应,原图形的面与新图形的顶点一一对应。
长方体的所有顶点都一样,但棱和棱有差异,面和面也有差异;它的对偶图形就满足所有面都一样,但棱和棱有差异,点和点也有差异。以正方形为侧面的正棱柱不但所有顶点都一样,而且每个面都是正多边形;因此,它的对偶图形不但满足所有面都一样,而且每个顶点处的各个二面角都相等。这样的正棱柱有无穷多个,与之对偶的多面体也就有无穷多个。还有无穷多个反棱柱也是顶点无差异的,因而也就还有无穷多个多面体也是面与面无差异的。当然, 13 个 Archimedean 体也都有各自的对偶多面体:
这些多面体是比利时数学家 Eugène Catalan (是的,就是提出 Catalan 数的那个 Catalan )在 1865 年首次描述的,因而又叫做 Catalan 体。在所有的 Archimedean 体当中,其中 11 个是点无差异,棱和面都有差异的,因而在所有的 Catalan 体当中,其中 11 个的面无差异(但注意,这并不意味着每个面都是正多边形,只能说明这些面互相之间全等而已),并且棱和点都有差异。这 11 个 Catalan 体中的任何一个都可以填补刚才的第三类多面体那项空白。在这一部分的 Archimedean 体中,又有 2 个是分手性的,因而刚才这部分 Catalan 体中,也有 2 个是分手性的。最后还有 2 个 Archimedean 体同时满足点无差异和棱无差异(但面和面仍然有不同),所以就还有 2 个 Catalan 体同时满足面无差异和棱无差异(但顶点和顶点仍然不同)。在“三个代表”中,最左边的那个图形和最右边的那个图形,其实就是一组互为对偶的、棱无差异的 Catalan 体和 Archimedean 体:
这 13 个 Catalan 体有一个非常出人意料的应用价值:由于它们的面和面之间完全无差异,因此用它们来制作异形而又公正的骰子可谓是再适合不过了。之前我们曾经弄出过一个最大的 Archimedean 体,里面一共有 120 个顶点;因而,我们就能制作一个足足有 120 个面的大骰子了。
写到这里,我终于有点累了,打算就此打住。不过,我最后还想表达的一点就是,对称多面体的水实在是太深了,这篇文章也只能谈到微不足道的冰山一角。 1966 年,美国数学家 Norman Johnson 决定寻找除了 5 个正多面体、无穷多个棱柱、无穷多个反棱柱和 13 个 Archimedean 体以外,其他所有由正多边形拼成的多面体,结果一共找到了 92 个。他猜测自己已经找全了,这一点后来被证明是正确的。这 92 个 Johnson 体如下:
在 Peter Cromwell 所著的 Polyhedra 一书中,则有一张非常伟大的插图,对所有每个面都是正多边形的多面体作了一个分类:
然而,刚才我们说的仅仅是凸多面体,仅仅是亏格为 0 的多面体,仅仅是不与自身相交的多面体,仅仅是三维空间中的多面体……