奇妙的尺子


假设你要测量一些物体的大小,你只要拿起一把直尺或卷尺就可以进行了。现在许多尺子是矩形的,两边均带刻度,一边是英寸,一边是厘米。在美国,英寸仍然是标准度量,虽然世界上几乎所有其他国家(除了黎巴嫩和缅甸)都用米制。但一定意义上,尺子的设计方式不够简洁,比方说典型的一英尺长尺子上,0, 1, 2, 3,....,12处都标有刻度,然而实际上我们并不需要所有这些刻度。下面我会更加具体一点地说明这个论点。

下图为一把常规尺子的一部分,其上以0到7这些数字标记了等间距区间。若要量取4英寸的长度,可以用0到4,1到5,2到6或3到7来完成。

下图则展示了一把没有从0到6逐个整数处刻标记的尺子。我们只在0, 1, 4,与6处写出了标号,但其实这些标号也可以忽略。事实上,人们使用数字作为尺子刻度的标记也是标准尺子的“污点”。

假设我们要测量从1到k每一个正整数大小的长度,希望沿着一条直边标记刻度,使得从1到k的每一个正整数长度都可以通过尺上某两个刻度一次性量好。我们想找到少于k个刻度点使得其刻度间的差能够度量从1到k的所有数。这种能做到吗?

上面的第2张图表明,这把只有4个刻度的尺子仅一次就能够度量1, 2, 3, 4, 5和6中的任何一个长度。另一方面,这一结论并不能推广到上一段提出的任意k的情形。可以验证只有当k为1, 3, 6时,满足条件的尺子才存在,其上刻度分别位于:

  • 0,或1
  • 0,1,和3
  • 0,1,4,和6

稍后再详细讨论这一点。既然要度量从1到k的所有距离这一条件太严格,或许更合理的要求是:一把n刻度的尺子,第一个刻度按习惯对应于0,若尺上每一对刻度可度量出不同的长度,则称之为哥隆尺(Golomb Ruler)。虽然第一个、最后一个刻度分别在0和m处的哥隆尺不能度量1, 2, ....,m间所有的长度,但它能够度量的长度均不重复。哥隆尺上刻度的个数常称为尺的阶(order),而最大的刻度称为尺的长度(length)。

下图是一把有5个刻度的哥隆尺,我们称之为长度为11的5阶尺。它能度量的长度有1,2,3,4,5,7,8,9,10和11,只是长度6不能测量。你能找到另一把不能测量长度10的同样长度为11的5阶哥隆尺吗?

确实存在另外的有5个刻度的哥隆尺。它在0, 2, 7, 8以及11处有刻度。这把尺可以度量除了10之外从1到11的所有长度。因此,我们看到这两把尺子不可能“同构”(最后这个词指它们是本质上相同的尺子),因为它们各自所有能测量的距离集合中都只缺少一个不同的数。(第二把尺子有另外的版本:在0, 3, 4, 9以及11处有刻度。这把尺子与第一把等价。)不能测量同样的n个长度但又不等价的尺子存在吗?注意到若要度量长度为1, 2,...,6这些长度,我们可取一把有4个刻度的尺子。然而,为度量从1到10的全部长度,我们不能取只有5个刻度的尺子,因为只有5个刻度的尺子不能度量6或10。下面是有6个刻度互不等价的尺子:

  • 0 1 4 10 12 17
  • 0 1 4 10 15 17
  • 0 1 8 11 13 17
  • 0 1 8 12 14 17

注意到这些尺子都可以度量从1到7的长度。任意一把这样的6阶尺即(带6个刻度)可以度量从1到7的所有整数,但不是所有的尺子都能度量从1到8的所有整数。同时,第一、第三把尺子能测量从1到17的所有整数,只是都不能度量14和15,这说明不等价的尺子也可以不能测量同样的距离。

哥隆尺是以所罗门‧哥隆(Solomon Golomb)的名字来命名的。哥隆曾在约翰·霍普金斯大学与哈佛大学学习数学;他的哈佛博士论文研究素数。他在编码理论与数论方面做出过重要贡献。因其在这些领域的重要工作,他获得过IEEE汉明奖(Hamming Medal)。他的研究集中于与通信理论相关的问题上,并表现出非常广泛的应用数学与纯粹数学兴趣。

Solomon Golomb

哥隆也以发明多联骨牌(polyomino)而闻名,这是源自1x1的正方形边对边粘连的几何图形。下图是12种可能的五联骨牌之一:

本文不仅仅是探索哥隆尺这一迷人的数学领域,还要介绍数学家们探索问题时如何通过数学得到丰富的思想与工具。世间万物都有联系,希望通过介绍哥隆尺研究的外围思想使读者能体味到数学的乐趣与刺激。

