高德纳谈《具体数学》的诞生

下文节选自《具体数学》, 已获图灵授权许可, [遇见数学] 特此表示感谢!  

本书成形于斯坦福大学的同名课程讲义,该课自1970年以来每年都会开设.每年大约有50名学生选学这门课,有本科生,主要是研究生.他们毕业后逐渐在各地开设了类似的课程.由此看来,向更为广泛的读者(包含大学二年级学生)提供教材的时机已经成熟了.

“读者对象、读者水平以及处理方式,这些描述是前言里应该谈及的.”——P. R. Halmos[173]

具体数学诞生之际,正逢一个黑暗的、暴风骤雨般动荡的十年.在那些骚动不安的岁月里,长期秉承的价值观频频受到质疑,大学校园成了争论的温床.大学课程本身也受到挑战,数学同样难逃严重细究之厄运.John Hammersley刚刚写了一篇发人深省的文章“On the enfeeblement of mathematical skills by‘Modern Mathematics’and by similar soft intellectual trash in schools and universities”(《论中学和大学中被“现代数学”以及类似的软智力垃圾弄得日益衰弱的数学技巧》)[176],其他颇感担忧的数学家们[332]甚至发问:“数学能得到拯救吗?”本书作者高德纳(Donald E. Knuth)撰写了名为The Art of Computer Programming(《计算机程序设计艺术》)的系列专著.在写第一卷时,他发现一些数学工具从他的数学武库中消失了.为透彻而扎实地理解计算机程序,他所需要的数学已经与他读大学数学专业时所学习的内容迥然不同.所以,他引入了一门新的课程,讲授他认为本该有人教授他的那些内容.

“人们用行话来武装自己,的确得到一点短暂的威望:他们可以自命不凡,卖弄表面的专业知识.但是,我们对受过教育的数学家们的真正要求,不是他们能说些什么,甚至也不是他们对现存的数学知识知道些什么,而是他们会用所学知识做些什么,以及他们能否实实在在地解决实践中提出来的数学问题.简言之,我们要的是行动,而不是空谈.”——J. Hammersley[176]

这门冠名“具体数学”的课程起初是为矫正“抽象数学”而设置的,那时,具体的经典结果正在被接踵而至的俗称“新数学”的抽象思想迅速摒弃在现代数学课程表之外.抽象数学是一个奇妙的主题,其中没有任何谬误,它既漂亮、通用,又实用.但是,它的拥护者们误以为,数学的其余部分都是低劣而不再值得关注的了.一般化的目标变得如此时髦,使得整整一代数学家变得不会欣赏具体数学之美,不能享受求解数量型问题的挑战,也不再重视技术手段之价值.抽象数学于是变得排外,并逐渐失去与现实的联系.数学教育需要增加具体的砝码以保持健康的平衡.

高德纳在斯坦福大学第一次讲授具体数学这门课时,说他打算讲授一门硬性而非软性的数学课,这也解释了这个略显古怪的课程名称.他宣称,与某些同事的期望相反,他既不打算讲授集合论,也不打算讲授Stone嵌入定理,甚至不讲授Stone-Čech紧致化.(几位土木工程系的学生于是站起来,安静地离开了教室.)

“数学的核心是由具体的例子和具体的问题组成的.”——P. R. Halmos[172]

尽管具体数学的起步是针对流行趋势的反动,但是它存在的主要理由是具有积极而非消极意义的.作为一门持续受欢迎的课程,它的题材得以“充实”并在各种新的应用中被证明是有价值的.Z. A. Melzak曾出版了两卷本的著作Companion to Concrete Mathematics [267] ,从另一个角度肯定了这一课程名称的恰当性.

“在讲授具体的对象之前就讲授抽象的内容,是完全不应该的.”——Z. A. Melzak[267]

具体数学的素材初看像是一堆互不相干的技巧,但是透过实践可以把它汇集成一组严谨高效的工具.的确,这些技术有基本的一致性,且对许多人都有极强的吸引力.当另一作者葛立恒(Ronald L. Graham)在1979年首次教授这门课时,学生们都感觉很有趣,以至于决定一年后举行一次班级聚会.

