粒子物理学中的任何认真的计算都需要大量的代数。也许不需要。但是利用到目前为止我们所知道的基于费曼图的方法,它确实可以做到。实际上,正是这些类型的计算使我首先使用计算机进行符号计算。那是在1976年,现在已经是很久以前了。但是实际上用计算机进行费曼图计算的想法甚至更老了。
据我所知,这一切始于1962年在日内瓦附近CERN粒子物理实验室自助餐厅外面的露台上进行的一次谈话。三位物理学家参与其中。在那次对话之后,出现了三个用于进行代数计算的早期系统。其中一个是用Fortran编写的。其中一个是用LISP编写的。一种是用汇编语言编写的。
我已经讲过好几次这个故事了,经常说:“您认为后来哪些物理学家获得了诺贝尔奖?”我解释说:“当然是用汇编语言编写系统的人!”
那位物理学家是马丁努斯(蒂尼)韦尔特曼(Martinus(Tini)Veltman),他几周前去世,我认识了几十年。他的系统称为SCHOONSCHIP,他用IBM 7000系列汇编语言编写了该系统的第一个版本。几年后,他用CDC 6000系列汇编语言重写了它。
重点始终放在速度上。多年来,SCHOONSCHIP是用于进行超大型费恩曼图计算的主要工作系统,这可能需要花费数月的计算机时间。
早在1960年代初编写SCHOONSCHIP时,费曼图以及它们产生的量子场论就已经过时了。费曼图是在1940年代发明的,用于进行量子电动力学(电子和光子的量子理论)的计算,并且进展顺利。但是,注意力转移到了将原子核保持在一起的强相互作用以及导致核β衰变的弱相互作用,而且在两种情况下,费曼图似乎都没有用。
但是,存在一种关于弱相互作用的理论,其中涉及尚未发现的“中间向量玻色子”(它们是我们现在称为W粒子的前体)。 1961年,作为博士论文的一部分,蒂尼·维尔特曼(Tini Veltman)提出了计算光子如何与中间矢量玻色子相互作用的问题。为此,他需要详尽的费曼图计算。
我不确定Tini是否已经知道如何编程,或者他是否出于创建SCHOONSCHIP的目的而学习了它-尽管我确实知道他从小就开始成为电子爱好者。
我想我是1976年首次接触SCHOONSCHIP的,所以我做了一些计算。现在,在我的档案中,我只能找到运行它的一个示例:某人为我做的示例计算,可能是在1978年,与我正在写的东西有关(尽管从未发表过):
按照现代标准,它看起来有些晦涩。但这是相当典型的“老式行式打印机输出”。顶部有一个输入版本。然后在中间进行一些诊断。然后结果出现在底部。并且系统报告这花费了0.12秒的时间来生成。
此特定结果是一个非常简单的费恩曼图,其中涉及光子和电子的相互作用-仅涉及9个项。但是SCHOONSCHIP也可以处理涉及数百万个术语的结果(这使得QED中的计算可以达到8位精度)。
1979年11月在加州理工学院获得理论物理学博士学位后几天,我就飞往瑞士日内瓦,访问欧洲核子研究组织数周。正是在那次访问中,我开始设计SMP(“符号操纵程序”),该系统将成为Mathematica和Wolfram语言的先驱。
当我提到我对欧洲核子研究组织的工作时,他们说:“你应该和蒂尼·维特曼谈谈”。
因此,就是在1979年12月,我飞往阿姆斯特丹,去看蒂尼·维尔特曼。让我震惊的第一件事是“ Tini”(读作“ teeny”)这个名字看起来多么不协调。 (当时,我什至不知道他为什么被称为蒂尼;我只看到他的名字叫“ M. Veltman”,不知道“蒂尼”是“马丁尼”的缩写。)但是蒂尼是一个大男人,留着大胡子–一点也不“小”。他让我想起了欧洲学者的照片,出于某种原因,尤其是路德维希·博尔兹曼的照片。
他48岁。我当时20岁。他对我拥护的“新型计算机思想”绝对感到好奇。但是总的来说,他担当了一位资深政治家的风头,后者让我了解了如何构建像SCHOONSCHIP这样的计算机系统的秘密。
我说SCHOONSCHIP是“ scoon-ship”。他眨了眨眼,然后将其改成一个非常口齿不清的“烤饼”(IPA:[sxon] [sxɪp]),并解释说,是的,他给它起了荷兰语的名字,很难荷兰人说。 (荷兰语“ schoonschip”的意思大致是“船形”,就像SCHOONSCHIP应该用来表达代数形式一样。)SCHOONSCHIP中的所有内容都是为了提高效率而构建的。命令很短。 Tini对YEP产生中间结果特别满意,他说这是荷兰语的助记符(是的,SCHOONSCHIP可能是唯一具有荷兰语衍生关键字的计算机系统)。
如果查看上面的示例SCHOONSCHIP输出,您可能会发现其中有些奇怪。生成的(精确的)代数表达式结果中的每个数字后面都有一个小数点。甚至还有+0。在最后。发生了什么事?好吧,这是蒂尼非常想告诉我的大秘密之一。
他说:“浮点计算比整数快得多”。 “您应该在浮点上尽一切可能。最后只将其转换回确切的数字。”而且,是的,的确,当时的科学计算机(例如他使用的CDC机器)已经针对浮点算术进行了大量优化。他引用了教学时间。他解释说,如果您在“快速浮点数”中进行所有算术运算,然后在最后得到一个64位浮点数,则您始终可以对原本应为的有理数进行逆向工程,而且速度要快得多要做到这一点,不如通过计算精确地跟踪有理数。
这是一个巧妙的技巧。我买了。实际上,当我们实施SMP时,其默认的“精确”算法正是以这种方式工作的。我不确定这是否真的使计算效率更高。最后,它与SMP的相当抽象和笼统的设计纠缠在一起,并成为了磨石。但是实际上,我们使用现代Wolfram语言(尽管现在已经正式验证了区间算术)中使用了一些相似的思想来进行代数数之类的精确计算。
我不确定我是否曾与蒂尼谈过很多关于物理学的内容;不知何故,我们总是最终讨论计算机(或物理学界)。但是我当然利用了Tini的努力,不仅简化了计算机的实现,而且简化了费曼图计算的基础理论。我期望-正如我经常看到的那样-他精简基础理论的努力是通过以计算方式思考事物来推动的。但是我特别利用了他在1972年制作的“ Diagrammar”:
此处介绍的主要方法之一是尺寸正则化:形式化计算的概念产生d维空间(其中d为连续变量),然后最后取极限d→4。这是一种优雅的方法,当我在1970年代后期从事粒子物理学时,我变得非常热衷于此。 (实际上,我什至对它进行了扩展(基于将Gegenbauer函数的角结构视为d维球面函数),并由与我一起从事费曼图计算的Tony Terrano进一步开发,后来在SMP上。)
早在1970年代,“继续维”只是一种正式的把戏。但是,奇怪的是,在我们的物理项目中,维是一种新兴属性,人们对“真正的d维”空间感兴趣。而且,很有可能存在实验可观察到的d≠3维空间的签名。考虑到这一点,我与蒂尼(Tini)完全无关,正打算再次拿出我的《魔咒》。
Tini编写SCHOONSCHIP的最初动机是进行特定的计算,其中涉及光子与假定的“中间矢量玻色子”的相互作用。但是到1960年代后期,对于“中间矢量玻色子”可能是一个实际的理论候选者:“玻色子玻色子”基本上与“量规对称性组” SU(2)相关联,并通过“自发对称破坏”获得了质量”和“希格斯机制”。
但是,如果费恩曼在像这样的“量规理论”中计算图表,将会发生什么?它们是否具有Richard Feynman在QED中确定的可重归一性属性,并且使人们不必担心计算中名义上产生的无穷大?蒂尼·维尔特曼(Tini Veltman)希望弄清楚这一点,并很快向他的学生杰拉德·霍夫(Gerard’Hooft,他的合著者“作曲家”)提出了这个问题。
蒂尼(Tini)定义了问题并正式确定了所需的条件,但不是霍夫特弄清楚了数学原理,最后在1972年的博士论文中提供了相当详细的量规理论可归一化证明。这是一个重大且广为人知的结果-为粒子物理标准模型的第一部分提供了被视为关键的理论验证。并且它开创了Hooft的职业生涯。
蒂尼·维尔特曼(Tini Veltman)总是给我留下一个想要与人互动和合作的印象。杰拉德·霍夫(Gerard’t Hooft)总是给我留下深刻的印象,因为他更喜欢做物理学的“独行侠”模型。我与杰拉德(Gerard)不时互动了很多年(实际上,我在遇见蒂妮(Tini)之前几年就认识他)。在过去的半个世纪里,看到他发明了一系列物理学中最有创意的想法,这真是令人印象深刻。尽管这里不是我的重点,但我应该提一下Gerard在1980年代后期对细胞自动机产生了兴趣,几年前甚至写了一本书《量子力学的细胞自动机解释》。我从不完全了解他在说什么,而且我怀疑,尽管他使用了Mathematica,但他从来没有探索过足够的计算宇宙来为发生的事情提供真正的直觉。但是实际上,在最近不久,看来我们的物理项目存在一个局限性案例,可能正好与Gerard所谈论的相对应-这非常酷……
但是我离题了。蒂尼(Tini)从1966年开始在乌得勒支(Utrecht)担任教授。 1974年,杰拉德(Gerard)也成为那里的教授。甚至当我在1979年遇见蒂尼(Tini)时,就已经有谣言传出。据报道,杰拉德(Gerard)说蒂尼不了解东西。据报道蒂尼(Tini)说杰拉德(Gerard)是“怪物”。然后是诺贝尔奖的问题。
随着标准模型的发展势头,并且越来越多地通过实验验证,规范理论的可重新归一化的证据似乎越来越像获得诺贝尔奖的证据。但是谁会真正获得奖金呢?杰拉德很清楚。但是蒂尼呢?有传言说,一种方式和另一种方式争论不休,以及有关竞选活动的故事。
奖品总是一件复杂的事情。创建它们通常是为了激发某些东西,尽管实际上,为了给与者利益,它们与其他任何东西一样多。但是,如果他们成功了,他们往往会自己代表目标。几年前,我记得一位著名物理学家的妻子建议我“做一些可以赢得奖品的事情”。这对我来说没有意义,然后我意识到了原因。我说:“我想做事情,为此还没有人想到发明奖品”。
好消息是,1999年,诺贝尔委员会决定将诺贝尔奖授予杰拉德和蒂尼。人们普遍表示“感谢上帝”。
1979年,当我在乌得勒支访问蒂尼(Tini)时,我印象中,他和他的家人深深扎根于荷兰,并且永远都在那里。我知道Tini曾在欧洲核子研究中心(CERN)待过,而且我想我隐约知道他已经在那里积极参与了中微子实验。但是我不知道SCHOONSCHIP最初不是在蒂尼(Tini)在乌得勒支或CERN时编写的:尽管CERN程序库中的版本说它是“ 1967年由CERN的Veltman撰写的”,但实际上是第一个版本编写的蒂尼(Tini)于1963年在当时崭新的斯坦福线性加速器中心工作,当时正是硅谷的中心。
他和约翰·贝尔(贝尔的不等名声)一起去了那里,他的“日常工作”致力于中微子实验的理论方面。 (当时,关于量子力学的基础的思考还没有得到其他物理学家的尊重。)奇怪的是,当时斯坦福大学的另一个人是托尼·海恩,他是欧洲核子研究组织(CERN)在露台上进行讨论的物理学家之一。但是与蒂尼不同,他进入了斯坦福大学的计算机科学和约翰·麦卡锡轨道,并在LISP中编写了他的REDUCE程序。
顺便说一句,在拼凑蒂尼(Tini)的生活和时代的故事时,我发现了另一个“小世界”的细节。事实证明,早在1961年,蒂尼感兴趣的中间玻色子计算就是由两位著名物理学家T. D. Lee和C. N. Yang在计算机的帮助下完成的。 IBM的某个彼得·马克斯坦(Peter Markstein)帮助了他们,他和他的妻子维克·马克斯坦(Vicky Markstein)将在近30年后帮助Mathematica在IBM RISC系统上运行。但是无论如何,在1961年,Lee和Yang显然不会让Tini访问Peter Markstein所创建的符号程序,这就是Tini决定自己制作并编写SCHOONSCHIP的原因。
但是回到主要的故事。我怀疑这是杰拉德·霍夫特(Gerard’t Hooft)所造成的。但是在1980年,蒂尼(Tini)50岁那年,将自己和家人从乌得勒支(Utrecht)移植到了密歇根州安阿伯市的密歇根大学。他在中微子实验及其周围的芝加哥费米实验室(Fermilab)度过了很多时间。
但是在密歇根州,我与Tini进行了下一次主要互动。我在1979年看到Tini之后,即在CERN和加州理工学院之间做出某种曲折的努力之后,就开始构建SMP。我已经在加州理工学院接受了教职。 1981年初,发布了SMP 1.0版。为了弄清楚如何进一步发展,在加州理工学院的最初鼓励下,我最终创立了自己的第一家公司。但是很快(通过我在其他地方描述过的一系列事件),加州理工学院改变了主意,并于1982年6月决定离开加州理工学院。
我写信给提尼(Tini),但令我有些惊讶的是,他很快就开始积极地尝试将我招募到密歇根州。他写信给我,问我要到达那里需要什么。在他名单上的第三位是“研究或教职”职位类型。其次是“工资”。但是首先是“计算机”,在括号后加上“我知道您想要一个VAX;这需要一些细节”。密歇根大学的确为我提供了很好的教授职位,但是,在几种选择中,我最终还是去了普林斯顿高等研究院,结果我从来没有机会在近距离与Tini交流。
几年后,我开始研究Mathematica,以及后来的Wolfram语言。而且,不,我没有再使用浮点数表示代数系数。 Mathematica 1.0发布于1988年,不久之后Tini告诉我他正在用另一种语言编写新版本的SCHOONSCHIP。我问:“什么语言?”他说:“ 68000装配工”。 “你不能当真!”我说。但是他是,此后不久出现了用68000汇编程序编写的SCHOONSCHIP的新版本。
我认为Tini某种程度上从来没有真正地完全信任过比汇编程序更高级别的任何东西—自豪地告诉我他可以通过直接写下来做一些事情。我谈到了可移植性。我谈到了编译器优化器。但是他没有被说服。那时,也许他仍然是正确的。但是例如,仅在上周,通过对我们为Wolfram语言开发的符号编译器进行基准测试,我得到了最新结果:某些顶级代码的编译版本运行速度比自定义编写的C代码快30倍。是的,该机器现在比Tini能够创建快速代码更智能。
在密歇根州,除了他与实验直接相关的工作(我现在注意到,甚至包括与我的1978年以来我的粒子物理学结果有关的论文),蒂尼还对费恩图保持了长期的兴趣。 1989年,他撰写了一篇名为“ Gammatrica”的论文,内容涉及狄拉克伽玛矩阵计算,这是许多费曼图计算的核心。然后在1994年,一本名为Diagrammatica的教科书–有点像“ Diagrammar”,但以Mathematica-rhyming结尾。
蒂尼(Tini)并没有发表太多论文,而是花了很多时间帮助为美国粒子物理学界设定方向。不过,从他的出版物清单来看,最引人注目的是1991年与他的女儿赫勒恩(Hélène)合作撰写的论文,赫勒恩刚刚在伯克利获得了物理学博士学位(后来进入了定量金融领域):纵向极化矢量波士顿散射”。这是一篇不错的论文,与Tini在1961年所考虑的事情产生了迷人的“共鸣”,甚至将W粒子的相互作用与1961年风靡一时的这种介子之间的相互作用进行了比较。
蒂尼(Tini)于1996年从密歇根州退休,回到荷兰开始着手建造房屋。期待已久的诺贝尔奖于1999年获得。
在2003年,Tini出版了《基本粒子物理学的事实与奥秘》一书,向广大读者介绍了粒子物理学及其历史。本书中散布着各种物理学家的一页摘要,这些摘要通常带有蒂尼从个人经验中了解的或从他在物理学界的经历中汲取的迷人的“闲话”小窍门。
“在CERN露台上,您可以看到地平线上的勃朗峰,在高能物理学家中非常受欢迎。您几乎可以在公司中遇到每个人。在此启动了许多计划,并且在此环境中诞生了许多想法。到目前为止,您仍然可以在那抽雪茄。”
该页面上有一张摄于1962年6月的照片,我想像是它必须反映出“符号计算起源的讨论”的样子(是的,当时的物理学家戴着领带):
蒂尼(Tini)获得诺贝尔奖之后,他遇到了Rolf Mertig,后者通过为Wolfram语言创建FeynCalc系统来继承蒂尼(Tini)的费曼图计算传统。蒂尼显然解释说,如果他不从事物理学,他将从事“商业”。
我不确定是在Mathematica 1.0之前还是之后,但是我记得Tini告诉我他认为也许他应该涉足软件业务。我认为Tini在某种程度上对物理学感到沮丧。我记得当我在1979年第一次遇到他时,他花了几个小时告诉我有关CERN的问题。成为标准模型的重要预测之一就是所谓的中性电流(与Z玻色子有关)。最后,在1973年发现了中性电流。但是Tini解释说,许多年前,他开始告诉CERN的人们,他们应该能够在实验中看到中性电流。但是好多年以来,他们不听他的话,当他们终于听了时,事实证明,这很昂贵
......