高等数学和数学分析教材推荐及其学习方法浅谈

不管哪个科目的教材选择,一旦决定要学我总试图找一本较好的来,次一点的我也懒得花时间精力投入在上面——这就是我的完美主义情节!当我进入大学想自学高等数学时,我也同样试图去找一本较好的教材。

刚找的时候,网上很多人推荐同济大学的那本高等数学书,说是好多学校都在用,又因为同济大学在国内也算是名牌,基于这两个因素我就开始用它来学习高等数学,但是跟着这本书学了一段时间后,我经常会就课本上的内容问一些更深入的问题,也就是说这本书对于我来说在一些细节上没有进行深入,或在一些内容的讲解上不够彻底(比如说洛必达法则为什么也适用于x→∞时的0/0型未定式该书第七版上就根本没有证明,仅仅是告诉你个结论),当我老是带着这类问题去请教别人的时候,有人就建议说:如果我想好好学习大学数学的话那么就不要在高等数学上浪费时间,去看数学分析的书,因为数学分析的书讲得更全面、更透彻,就这样我告别了同济大学的高数书(这本书估计还是不太好,其不足之处这里的讨论也很有道理),接下来的任务就是去找一本好一点数学分析教材(后文我还会推荐高数学习用书,别走开)。

我在网上看了好多数学分析教材推荐的帖子,综合这些帖子里各本书被提及的频繁程度、网友的好评度还有作者的名气,我罗列了如下一个书单:

  1. 常庚哲,史济怀,《数学分析教程》

  2. 陈纪修,於崇华,金路,《数学分析》

  3. 华东师范大学数学系,《数学分析》

  4. 张筑生,《数学分析新讲》

  5. 菲赫金哥尔茨,《微积分学教程》

  6. 华罗庚,《高等数学引论》

  7. 柯朗,约翰,《微积分和数学分析引论(中文版)》

  8. 小平邦彦,《微积分入门》

  9. 陶哲轩,《实分析》

  10. Walter Rudin,《数学分析原理》

  11. Adrian Banner,《普林斯顿微积分读本》

每本我大体上都看过一下,但最终未能看完其中任何一本的四分之一,究其原因,一是这些书基本上都讲得太详细了,里面涉及数学分析的各种细枝末节,概念和内容都比较多,并且还有好多证明,这些内容理解掌握起来并不是很容易,在用这些书的学习过程中我经常碰到理解不了或者要花很长时间才能解决的问题,比如说一开始除了要弄清楚为什么要学习实数基本理论这个大问题外,每个人都不得不面对的另外一大阻碍是对极限的 (ε, δ)定义的理解,这个严谨的极限定义一下子就把原本看似简单直观好理解的极限概念变得面目全非、不知所云起来,不花一番大功夫是很难理解这种表述的意义的。我尝试过对这个极限定义的囫囵吞枣——能用所谓的(ε, δ)语言证明极限,但是每当这样做的时候我心中还是没有多少底气,也不知道自己在干什么,即便是硬着头皮往后学,但对该定义的不理解始终让我耿耿于怀。对于一个初学者来说,若不花长时间和下苦功夫是很难彻底搞懂这些内容的。用这些书学起来太慢,也比较困难,以至于时常给我带来学习高等数学的挫败感,所以最终我未能用这些书坚持学下去。我差不多有过三次用这些书屡学屡败的高数学习经历,后来我认识到这些写得较为全面详细的书基本上是不适于初学者用来自学的,原因且看下文。