具体数学究竟是什么呢?它融合了连续数学和离散数学.1更具体地说,它是利用一组求解问题的技术对数学公式进行有控制的操作.理解了本书的内容之后,你所需要的就是一颗冷静的头脑、一大张纸以及较为工整的书写,以便对看上去令人恐怖的和式进行计算,求解复杂的递归关系,以及发现数据中隐藏的精妙规律.你会对代数技巧得心应手,从而常常会发现,得到精确的结果比求出仅在一定意义下成立的近似解更为容易.

1具体数学的英文Concrete取自连续(CONtinuous)和离散(disCRETE)两个单词.——编者注

具体数学是通向抽象数学的桥梁.

这本书要探讨的主题包括和式、递归式、初等数论、二项式系数、生成函数、离散概率以及渐近方法.其重点是强调处理技术,而不是存在性定理或者组合推理,目的是使每一位读者熟悉离散性运算(如最大整数函数以及有限求和),就好像每一位学习微积分的学生都熟悉连续性运算一样(如绝对值函数以及不定积分).

“略过看似基础内容的高水平读者,比略过看似复杂内容的较低水平读者,可能错失更多的东西.”——G. 波利亚[297]

注意,这些主题与当今大学本科中的“离散数学”课程的内容截然不同.因此,这门课程需要一个不同的名称,而“具体数学”可谓恰如其分.

最初在斯坦福大学教授“具体数学”的教材是The Art of Computer Programming[207]中的“Mathematical Preliminaries”(数学预备知识)一节.但是,那110页的内容相当简洁,所以另一位作者欧伦·帕塔许尼克(Oren Patashnik)受到启发,撰写了一套长篇幅的补充笔记.这本书就是那些笔记的产物,它扩充了“数学预备知识”中的资料,也更从容地引出了这些预备知识,其中略去了那些较高深的部分,同时又包含了笔记里未提及的主题,使得书的内容更为完整.

[我们没敢叫作“离续数学”(Distinuous Mathematics).]

我们很享受一起写这本书,因为这门课程就在我们眼前逐渐定型,获得了生命,它就看似是自己写就的.此外,我们这些年来在若干地方采用的非常规方法看起来也十分妥帖,让人忍不住认为,这本书正好宣告了我们所喜爱的做数学的方式.所以我们想,这本书就像讲述数学之美之奇的故事,希望读者能够分享我们写作中的愉悦,哪怕只有ε 那么一点点.

“……一件具体的救生衣抛向沉入抽象大海的学生.”——W.Gottschalk

自从本书在大学环境中诞生以来,我们就一直尝试以非正式的风格来体现当代课堂教学的精神.有些人认为数学是一项严肃的工作,必须是冷冰冰的,但是我们认为数学是娱乐,而且并不羞于承认这个事实.为什么要把工作和娱乐截然分开呢?具体数学充满了引人入胜的模式,其演算推理并非总是轻而易举,然而答案却可能极具魅力.数学工作的欢乐和忧伤都鲜明地反映在这本书中,因为它们是我们生活的一部分.

学生们总是比老师们更有头脑,所以我们请这个教材的首批学生提出他们坦诚的意见,即旁注中的“涂鸦”.在这些“涂鸦”中,有一些仅仅是套话,有一些则很深奥;有一些提醒区分歧义或者含混之处,有一些则是后排那些聪明家伙爱做的点评;有一些是正面的,有一些是负面的,还有一些则不偏不倚.但是,它们都是情感的真实表现,应该有助于读者理解正文内容.(这种旁注的灵感来自名为Approaching Stanford(《走近斯坦福》)的学生手册.在这本手册中,官方的大学信息与即将离校的学生评论相映成趣.例如,斯坦福大学说:“在斯坦福大学这个无定型的生活方式中,有一些东西是你不能错过的.”而旁注中写道:“无定型……鬼知道是什么意思?这里到处都是典型的伪理智主义.”斯坦福大学说:“一群住在一起的学生,他们的潜力是无穷尽的.”而涂鸦则声称:“斯坦福大学的宿舍就像无人管理的动物园.”)

数学涂鸦:Kilroy wasn’t Haar. Free the group. Nuke the kernel. Power to the n. N=l  P =NP.2