起讲

让我们从一点组合计数开始。假设尺上有k个刻度,用这把尺子来测量的不同距离的最大数目是多少?若任意一对刻度可测得不同的距离,就可以得到这个最大数目。那么有多少种方式从k个刻度中取出两个刻度呢?这即是熟知的从k个东西中取出两个对象(不考虑顺序)的取法个数,这个数常如下表示并计算:

$_kC_2 = k(k-1)/2$

选取第一个刻度有k种方法,选取第二个刻度有k-1种方法,因此共有k(k-1)种方法来先后选取两个刻度。这里我们除以2是因为在计数中我们并不关心选取的先后次序。

另一个记法是使用二项式系数:

$\left( \begin{array}~k\\2 \end{array} \right)=k(k-1)/2$

这两种表示都给出了从k个东西中不计先后次序同时取出两个东西的方法数。例如,用5个刻度,人们最多可以测量10个不同的距离;而6个刻度则最多可以测量15个不同的距离。

前面我提问是否能够找到其它有5个刻度的哥隆尺。这就引出了什么时候两个哥隆尺“等价”或“相同”的问题。我们见到在0, 1, 4, 9和11处标记刻度,可得到有5个刻度的哥隆尺。我们也可以在0, 2, 7, 10和11处标记刻度。它可以测量的长度有1, 2, 3, 4, 5, 7, 8, 9, 10和11。这个刻度集可以从第一个刻度集得到:只需以相反的方向来读这些刻度。也就是说,把最右边的刻度看成0,那么紧接着的就是1,之后就是4,等等。因此,虽然这两尺的刻度标记不相同,但本质上是相同的。两把尺都不能测量数6。只有6个刻度的尺子最多能度量15个不同的数(6×5/2=15),再考虑到有6个刻度的最短哥隆尺的最后一个刻度在17处这一事实,可知每把这样的尺子会忽略掉2个长度,这可从上述全部带6个刻度的最短尺中验证。

对每一个有n个刻度的哥隆尺,我们可以以如下方式得到一个长度表,按定义其中的长度必须各不同。表的第一行由相邻刻度取差(大的刻度减去小的刻度)得到,第二行由两个单元的刻度取差得到,依次类推。

差集(difference sets)的使用在组合与几何学中有着很长的历史,它也与区组设计(block designs)以及仿射、投影平面的构造有关系。

一种考虑哥隆尺的方法是将尺上的每一个刻度表示为图的顶点,而每个顶点用尺上该刻度与0的距离来标号。因此,标号为4的顶点意味着在尺上位于 $4$ 的位置有一个刻度。然后任取图上两个顶点并以边来连接它们,而边上则以两个顶点标号之差(绝对值)来标号。比方说,给定标号4和6两个顶点,我们将其边标号为2。

本文第二张图是一把特别的哥隆尺。只用4个刻度就可以度量全部连续整数1,2,3,4,5,6。若一把哥隆尺具有这样的性质,则称之为完美(perfect)哥隆尺。但实际上完美哥隆尺很少——最大的尺子只能有4个刻度。

哥隆尺的要点是它可以表示不同的距离。但这也意味着某些距离不能用5个或更多个刻度(因为没有4个以上刻度的完美哥隆尺)的哥隆尺来度量。这就引起了其他类型尺子的研究,较少刻度的尺子要么测量的距离有重复,要么个别长度被忽略。

我们所说的尺子(ruler)是指从0开始递增的不重复的整数刻度序列。尺子上的最后刻度为其长度L,而相邻刻度间的距离称为一段(segment)。因此,若尺上有m个刻度,则该尺有m-1段。

如果一把尺子能测量从1到其长度L之间所有的距离,则称之为完全(complete)的。一般情况下,完全尺总要重复度量某些距离。一把尺子称为完美(perfect)的表示它既是完全的,又不存在同等长度但刻度数更少的完全尺。如果不存在刻度数相同但长度更长的完美尺,则这把尺子称为最优的(optimal),稀疏尺(sparse ruler)表示有某些刻度缺失,但仍能度量从1到其长度的所有距离。Wichmann尺是一种特殊类型的尺子,不总是最优,但还没发现长度超过68的最优尺不是Wichmann尺的例子。还有的尺子不是在直线上而是在圆圈(circle)上标记刻度。

寻求最优哥隆尺是一计算难题。最新的一个动向是利用网络协作的方式来寻求更多最优尺。哥隆尺列表中一个吸引人的问题是:何时有许多相同刻度数的最优尺?例如,存在5个不等价的有7个刻度的最优尺。目前已经确定为最优、最长的哥隆尺有26个刻度:

    0 1 33 83 104 110 124 163 185 200 203 249 251 258 314 318 343 356 386 430 440 456 464 475 487 492