在怀着高数难学的挫败感停滞学习一段时间后,我发现了美国俄亥俄州立大学的Calculus One (https://www.bilibili.com/video/av64578050/?p=1)课程,它算是高数的入门课,课程里不讲让很多人不知所云的极限 (ε, δ)定义,而是用直观易理解的方式讲解了高数里的基本概念和原理,我一开始对这种减去严谨极限定义的教学方式也是有点不放心,但想着老美总有自己的教学理念和想法,况且还是美国名校出的课程,所以就暂时放下了这种纠结跟着课程走。在学了三四个单元之后我发现跟着这个课程可以把高数学下去了!好高兴!终于没有再出现屡学屡败的高数学习状况了!就这样我的高数学习信心又慢慢地建立起来了!“每个教学视频的开头和结尾带感的音乐、极其富有激情的讲师、简单直观的讲解方式”——这一切让我渐渐地喜欢上了这个课程。在完成了这个课程三分之二内容后,我在该课程的学习中碰到了一个迈不过去的问题,我开始放下这个课程去思考这个问题,同时也去思考高数和数学里的一些基本问题,如公理、实数理论等。

当我们在用一本书(或跟一门课)学习的时候,基本上不可能不在学习中产生疑问,除去我们自己的原因之外,也有书本的原因:正如人无完人一样,没有哪一本书是完美无瑕的,以至于能解决你在该科目学习过程中的所有问题(诺贝尔物理奖获得者Gerard 't Hooft和菲尔兹奖获得者丘成桐都表达过同样的观点:当你能够发现书里的不足之处时你就有不错的进步了),所以我强烈建议自学者除了选一本较好的教材作为学习主轴后也要再多找几本同类教材作参考书,以便一本书上的知识点讲解看不懂的时候可以看另一本上的来打开思路。若看书也不能解决问题,那么还可以把你的数学问题用英文写了发在Mathematics Stack Exchange这个网络社区里问一问,老外们乐于助人的品质、对数学的热情、认真负责的态度都很感染我——向他们学习!顺便一提:中学时期看不懂教材我们可以买很多参考书来看,但到大学来想找本参考书就不太容易了,原因之一我想是高等教育领域的应试教育市场经济不够繁荣所致。

再回来说Calculus One这个课程,它是很不错的入门课,可以把初学者领进高数学习的大门。该课程不讲极限的 (ε, δ)定义极有可能是考虑到了该课程的受众——高数初学者,相反如果一开始就带初学者去折腾实数基本理论和这个严谨的极限定义,那么正如你我认识到的那样,这很大程度上会给初学者带来高数学习的挫败感和畏难情绪,我在高数自学过程中就走过这条坎坷路,也还好找到了这个课程,从此终于可以把高数学下去!后来我又了解到:即便是国外名校的数学系课程也基本上是先开这种入门课,课程名通常是Calculus(微积分,相当于国内的“高等数学”),甚至还会有更基础、更简单的微积分先修课程PreCalculus,等学生掌握了基础课程后才会开数学分析之类的深度课程。这种循序渐进、由易到难的安排有效降低了高数学习的难度,也体现了一种对新手的关怀。在这里我摘录美国几所大学的高数入门和深入课程的先后顺序给大家看下(课号大的课都是安排在后面上的):

斯坦福大学数学系

Math 19 Calculus(相当于“高数入门课”)
Math 205A Real Analysis(相当于“数学分析”)

普林斯顿数学系

MAT 103 Calculus I
MAT 215 Honors Analysis (Single Variable)(相当于“数学分析”)

麻省理工学院数学系

18.01 Calculus
18.100A / 1001 Real Analysis

国内高数教学又是怎样的状况?!在此我不想多抱怨,只是认识到:在国内如果想要学好高等数学的话,“自学”应该是绝大多数人的不二之选。

对于一个想要学习高数的人来说,首先应该弄清楚的是自己的角色——初学者。在我看来,高数初学者一开始不用学得那么全面,甚至不用去管极限的 (ε, δ)定义,而是要先观其大略地过它一遍、先入门,这并非是走马观花,而是要理解核心思想、掌握主干,等掌握了大略之后再深入细节会轻松很多,这样才不会一开始学就被各种细枝末节绕得云里雾里的以至于不能对这门学科有全局的把握,我们要有的是一个循序渐进的过程!北京大学的张筑生教授也在其《数学分析新讲》的序言里表达了同样的观点:“微积分本来是一件完整的艺术杰作,现在却被拆成碎片,对每一细部进行详尽的、琐细的考察。每一细节都弄得很清楚了,完整的艺术形象却消失了。今日的初学者在很长一段时间里只见树木不见森林……我们希望尽可能早一点让初学者对分析的全貌有一个轮廓的印象,尽可能早一点让初学者学会用分析的方法去解决问题……等到学生对全貌有了初步的印象之后,再具体进行涉及细节的讨论……”(题外话:虽然张老师在写他这本教材的时候也有了这种考量,但这本书在我看来还是写得过于详细繁琐了些)这种先观大略的学习方法也适合其他科目的学习,《斯坦福大学公开课:编程方法学》里也提到过这种方法

“工欲善其事,必先利其器”,为了做到高数学习上面的“先观大略”,我首先推荐的入门教材是George Simmons的Calculus With Analytic Geometry(Second Edition),辅助教材是Morris Kline的 Calculus: An Intuitive and Physical Approach (Second Edition),这两本书可说就是为此而生的。我推荐每个想要学好高数的人都去看看后面这本书的序言,大有裨益!下面我转述序言中几个可能会对大家学习有帮助的观点(虽然说我下面大量地转述了Morris Kline的观点,但总的来说我认为George Simmons的这本书似乎又技高一筹)。

微积分入门课的教学有严谨和直观两种方式,Morris Kline认为应该采用直观的方式进行,并且在教学中应该多谈其应用,严谨的方式适合于微积分的高阶课程。入门课就用严谨的方式(我认为这是当今国内的普遍做法)有以下几种弊端:其一,严谨的方式要求初学者学习很多微妙、难以捉摸的概念,这对初学者来说是很有难度的,更何况有些概念的提出还曾困扰了数学家两百年之久。在那个为微积分建立严谨基础的时代里,即便是柯西(Cauchy)这样的大数学家也搞混了连续和可导(continuity and differentiability)、收敛和一致收敛(convergence and uniform convergence)间的区别。其二,如果一个学生要学懂一个概念或定理的严谨化表述,那么在这之前他必须知道这种严谨化表述所要传达的思想的雏形是什么、起始时的直观思想是什么(这就很可能需要去看相关的数学史,顺便一提:看数学史对我们学习数学也是非常有帮助的),进而才可能理解严谨化表述的意义——严谨化表述为什么能够避免直观化表达的不足、严谨化表述所要得到的是什么样的结果和传达什么样的思想,这就势必会增加学生的学习量,而一个初学者若要循此道学习,那么他要学习的内容将会是非常庞大的,以至于可想而知的是他的学习进度会很慢,他也极有可能会陷入这门学科的细枝末节中纠缠不清,进而看不清这门学科的全貌;其三,让初学者一开始就学习经过严谨化整理出来的内容会让他们看不到知识的产生过程,也容易让他们以为:“高等数学是推导出来的,建立这门学科的每一步都是有根有据、正确无疑的,好的数学家的思考方式也是一步一步走的、在出结论之前所有的细节都已经缜密地处理好”,但实际上并非都如此,数学知识的产生也是可以通过“认识到之前的做法有问题,然后再改正”来产生的, “微积分这座大厦是从上往下施工建造起来的。微积分诞生之初就显示了强大的威力,解决了许多过去认为是高不可攀的困难问题,取得了辉煌的胜利。创始微积分的大师们着眼于发展强有力的方法,解决各式各样的问题。他们没有来得及为这门新学科建立起经得起推敲的严格的理论基础。在以后的发展中,后继者才对逻辑的细节作了逐一的修补”(选自张筑生《数学分析新讲》的序言),也就是说数学家的思维方式并非总是循序渐进的,他们的思维方式也可以是跳跃性的、天马行空的,也有可能不严谨或出错,并非像写证明过程那样非常讲究每个点的先后顺序、是一步一步走到最终结论的,有时候甚至是先有“猜想”然后才去求证中间过程的。Morris Kline在他这本书中也通过展示数学理论是可以通过先猜想,然后尝试和摸索,进而认识到犯错了,然后再更正的方式探索出来的,这种做法我认为很有价值,因为它向初学者完整地揭示数学理论产生的思路历程,向我们展示了如何研究数学,这也避免了我们看有些别的同类书时碰到的一些匪夷所思的“神来之笔”时所产生的惊奇——为什么作者会想到这个变换、这种构造?

严谨化在数学里有其重要意义,它是对起始时的想法的核实、对初步想法的精炼,可以避免直觉可能带来的错误或遗漏之处,但如Henri Lebesgue(亨利·勒贝格,著名数学家)所说:“严谨化、逻辑化可以帮助我们否定猜想和假设,但是它不能创造任何猜想和假设。” 数学的核心思想来源于直观思维,严谨化并不能对这些数学思想产生质的改观,它起到的作用只是巩固和对这些思想的去伪存真。此外,严谨的表达方式不容易掌握,对我们理解数学思想的帮助也不大,所以严谨化方式的微积分入门课教学对初学者是不利的, Morris Kline引用Samuel Johnson(英国作家、文学评论家和诗人)的话对这种方式的教学效果评价到:“我为你提供了它的证明过程,但是帮助你理解它并不是我的义务。”

Morris Kline也谈到了好多高等数学入门教材共有的一个严重问题——把数学和它的应用完全割裂开来。这些书里基本都是些符号的演算,也差不多全然不谈数学理论的运用,乍看之下会让人觉得高等数学就是一堆折腾符号的玩意儿,写这些书的人忽略的大问题是:学习微积分这门课程的不少学生未来将会是工程师或科学家,他们必须知道怎么应用微积分、应用数学才行,如果只是教他们折腾符号、搞些不知所云的、看不到什么应用的证明,那么整个数学教育的意义便会大打折扣。

通过以上这些Morris Kline的观点,大家或许也和我一样感受到了他对初学者的微积分教学的深刻认识,也正是如此我才推荐初学者去看他这本书。我首先接触到的Morris Kline的书是《Mathematical Thought from Ancient to Modern Times》(中译本:古今数学思想),看过几个章节1后便深深佩服其对数学本质及其发展史的深刻认识,后来又看到这个书的序言后就更是对Morris Kline佩服无比了,从此自认为他是我的数学导师!

我上文“建议自学者选一本较好的教材作为学习主轴后再多找几本同类教材作参考书,以便一本书上的知识点讲解看不懂的时候可以看另一本上的来打开思路”,所以总结一下我学习的主要教材是George Simmons的Calculus With Analytic Geometry(Second Edition),参考教材按照常用优先排名分别是:①Morris Kline, Calculus: An Intuitive and Physical Approach (Second Edition)、②Richard Courant, Fritz John, Introduction to Calculus and Analysis(Reprint of the 1989 edition) 、③The Fundamentals of Mathematical Analysis, Volume 1, 1st Edition, G. M. Fikhtengol'ts(中译本:菲赫金哥尔茨《数学分析原理》)、④陈纪修、於崇华、金路的《数学分析》、⑤Joel R. Hass, Christopher E. Heil, Maurice D. Weir ,Thomas’ calculus。

各位学完如上面推荐的这种入门教材后,若要深入学习高数,可以看Richard Courant, Fritz John, Introduction to Calculus and Analysis(Reprint of the 1989 edition),这本书也是大师之作,该书的一大难能可贵之处在于对一些数学定理的揭示,作者仅用很直白的语言叙述就可以让读者洞见定理的本质,每当看到这种内容时我不禁感叹:“原来如此!作者的功力也太深厚了吧!”而国内的书多半倾向于用各种符号去证明定理的正确性,这些证明不是很好掌握,我个人看后通常的感触是“该定理正确”,然后并没有什么深刻的认识,更别说和之前学过的知识融会贯通了。与这本书对应的辅助教材我就暂时无法推荐了,因为我还没有深入学习高数。

上面给大家推荐的这两本皆是英文教材,为什么要看英文版呢?因为优秀的中文学习资料不太多,所以想只用中文资料学好科学或技术类学科的支援不太多,学起来会很费劲,并且这年头英语是学术界的主流语言,很多新的、一流的资料都用英文写成,也就是说优秀的英文学习资源是比较丰富的,在优质资源充裕的环境里学习会不会更好更轻松呢?大家自有评判!其实阅读英文写的专业资料并不是太难,如果大学之前的那些英文语法和单词你掌握得都还行,那么接下来你在英文版专业资料阅读过程中主要的障碍是陌生单词多的问题,对此大家找个词典软件辅助阅读就会顺畅很多,比如有道词典、欧路词典之类的,当然也可以考虑使用我的英酷词典,它主要就是为助力我们的英文阅读而生的。如果你不能做到通畅阅读英文但还有个科学梦的话,那么你实现梦想的几率是不太高的。你也许会问:看中译本行不行?如果你看的是小说传记之类的对逐字逐句准确度要求不高的书,那么可以看,但若要看如高数之类的对逐字逐句准确度要求较高的书的话,那么看中译本很难行!主要问题是中文翻译不容易做到准确传达英文原版的意思(这要求译者花费大量心思去尽可能地做到准确翻译,然而因为各种原因鲜有这种高标准翻译的促成),这就会导致翻译过来的内容有失真或曲解的情况,以至于中译本的读者读起来在理解内容上很费力,花了很多功夫尝试去理解而最终却无果的情况也不少有,然而这时候要再去看下英文原版,原来的疑惑很可能突然就拨云见日了——全是翻译问题搞的鬼! 总体来说高数算是西学,而我们用的中文版高数教材的很多定理的名称都是翻译过来的,这些翻译显得很有“文言功底”,我认为这是不好的翻译,因为当代人看起来不易见名会义,而看英文版的教材的话很大程度上能够避免这个问题。

以上就是我自学高数探索出来的一些经验总结,希望后来者看后有一定帮助。本篇成文于2018年10月16日,文中所描述的一些事实可能会随着时间的推移而发生变化,请读者自行分辨!2022年1月5日再次修订。


  1. 有兴趣的读者可以看一下我当时阅读的摘要与记录:

    1 http://note.youdao.com/noteshare?id=9ca0f5339ecc3c7f6609586fbdd08a2a

    2 http://note.youdao.com/noteshare?id=f82a304770a7d71cd899b3001d2571b8

高等数学