我对这个主题的兴趣只能靠边站.

2这些涂鸦都是将某个典故与数学关联在了一起.比如“Kilroy was here!”指第二次世界大战期间美国士兵墙壁涂鸦,而Haar是指Alfréd Haar,一位匈牙利数学家.(如无特殊说明,本书脚注均为译者注.)

旁注中也直接引用了著名数学家们的话,这些话是他们在宣布某些重大发现时所说的.看起来,将莱布尼茨、欧拉、高斯等人的话与那些继续其研究工作的人的话混在一起是合适的.数学是身处各地的人进行的不间断的探索研究,涓涓细流才能汇成浩瀚的海洋.

这是我曾经上过的最令人愉快的课程.你在学习时能加以总结会大有裨益.

这本书包含了500多道习题,分成如下六大类.

  • 热身题:这是每一位读者在第一次阅读本书时就应完成的习题.

  • 基础题:这些习题揭示出了,通过自己的推导而不是他人的推导来学习最好.

  • 作业题:是加深理解当前章节内容的问题.

  • 考试题:一般同时涉及两章以上的内容,可作为家庭测试题(不作为课堂上的限时考试).

  • 附加题:它们超出了学习本教材的学生的平均水平,以耐人寻味的方式扩展了书中的知识.

  • 研究题:或许非人力所能解,但是这里给出的题似乎值得一试身手(不限时).

我明白了,具体数学就意味着操练.

作业题挺难,但是我学到很多,值得为它付出时间.

家庭测试题极其重要——请保留它们.

我猜想考试比作业更困难.

附录A中给出了所有习题的答案,常常还附有相关的解题思路.(当然,研究题的“答案”并不完全.但即便如此,也会给出部分结果或者提示,这或许会很有帮助.)我们鼓励读者看一看答案,特别是热身题的答案,但应该首先努力试图求解问题,而不是在这之前就偷窥答案.

偷懒者有可能通过抄袭答案通过这门课程,但他们是在自欺欺人.

在附录C中,我们尝试说明每道习题的出处,因为一个富有教益的问题常常融会了大量的创造性思想或者运气.很遗憾,数学家们有个不好的传统:借用了习题,而不表示感谢.我们相信,相反的做法,例如棋类书籍和杂志中的做法(通常都会指出最初棋类问题的名字、时间和地点),要远胜于此.然而,许多流传已久的问题我们已经无从考证其来源.如果有读者了解某个习题的起源,而书中的说明缺失或不够准确,我们非常乐于知道详情,以便在这本书的后续版本中予以纠正.

困难的考试并没有顾及要准备其他课程的学生.

这本书自始至终使用的数学字体是由Hermann Zapf[227]新设计的,它由美国数学会委托,并且在由B. Beeton、R. P. Boas、L. K. Durst、D. E. Knuth、P. Murdock、R. S. Palais、P. Renz、E. Swanson、S. B. Whidden和W. B. Woolf组成的委员会的帮助下发展起来.Zapf的设计基本原理是抓住数学的韵味,就好像它是一位数学家用极其漂亮的书法书写出来的.采用手写体而不用呆板机械的风格是恰当的,因为人们一般是用钢笔、铅笔或者粉笔创造数学的.(例如,新设计的一个特征是“0”的符号,这个符号的顶部有点尖,因为在曲线回到起点时,手写的零很少能够平滑地闭合.)字母是直立的,而不是斜置的,所以下标、上标以及撇号都更容易与常规符号融为一体.这种新的字体取名为AMS Euler,是以伟大的瑞士数学家莱昂哈德·欧拉(1707—1783)的名字命名的,他有如此众多广为人知的数学发现.这一字母系统包括Euler Text、Euler Fraktur和Euler Script Capitals,还有Euler Greek以及像  和  这样的特殊符号.我们特别高兴能在这本书里让Euler字体家族登台亮相,3因为莱昂哈德·欧拉的精神真的活在每一页中:具体数学就是欧拉的数学. 

——葛立恒,高德纳,帕塔许尼克

posted on 2019-01-21 22:39  Eufisky  阅读(1094)  评论(0编辑  收藏  举报

导航