优美图

一个图是由一些称为顶点(vertice)的点和称为边(edge)的线段组成的图形。每对顶点都有边相连的图则称为完全图(complete graph)。下图是一个有5个顶点的完全图。

图中与顶点相连的边的数目称为该顶点的度(degree)。上图中每个顶点的度都是4。有n个顶点的完全图的每一个顶点的度都是n-1。因为有n个顶点,而每条边恰好有两个端点,完全图中边的数目为n(n-1)/2。这个表达式应该使你想起有k个刻度的尺子上可测量的不同长度数目的公式。让我们从0开始给完全图上每个顶点赋予非负整数。接着给图的每一边以边的两个端点上的标号之差的绝对值来标号。若我们将所有的边从1开始以整数标号,则我们说此完全图已被优美标号(gracefully labeled)。更一般地,若G是任意连通图(在连通图上可以沿着图上的边在任意一对顶点之间移动),则G有优美标号,则必须可0到m中的数字给顶点标号并满足以下条件:

  • 1. 不同的顶点标号不同;
  • 2. 图上每一条边以该边两顶点之标号差的绝对值来标识;
  • 3. 从1到m的整数在边的标号中仅使用一次。
  • 下图为一个优美标号的4循环(4-cycle)。

    如果对n个顶点的完全图给出优美标号,则我们就有方法构造有n个刻度的完美哥隆尺!下图就是这样一个有4个顶点且有优美标号的完全图。

    再次注意到一个有k顶点的完全图恰好有k(k-1)/2条边,这是用k个刻度来表示哥隆尺的正确边数。

    现在的问题是:这个图论方法能帮助我们寻找哥隆尺吗?让我们回头考虑只有2个和3个顶点的完全图。

    有2个刻度0,1的哥隆尺对应于下图所示的有2个顶点的完全图:

    具有三个刻度0, 1, 3的哥隆尺对应于下图所示有3个顶点的完全图。根据图标号的观点(或其他组合方法),可以得知没有多于4个刻度的完美哥隆尺。

    树是没有回路(起点和终点都相同的必同路)的连通(可以沿着图上的边在任意一对顶点间移动)图。下图所示为叫做路径的特殊树。

    这实际上是称为毛虫树(caterpillar)的特殊树。毛虫树可以通过在一条路径上选取顶点,并在顶点上粘连一些边来得到。下图是一个长度为6的例子:

    注意到任意树上边数恰好比顶点数少1,实际上是著名的欧拉公式:$顶点数+面数-边数=2$应用于画在平面上的图,且图上的边交于顶点的一个特例。有趣的是,所有毛虫树都有优美标号。


    基于上面两图所示的标号,或许你可以得出对毛虫树的顶点进行优美标号的算法或程序。

    数学中有许多陈述简单但极端难解的猜想。1964年Gerhard Ringel提出了这样一个问题:

    给定一个有s条边的树T,总可以将2s+1个顶点上的完全图分解为2s+1个T的同构拷贝。

    同一年也出现了如下由Ringel和Anton Kötzig提出的猜想:

    每棵树皆有优美标号。

    和上述两个问题相关的易于陈述但非常漂亮的结果是:

    定理(Rosa)若T为一个有s条边可优美标号的树,则有2s+1条边的完全图可被分解为2s+1个T的备份。

    图的优美标号是本身就很有意思的一个问题。已知可以优美着色的重要图类有:n方体(n-cube),轮(wheel)与网图(grid graph)。

    很多问题与我们已经介绍的想法有关。换个思路,如果使用多把尺子如何呢?下图是两个有4个顶点且带标号的完全图。每一个都是可以测量不同的距离的尺子。其中一把在0,8,9,12处有标记,可测的距离为1,3,4,8,9,12;第二把在0,6,11,13处有标记,可以测量的距离为2,5,6,7,11,13。放到一起,这两把尺子可以测量12个距离,仅不能度量10。注意到不会把不同的尺子在相同的刻度t处结束,否则两尺均能度量t,这将导致重复。

    (a)
    (b)

    因为大于4的顶点的完全图不可能优美标号,另一个自然的问题是:要从这种完全图上去掉最少多少条边,才可使得该图有优美标号?例如,对有5个顶点的完全图,去掉下图中的一条边就可以达到这一目的。

    容易验证,从这个顶点标号方法可得到边上从1到9的标号。这可能使人以为通过在尺上0,1,4,7和9处标记刻度就可以得到哥隆尺。但事实并非如此,因为4与1的差与顶点标号4与7的差相同。你或可以自行尝试给有6个顶点的完全图进行标号,并试图去掉某2条边以得到完美标号。人们提出并研究了许多其它类型的标号(graph-labeling)问题,很多这样的问题至今未解决

    意外联系

    1944年两位著名的匈牙利数学家写了一篇数论文章,其中用了另一个匈牙利数学家Simon Sidon的思想。这两位数学家是保罗·厄多士(Paul Erdös)与Paul Turán,他们讨论了现今称为Sidon序列的序列。

    Paul Erdös(右)与Paul Turán

    一个序列$(a_0, a_1, \cdots)$中如果没有任何一对和$a_i + a_j(i ≤ j)$相同,则称之为Sidon序列。Sidon被引向研究这类序列是因其与他在做的关于傅里叶级数方面的工作有关。人们对Sidon序列集最感兴趣的是对一个给定的数x,Sidon集中有多少个元素比x小。此类问题具然很难,1944年文章中的问题进展也很缓慢。厄多士与Turán在其文章中给出了一个构造哥隆尺的方法。对每一个0与p-1之间的整数k,其中p是素数,计算$2pk+(k^2除以p的余数)$。比如p=5时:

    • k=0; 2(5)(0) + 0 = 0 .
    • k=1; 2(5)1 + 1 = 11 .
    • k=2; 2(5)2 + 4 = 24 .
    • k=3; 2(5)3 + 4 = 34 .
    • k=4; 2(5)4 + 1 = 41 .

    结论是0,11,24,34,41形成哥隆尺。这可通过计算其差来简单检验:11,24,34,41,13,23,30,10,17与7,且注意到它们各不相同。然而这个尺不是有5个刻度的最优尺。

    有意思的是,直到最近才有人注意到Sidon集与哥隆尺间有趣的联系。事实上,有限Sidon集可以用来构造哥隆尺,反之亦然。下面是一个简单证明。

    若S为有限Sidon集,则S生成一把哥隆尺。假设S为有限Sidon集,但不能得到哥隆尺。这意味着S中必有4个元素使得$a_i - a_j = a_k - a_l$。 由此可知$a_i + a_l = a_k + a_j$。然而,这与Sidon集的定义性质(每一对和都不同)相矛盾。因此S可生成哥隆尺。

    怪尺的用途

    上面对哥隆尺与完美标号的介绍,似乎仅在显示数学好玩而已,确实,由于这些问题本身的魅力和可快速入门的特性,长期使数学爱好者感到兴趣。另一方面,这些想法已经找到了令人惊讶并丰富多样的应用。

    在下面的一些例子中,我们无需追求细节,只是指引感兴趣的读者看到应用的一面。

    • * 对来自X-射线晶体学的衍射图的理解
    • * 卷积码
    • * 雷达与声纳
    • * Costas阵列

    已经证明这样的阵列在设计雷达与声纳系统时有用。它们可以看做是哥隆尺的2维推广。其基本想法是构造以0和1为元素的矩阵,每行每列中只有一个1,且任意一对矩阵元素中为1的位置向量(行,列)之差都不相同。这样的矩阵是本身已经很有趣的置换矩阵的一个特别子类。下面是一个Costas阵列:

    0 0 0 1
    0 0 1 0
    1 0 0 0
    0 1 0 0

    其中感兴趣元素的坐标为(行号由下到上,列号从左到右):(1,2),(2,1),(3,3),和(4,4),注意到这些向量之差(1,-1),(1,2),(1,1),(3,2)等各不相同。

    • * 模式匹配与信息检索

    越来越多的文献致力于如何使用“种子”(seeds)来寻找从字符串中抽取模式的有效方法。模式匹配在数据挖掘、基因组学中有许多应用,人们试图在不同的物种中寻求重要的DNA链。想法之一便是在被研究的物种中寻找在其它物种中已知为遗传密码的字符串。

    同步光电探测器编码(codes to synchronize photodetectors)

    • * 雷达脉冲编码
    • * 导弹制导码
    • * 射频分配
    • * 射电天文学

    这个应用涉及射电望远镜天线的安置。

    哥隆尺的数学魅力及其大量的应用方式,促使人们对这一诱人的领域充满了好奇,并投入了极大的兴趣。

    原文链接: http://www.ams.org/samplings/feature-column/fc-2012-01
    作  者: Joseph Malkevitch,美国纽约市立大学约克学院
    翻  译: 欧阳顺湘,德国比勒费尔德大学数学系博士后
    校  对: 汤涛,香港浸会大学数学讲座教授