论本科阶段的理工科教育
(一)关于理工科学习,一个需要厘清的问题的大背景是:我们周围同学的天赋、思维能力大概可以区分为普通与很好两个基本层次;以当年我所在的复旦数学系为例(复旦大学是中国最好的大学之一),其中的大部分学生集中在“普通”层次,我大概属于这个层次;而另外一小部分则属于天资优异、禀赋丰厚的层次,如沈维孝、吴文俊等。两个层次之间的学生在思维能力上存在着巨大的差别,“很好”的学生与“普通”学生在学习效率上能够相差数十倍以上。(我们周围都有少数一些每天只学3、4个小时即能将全部课程学的很好的学生)不同个人的思维能力在具体知识层面的表现是:面对同样的知识、同样的内容,两个思维能力不同的个人在理解深度、掌握的熟练程度以及创造性运用的程度这三个主要方面都有着很大的差异。从主动解决课后题和掌握具体知识的角度来看(这两件事大体是同一件事),在本科毕业时,“普通”层次的学生只是掌握了很小一部分的知识要点,因而只能解出很少部分课后题,而“很好”层次的学生大概能解出全部课后题,即他们大致熟练地掌握了本科时接触到的全部知识。
本科四年的求学期间,由于我对数学抱有的巨大热情,学习较为刻苦,可谓夜以继日,白天除了听课、用餐的时间以外,其他时间主要是在第二、三教等自习室全力自修,晚间又分秒必争地在第四、五教学楼自修,从早晨8点到深夜12点,每天繁忙的学习计划都安排得很紧凑。为了加深对课程的理解、做出家庭作业和准备期末考试这三个目的,我钻研过很多习题集,比如针对高等代数认真研习了两三本习题集,针对数学分析也研究过很多习题集,关于复变函数在图书馆也参考过若干习题集。为了应付作业,我们不得不投入大量的时间、精力在学习上,我至今仍然记得为了按时交付作业在自习室苦读泛函分析、代数拓扑、偏微分方程和微分几何等课程时的紧张情形。本科期间,我们上课时间在认真听老师授课,下课的时间则反复阅读教材以便能够解答出作业题,学习始终是我们大学四年的基调旋律;我想,大部分的理工科学生大体都经历了类似的生活状态。但是,即便经历了如此刻苦的学习,最后本科毕业之时,我的学习效果仍然很糟糕;当时,对数学分析而言我只能解出10%左右的最简单的课后题,偏微分方程等课程也基本没有入门(从今天较高的观点来看),相关的课后题大部分我都不会做。总之,在整个本科阶段,我都对自己无法主动解题这一个核心问题感到很苦恼。造成这一基本现象的原因是很复杂的;其中,最核心的基本原因是思维境界太低,造成对知识的理解非常肤浅,学过一遍知识之后在头脑中留下的只是模糊肤浅的印象。整体而论,我的本科阶段学习效果不佳的本质原因是我的思维能力较差,处在“普通”的层次。我的这一学习状态应当不是个例,我想大部分理工科学生都与我有着相似的思想经历,即本科毕业之时对核心专业课程的掌握很不到位。
本科第四年期间(由于中国大学的特殊课程设置,我们在本科除了写作毕业论文和实习之外,第四年期间没有新的课程需要学习),我并没有像某些学生一样放松自娱,而是继续保持着认真学习的状态;此时,由于有了大量的闲暇时间,因而,我进行了复习本科课程的工作;我重复学习的课程包括实变函数、偏微分方程以及复变函数等,当时,我都在特定的教室里重新旁听教师们授课,因此,我的知识、独立见解还在不断积累,思维能力还在日益增强;但是,仍然没有达到太理想的效果,我还是无法主动解题,从今天的角度来看,我当时的理解仍然十分零碎、浅显。在很长一段时间内,这种无法主动解题的困扰所产生的焦虑感都是我面对数学的主要心理状态。
一直到大学本科毕业,我对一些常见函数的泰勒展开都没有很好掌握,对置换群、偏微分方程的分离变量法等最基本的内容有的也只是非常肤浅、混乱和模糊的印象,虽然这是令人很羞愧的一件事情,但确实是一个基本事实。
研究生阶段时情况发生了质的变化,我并没有像几乎所有其他同学那样将精力集中在research上,而是用在了重新学习本科生时的课程上,这一总体战略起到了良好的效果。(我所以采取这个策略,是因为无法主动解决课后题这件事令我非常苦恼,而且我认为这是一个无法回避的本质性问题)研究生阶段的前一年半,为了准备qualifying exam,,我在抽象代数、数值PDE和泛函分析这三门基础课程上重复了10遍以上;从研究生二年级的春季学期(即2013年1月)开始,我在数学分析(微积分和它的理论原理)、一半左右的高等代数、2/3左右的抽象代数、狭义相对论、2/3左右的偏微分方程、C++语言以及数值PDE这4、5门课程上都重复了四五十遍(这些课程的重复过程我是同时进行的)。重新学习本科课程的主要目的有三个基本方面:其一,知识的积累和扩展;其二,能力的提升;其三,积累大量关于相关课程的经由独立思考产生的观念。这三个目标是高度统一、互相交织的。经过2013年后三年多时间的重复,到2016年夏天,我的能力终于由“普通”这个层次有了较大的提升,这是质的突破。期间,我的能力所以有了质的突破,是因为我的思维能力有了很大的提升;思维境界是每天不断升华的过程,从短程时间来看每天的提升虽然较小,但确实能感觉到;而从长程时间来看,我能很明显、真实地体会到自己思维境界的巨大飞跃。比如,从本科一年级到三年级这三年,我的思维能力一直在不断提升,虽然今天看来当时的思维境界很不理想,但这个思维能力不断增强的过程是很真实的;从研究生一年级到研究生五年级又经过了五年,我的思维能力仍然在每天不断提升,到了本科毕业五年之后的夏天,我的思维能力终于提高到了较佳的境界。
对于本科毕业后的五年没有进行重复的课程,我的印象非常朦胧模糊,比如代数拓扑(诸如映射提升定理等要点)、高等代数(诸如Jordan标准型等关键内容)等课程;这就充分证明我当时的思维能力太差,对知识的内在理解力存在着比较严重的问题。我想这种智力状态也是大部分同学共有的基本经验,大家本科学习知识的时候都感到一片朦胧,似是而非。
到了2016年夏天(8月末),经过本科毕业以后五年时间的不断重复学习,我终于感觉微积分等课程已经较为简单,思考其中的问题也变得更加自然,其中三分之二以上的习题我已都能够自主解答(以往这些题目我都感觉很困难,无从入手,现在我意识到它们都只是较为基本的问题)。这一段艰辛而又收益丰润的学习经历带给我的深刻启迪是:如果我们花大量的时间不断重复,最终都能够很好地掌握一门课程,使之成为我们的看家本领。数学学习中,复杂与简单、抽象与具体等都是相对的;在我们掌握程度不佳的时候,自然感觉众多的理论、题目都较为抽象、困难,但整体掌握程度提升以后,又会感觉它们很具体而亲切。
回顾这个漫长的过程,我可以肯定地说对于数学分析等课程即使重复到了第49遍,我还是大部分的课后习题都无法解决,直到第50遍(2016年1月时)我才能做出一小部分的题目;后面每重复一遍仍然都有较大的飞跃,到第55遍(2016年8月时)就感觉我重复的那4、5门课程已经掌握得比较深刻、条理、透澈(能够做出来三分之二以上的课后题,而且,感觉这些题目都很自然亲切)。而重复到第55遍时,我不仅感觉能解出大部分的题目,更感觉到相关章节的主要知识要点我已经融会贯通,此时面对具体问题,自己的思路清晰了很多,也感觉这些问题简单了很多,有一种分外轻松的感觉;而且,这种感受是一种整体性的现象。因此,之前我听物理系的某些同学说他们在理论力学这门课程中学的很痛苦,绝大部分课后题都无法解决,这个基本现象是可以容易理解的,因为他们可能只是重复了20遍,距离50遍还相当遥远,所以自然无法解答题目,因而比较痛苦。大家都知道阅读文献的时候,会感觉读第二遍就像读第一遍完全没有读过一样,而我在重复本科课程时的心智体验也是类似的,甚至更严重很多;因为,当我重复第50遍的时候仍然感觉前49遍像完全没学过一样,直到第51遍才感觉以前掌握了一些内容。这个过程里的很多中间阶段,我重复教材感觉怎么还有如此众多的知识要点以前完全没有注意到,当时真不知道这个无穷无尽的重复过程何时才是终点,很多次我都怀疑自己究竟能不能彻底掌握这些课程,当然,重复五十多遍之后我最终心里有底了。总结而言,我只是重复数学分析等4门本科时的课程就花费了三年多的时间。(需要指出的是,只是解决三分之二以上的课后题是不够的,我们必须要能大体解决全部课后题,特别是其中的难题,只有这样才能达到重复本科课程的真正目的;因为,只有大体解决所有难题,我们才能够对一门课程形成足够的理解深度。)
理工科知识所以要重复55遍以上是因为理工科知识具有四个基本的特点:1信息量极大,每门课程都包含几十万条信息,每页纸上也包含了高度浓缩的大量信息;2各种知识点之间相互联系,相互交织,彼此影响,是一个有机的思想体系;3知识点过于细致,众多细节其实很关键;4知识有相当深度,较为抽象,不易掌握。由于这四个特点,特别是第一个特点,所以理工科知识才比较难于掌握,因而,理工科学习、创造永远是一个慢工出细活的过程。(当然,随着我们整体思维能力的很大提升,我想后续课程可能只需要重复10遍以下就已足够)在人文社科领域,如历史学等虽然信息量也极大,但不需要重复太多遍数,政治哲学等著作(如罗尔斯的《正义论》)如果要把握透彻可能也需要重复20遍以上,但自然不至于在起始阶段需要重复55遍以上。理工科中的各个知识点之间相互联系这一基本特征决定了对于任何一部分知识(比如狭义相对论等),我们必须将其中的知识点全部掌握,不遗留下内在的知识缺环,才能够将它们掌握到位;因此,理工科的学习对我们有着很高的要求。
在重复大学课程的过程中,我的指导原则有以下五条:1(如很多同学所体会到的)整体思维能力每天的不断升华。2少而精,我不想一下子重复10门课程,而是首先重复了4、5门课程,不把它们彻底掌握我不会学习其他的课程,容易理解的是,只有把一门课程学到简单透彻、清澈明净的境界才说明较为掌握到位;少而精的最主要标准即是每门课程的所有课后题要能够大体全部解出;并且,由于理工科知识的精细性这一基本特征,因而,在解决问题的过程中,只有整体的思路是很不够的,必须要能得到精确的结果或者描述清楚的证明。3深度,对课程的理解需要达到足够的深度,这就必须做一定量的难题,只有大量的难题才能够训练我们的很多高层次专业素质。4不断重复、熟练,最开始阶段重复55遍以上。5格罗滕迪克的主要哲学思想:解题依靠的是整体功底、直觉,只有我们感觉这些题目非常显然,思路能够自然涌现出来,才说明我们已经掌握到位,解题需要分解为一系列细小而自然的步骤。(这句话大概可以回答很多学生的疑问:为什么我不会做题?答案就是重复的遍数不够,掌握的深度欠缺,熟练程度不足;因此,解题的直觉不能自然地闪现。我们所以做不出题目的本质原因就在于一整块知识学得不太好,整体功底存在着一定程度的缺失)
总结而言,世界各国的本科生,无论是美国、欧洲、日本亦或巴西等国的学生,所以做不出题目来、所以面对考试很畏惧大致可以区分为两种情形:其一,天赋较高,思维能力较强,但基本功太差,这可以通过短时间补充高中、初中的基本功来加以解决;其二,天赋较差,思维能力较差,这个问题的解决则需要花费很长的时间,至少需要8、9年的时间。其中,第二种情形在理工科教育里无疑占主流。以我来说,我持续学习了9年时间,在数学分析等课程中投入了巨大精力之后,到本科毕业五年的末期,才共计彻底掌握了4门课程(如果包括我对数学的思想性、独立性认识,这一思维方式可以将课程信息量扩充一倍的话,掌握的课程容量会更大一些),这一投入、产出比自然是比较低的,但这恐怕是理工科学习的客观现实。
对于美国很多的本科生来说,微积分没有掌握自然是一个基本问题;其中的一部分学生只是微积分没有牢固掌握,而另一部分本科生的问题则在于他们的高中、初中的基本功不够坚实;因而,为了掌握足够的专业技能,这些学生可能还需要重复高中阶段的基础知识。
(二)总结我们的上述分析,我们能够意识到,中国大部分的理工科本科毕业生(中国最顶尖的学校包括在内)的基本功仍然非常堪忧,这些学生在本科基础课程上的大部分课后习题都不会做。因此,我们需要特别留意本科基础课程,诸如计算机、机械工程、电子工程、统计、航空航天工程、土木工程、石油工程、通信工程、化学工程、物理、化学等专业的本科毕业生都需要在必要的时候重复本科课程。我的个人观点是,中科院电子工程专业的研究生中的很大一部分个体在本科的课程上一是具体知识掌握的比较糟糕,二是这些课程的大部分习题他们并不会做,这在外人看来可能有些难以相信,但事实是一半以上的学生都存在着这个基本问题。
以很多工作了多年的教授而言更能充分体现这一点的基本重要性,无论是在中国还是在美国,一些35岁左右的青年教师基本功仍然比较糟糕,甚至最基本的数学分析里的难题都无法解答;所以他们必须重复本科课程,多掌握几门看家本领。在目前的大学研究生院里,很多学生在通过qualifying exam之后的博士二、三年级就开始了独立研究,而此时他们的本科基础课程仍然很不牢固,其中的大部分习题都无法主动解答,因而,我们认为,这样的方式只能做出一些不太重要的结果。
以我个人而言,尽管我在本科期间的成绩在全部学生的前15%左右,研究生期间的十几门专业课程的最终成绩也都是A(这些课程都是实变函数、偏微分方程等具体的课程,而不是research、directed study等性质的课程,我主要在研究生阶段的前两年修读了这些课程),但这些课程其实我学得都不是很好;举例来说,关于点集拓扑这门课,我本科三年级上过一遍课,研究生一年级和二年级又分别上过一遍,但即使上过三遍课,点集拓扑这门课我学得仍然很糟糕,几乎所有课后题都不会做,也就是说大部分精髓都没有学懂(我学习实变函数的经历也是类似的,也在本科和研究生阶段上过三遍课,同样学得也很差),这种经验自然有着比较普遍的意义。大概从本科二年级开始我就意识到了两个基本问题:其一,我们学到的课程里的很多内容我学不太懂;其二,我们学习的课程中大部分课后题我都不会做。
对哈佛、普林斯顿、MIT等顶尖学校的相当比例的博士生来说,也存在着类似的情况;如我们所熟知,大部分学得较好的统计系博士生都有了4、5篇优质论文,电子工程等专业好的博士生亦有了很多论文,而一些统计系、电子工程系博士生则一篇论文都没有,这自然说明他们的基础课程学得不太好;即关于本科的基础课程,他们一是具体知识学的比较糟糕,二是其中的大部分课后题都不会做。总之,本文所讨论的基本问题对他们而言亦是适用的。
(三)打好基本功,我们才能更好地理解后续课程,比如数学分析[1]对实变函数的深层影响至少包涵:1Riemann可积函数的种类并没有澄清,在实变中则得到了彻底解决;2函数项级数部分一致收敛要求过高,在实变函数中的要求则有了较大程度的降低;3交换积分次序的定理要求过高,在实变函数的Fubini定理中得到了改进。数学分析对泛函分析的影响包括:1Baire纲定理可以解决函数间断点集的特征、Fourier级数的收敛性等问题,所以Baire纲定理不仅对后续的泛函中的主要定理影响深远,而且在数学分析中也有着深厚的基础;2Fourier级数的知识在泛函分析的Hilbert空间中得到了推广,Fourier级数的最佳平方逼近性质、Parseval等式等性质是Hilbert空间相应性质的最重要的特例;3数学分析中的序列收敛、拓扑性质、微分算子、积分算子等核心主题在泛函分析中也得到了全面的深化。再以对统计学影响深远的概率论而言,如所周知,概率论中需要计算大量的概率分布,而这些概率分布的计算与数学分析中的重积分、级数等知识往往有着密切的关联。至于数学分析对点集拓扑等课程在概念、方法上的直接启发性更是我们所熟知的。在重复本科课程55遍之前,我只是模糊肤浅地了解到数学分析对于上述课程的基本重要性,等到有了知识和题目的双重坚实功底以后,我才有了深刻而自然的体验,比如Taylor展开对有限差分误差估计的重要性,留数定理在计算畸形积分上的价值等只有在做了数学分析中大量的Taylor展开题目、积分题目后我才有了深刻体验,类似的例子是大量存在的。数学分析对后续课程的深远影响可以区分为直接和间接两个层面,直接影响是我们可以较为容易地列举出来的大量具体例子,间接影响则渗透在数学素养、意识等方面,虽然难以用语言表达,我们也日用而不知,但同样是非常重要的。正如恽之玮所正确指出的,数学分析和高等代数的影响可以一直延伸到研究生的课程,学好这两门课程以后后续的课程就不会太艰难;基础课程是整个现代数学有机思想体系的基石,如果掌握不佳,我们对数学的理解自然会有很多原始性的缺陷。我的切身体验是,当在微积分中的功底深厚了以后,我在学习偏微分方程、数值PDE等相关课程时,感觉分外轻松,对于其中的大量繁复推导都感觉很严格和自然。
基础课程中一个具体的知识点,譬如,群论中的同态基本定理,对我们的启发可以分为三个层面:第一,该定理能够具体解决的问题;第二,该定理在抽象代数整门课程中的意义、价值;第三,该定理对于整体数学而言衍生的丰富内涵。当然,数学中所有的知识点可能都具备上述的三重价值。总之,我们打好基本功一是为了提高整体能力(譬如,使自己的思维能力从“普通”向上提升),二是为了从思想层面形成对整个学科思想体系的有序性、原始性的深厚理解,第三则是大家所熟知的具体知识的积累;整个过程是三者的有机统一。
我们可以举出更多的具体例子,如复变函数中的光滑曲线上的复积分与微积分中的第一类曲线积分有着直接的思想渊源,我们如果关于后者的基本功坚实的话,接触、学习前者时会感觉分外自然;再如抽象代数中有多项式的相关理论,而在高等代数中则有着非常相近的理论,高等代数中讨论过多项式的余式定理、唯一因子分解性质、最大公因式等问题,在抽象代数中的相关讨论则既有思想的沿袭又有新的变化(因为此时有了更为宽广、抽象的理论架构),如果我们关于高等代数中的多项式理论非常熟悉的话,学习抽象代数中的对应理论会感觉很轻松。类似的情况是无以数计的,即基础课程中的相关理论与思想对后继课程有着直接、全面而强烈的影响,前者包含了大量的原始思想根芽,这一事实充分证明了基本功底的重要性。
(四)如何解题自然是本科期间的一个核心问题,这个问题在本科四年期间一直困扰着我;不止如此的是,到了研究生四年级末,这个问题仍然困扰着我,我当时还是不会主动解题,尤其是难题;我想化学工程、物理等专业的很多博士生也面临着类似的困扰。直到本科毕业五年以后,经过9年漫长时间的挣扎摸索,我才逐渐克服了这个中心问题,不会解题的核心原因是对课程的理解深度不够,思维境界太差(上文已经反复提示过这个关键要点);由于对知识的理解比较肤浅,根本抓不住课程中的精华、中心精神和深层脉络,所以自然无法解题。以我的个人经历来说,本科毕业四年之后,确切地说是2015年10月以前,我对多元隐函数的计算、含参变量积分的分析性质、重积分、第一类曲面积分等部分的题目都不会做,感觉这些问题都遥不可及;但是,当我重复到第51遍的时候终于能够做出其中部分的相关问题,而且做出来之后意识到它们只是最简单、最基本的问题,这重心理体验我想具有很大的普遍性。当我钻研到第51遍的时候,才明白到诸如第二类曲面积分的理论基础和具体例题两个方面,自己以前根本没有掌握;在知识层面都没有掌握到位的情况下,我自然不可能解出该部分的题目。解题是由三个方面支撑起来的:知识要点(是一种整体性的现象)、思维方式和思想深度,很多情况下对一道具体的题目,如果我们相关的知识点掌握不到位(如上极限、确界等概念无法做到灵活运用)或者思想深度不够,亦或相关的数学思维方式不具备,那么即使我们思考一整年的时间也是无法解决它的。在我重复到第50遍左右的时候,只是能零零碎碎地做出一些课后题,到第55遍左右的时候(2016年8月期间),我已经能够大面积地解决众多的课后题;此时我所以能解决这些问题,一方面源于基本功的深化,另一方面在于思维境界的提升,即此时自己的思维能力大大提高了,忽然感觉这些题目的整体思路、关键细节等已经分外清楚;即我们的解题依靠的是坚实的整体性知识功底和较高的思维境界这两个基本条件,两者叠加在一起,才能够使我们解出问题。
很多人都有的两种感触是:其一,很多时候,我们解不出题目,看了答案之后,间隔了若干天,再做一遍还是无法解答;再看一遍答案,等到再经过一段时间以后,我们会认为自己的功力已经能够解决这个问题,可是实际一做还是做不出。(阅读书籍时,面对书中的知识点也会存在类似的感触)其二,对于我们能做出的题(或者自己已经掌握的概念、方法等知识要点)再看一遍也会有崭新的感触,一是更加熟练,二是把握更加深刻、深厚,三是对它们的理解嵌入到了知识体系的有机整体之中。整体来讲,我们解决问题会经过三个阶段:首先,不会做某道题;其次,能解决这道题,但较为勉强,感觉较为艰难;最后,能轻松自如地解出某道题。这三个阶段是每个人都会自然而然经历的过程。
在这里,我们必须回答一个基本问题:解题(problem solving)为何具有一定的重要性?原因大概可以分为三点:1课程中的知识一般较为抽象,而课后题则较为具体,包含了大量的例子,这些例子可以扩展我们对于课程知识的理解;学习的目的在于运用,课后题是一种很好的运用知识的场合,能够使得我们对于知识的运用有初步的体会。2要解决一些问题,通常需要一定的思想深度,某些同学自以为自己已经掌握了某部分知识,但是课后题无法解决,这自然证明他们的理解并不到位;即如果我们做题时只有模糊的直觉而不能得到清晰而精细的思路与准确的结果,这无疑是知识掌握不到位的直接标志;某些情况下,我们以为自己懂了,其实并没有真懂,离真懂还差了很远,因而,难题是对我们理解程度的一个检验。一个适当的例子是,有段时间,我认为自己关于一致收敛这个概念的理解已经足够透彻了,我认为教材中的理论和例题我都已经熟练掌握了;但是,当我做这部分内容的相关习题时,我发现有些题目我确实能够做出来,但是有些题目我仍然不会做,总之,这个概念的相关内容比我原本理解的要复杂、深刻一些。简言之,解决种类多样的问题需要大量的概念、思想、方法、技巧的积累,很多问题需要一些概念层面的理解或者技巧层面的掌握,当我们对概念、技巧的掌握到位以后,自然能够解决相关的问题。3难题常常涉及到多个知识点,这些知识点常常超出某个章节而涉及其他章节甚至其他课程,而且非常灵活和强韧,这对于提高我们的综合能力、深化我们对一门课程的整体理解具有根本的重要性。总之,解题(尤其是一定量的难题)在理工科学习中是一个较为基本的环节。
容易观察到的一个事实是,理工科题目具有五个基本特点:1强韧性、复杂性,很多题目都需要经过繁复曲折的计算。2深度。大量课后习题都有一定的思想深度,需要我们对相关知识的理解达到足够的深度才能解决。3高度灵活性,很多相关习题需要高度的技巧,非常灵活,充满变化,并非模式化、标准化的流程即能解决的。4多样性,课后习题考察的通常是一个章节的所有重要知识点,并非只针对某些个别的知识点,因而,会呈现出丰富多样的特征;通常的情况是,几乎每道课后习题都有自己的特性,需要特定的概念或技巧,即任何不同的两道习题都会运用不同的解题方法。5细致性,大量题目都涉及到细致的信息,需要精细的分析技巧;有经验的理工科从业人员都较为了解,高等教育阶段的几乎每一道课后习题都很细致。容易理解,理工科题目的这五个基本特点常常是相互交织的。(理工科题目的这些基本特点与上文分析的理工科知识的基本特征间的内在联系自然是很有趣的)
关于这一要点,我们可以举出一些具体、生动的例证。譬如,对Taylor展开这一具体内容,众所周知,其中包涵着许多证明题;当我重复到第35遍(2015年1月)时,我即意识到该部分有很多的利用对称思想来证明不等式的问题,但是当时我感觉这些证明题杂乱无章、没有头绪,缺乏内在规律,而且遇到新的类似问题时我也不会证明;当重复到第55遍时,由于熟练和独立思考的结果,此时我已经将这部分内容梳理出了清晰的内在脉络,认识也全面、成熟了许多;我意识到这部分内容其实并不是由单一的证明技巧所组成的,而是很多种证明思想的组合;此时,这些证明思路我终于都全部掌握了。类似的例子也发生在PDE中的分离变量法这一部分知识,以往我解该部分的课后题时并不是很自信,而且运算思路很混乱;后来当我真正理解了这个方法的全部细节以后,我才搞懂了这类问题的解决方法,此时我再面对类似的问题已经有了成熟的自信心,因为我知道其中的主要思想我已经全部搞懂了(虽然具体计算仍然可能会出现一些错误,但整个思路、关键环节我确实已经掌握了)。
(五)如我们大多都能感受到的,在大学期间的学长经验交流会等思想交流的场合,有两个核心问题会被反复提出:1如何学好专业课程?2如何规划未来?应该参加哪些社会实践活动?应该如何平衡学习与生活经验积累之间的关系?由于本文主题的限制,我们主要回答第一个问题:
整体而言,我们可以肯定地说大学本科四年无论如何刻苦努力,大家的专业能力都不会有实质性的提高,因为我花了9年的时间才完成了从“普通”层次的向上提升,这是我们讨论本科学习问题的大背景。记得大二期间参加的一次学长经验交流会中,有一位同学问道:“抽象代数很艰涩,学不大懂,有什么好的应对办法?”学长答曰“做题”,但问题其实并没有那么简单,事实是无论苦思多少题目,无论我们当时如何认真勤奋,由于思维境界太低,我们大二期间都很难理解所做题目的精髓,即使做了很多题目其实绝大部分还是无法主动做出来,尽管付出很多,但收效甚微;因此,我们还是无法较好地掌握这些课程,这种认识虽然尴尬却是难以逃避的。大家都知道本科刚开始的时候学习专业课完全不入门,所以学习非常痛苦,但是,到大三以后情况就会有一定程度的改善,不再过分痛苦煎熬;所以,学习是一个越来越不痛苦的过程。对于学习意愿不够积极、动机不够强烈的同学而言,我们可以说,学习是一个熬的过程,开始的三年最艰难一些,即使不愿意学习,也要多投入精力在学习中,即便是硬着头皮、无精打采地学习也会无意识地促进思维能力的提升,熬到后续的阶段,思维能力提高之后学习就会愈发轻松自如。当然,对大部分同学来说,我们的专业能力在本科阶段虽然会有一定的提高,但不会有质的提升。
(六)各位可能会问,为何我重复本科课程55遍之后能够主动解题了呢?原因是较为简单的,因为此时我对相关内容的思想、概念、方法、技巧等真正掌握了。举例来说,有一段时间,我感觉自己做不出抽象代数中域论方面的问题,后来我意识到是因为关于域特征、域扩张、代数扩张等方面的很多思想、概念、方法、技巧自己都没有真正理解,并没有掌握到位,因而,自然无法做出相关的题目。留数定理的情况也是类似的,本科时期我无法主动地解决这部分的相关问题,而到研究生五年级的下半年时,我已经能解出大部分的相关题目;这时我才明白到以前所以解决不了这些问题是因为当时我没有真正学懂这部分知识;从这个意义上说,主动解题与真正理解是同一事情。
当我重复数学分析、抽象代数等几门课程到第49遍的时候,还是感觉几乎所有的题目都不会做,后来我才意识到,这是因为此时这些课程中的大部分思想、概念、方法、技巧等我都没有真正掌握。
同时,需要注意的是,这些思想、概念、方法、技巧等常常是整块存在的,常常是相互联系的;因而,只有当我们将一整块的概念、思想、技巧等都掌握了以后才能够解决相关的问题,只是孤立地掌握一些概念、方法的话我们往往还是解不出某些问题;通常情况下,我们只有在对整个章节乃至整门课程的内容有了深厚理解以后,才能自然而然地解决该章节的相关课后题。即知识的积累和问题的解决大多都是一种整体性现象。
(七)整体来说,重复本科课程55遍的过程是一个具体内容、细节(它们包括大量的思想、概念、方法、技巧等)逐渐被掌握的过程,也是一个理解深度逐渐加深的过程,这两个过程是完全交织在一起的;粗略地讲,重复这些课程的过程是一个不断积累思想、方法、概念、技巧的复杂过程,也是一个将混乱的知识领域梳理成兼具深度、广度、细致度和有机联系的思想体系的过程。
因为我们在学习一部分知识的时候会不断地思考该部分的题目、技巧、方法、思想、定理、框架、概念等方方面面的内容,对它们的思考会呈现出混合、交织的复杂状态(我们实际的学习过程自然并非按照知识点出现的顺序依次掌握相关的定理、问题、概念、技巧,而会是一种逐渐渗透的半有序过程),随着对这些定理、问题、技巧等具体信息的掌握,会导致我们对一部分内容整体理解的不断深化。同时,在刚开始接触一部分知识时,由于其中包涵着大量的信息,各种思想、技巧、细节、概念等混合交错在一起,因而,常常会给我们一种混乱错杂的感觉;随着不断地重复,我们能够逐渐理清头绪,对其中内在思路的理解会愈益清楚,这些知识也会逐渐变得条理有序。
(八)理工科课程的广度也是一个值得分析的重要问题。学得较好的从业者都比较了解,高等教育阶段的每门理工科课程都包涵了数以万计的思想,数以千计的概念以及无数的细节、技巧、方法等;而这些具体的概念、细节等都只能一点一滴地逐步掌握,因为它们彼此之间都是互不相同的。由于每个理工科专业都有着几十门课程,因而,即使对于好学生来说,面对现代数学、物理学等也会产生一种过于广大的感觉;当然,如果我们学得足够好,还是能够较好地驾驭这些广阔精细的内容的。
由于理工科每门课程的内容一方面都很广,另一方面又都很复杂和细致,这两个基本特征的叠加决定了我们需要投入大量的时间来学习相关知识,一天只学2个小时是掌握不了它们的。我们都较为了解,理工科工作需要每天投入8小时以上的时间持续地学习10年以上才能学好,因为它是慢工出细活的过程,无法速成,只有投入足够的时间才能使得我们在某一门理工科上学有所成。(从2007年进入本科阶段起到现在的2018年,这10年间我大概每天都会用8个小时左右的时间来学习数学)
(九)现在我想细致地分析一下我重复55遍本科课程时经历的复杂的心理和智力体验。面对这些本科课程,当2015年1月,我重复到第35遍时,我仍然处在一种朦胧模糊、云里雾里、似是而非、支离破碎的整体状态中,事后(重复完第55遍时)我才明白到产生这一状态的原因有两个基本方面:第一,我的理解深度不够,此时我对各种具体知识、思想的理解都较为肤浅,对整门课程的理解也较为肤浅;第二,我的具体积累也不够,其中主要的思想、方法、概念、技巧等我都掌握得似是而非,没有太学懂,并没有将这些具体内容真正掌握。[2]当我重复到第55遍,整体功底真正深厚以后,我再做重积分、函数项级数、多元微分学等部分的习题时终于有了一种基础深厚的感觉,我清楚地感觉到自己此时终于拥有了深厚的知识和思想功底;而之前的阶段,比如说重复到第30遍时,由于自己的知识结构是零碎而肤浅的,因而做这些问题时主要是靠碰运气和胡乱猜测、尝试;而当2016年8月,我重复到第55遍时,由于自己已经拥有了大量的相关知识、思想和经验积累,因而,我解决这些问题时,感觉思路、直觉、具体细节、技巧等方方面面都清晰了很多;总之,在做题时,基础深厚和肤浅所分别产生的解题心态是两种很不相同的思想状态。
以重积分这一具体内容为例,自本科一年级开始,我即对求解二重积分、三重积分、n重积分等问题不是很有自信,这种心理状态一直持续到2013年我开始重新学习本科课程的时候。而到2016年1月,我重复了50遍本科课程之时,对于重积分相关的理论和例题我已经反复钻研了许多遍,但我的认识仍然不够清楚;到2016年8月时,在深厚功底的基础上,我终于能够解出重积分的大部分相关问题,此时我也终于明白到之前我的认识并没有到位(因而我之前不太自信的心理状态是正确的,它是我的具体知识没有真正掌握的一种自然的反映):事实上,柱面坐标、球面坐标的使用要比我原本想象中的复杂一些(何时选择何种坐标变换并非很显然、直接,需要一定的精细分析),重积分的变量代换的技巧也比我理解的更为丰富、灵活;对球面、抛物面、锥面等常见的曲面我也有了更清晰的认识。
另一个令我印象深刻的例子是关于傅里叶级数的逐项积分定理、逐项微分定理以及最佳平方逼近性质。自2015年1月起,几乎每隔2个月我就会重复读一遍相关的理论或者观看一遍相关的视频(当然,之前我就已经重复看过很多次该部分内容),很多次我都以为自己终于彻底地掌握了这部分知识,但是到2016年9月时,我才明白到自己之前其实都没有真正理解这些定理,因为它们的证明和结论其实有着丰富的内涵;而到此时,我对这几个定理的理解才终于达到了较为合理、透澈的状态;背后的原因包括三个方面:第一,我对傅里叶级数这一整块知识(包括其中的这几个具体定理)的理解深厚了很多;第二,我对数学分析的整体理解也大为深厚了;第三,我的整体数学素养也有了很大的提升。总之,由于三方面基本原因的叠加,我对这个定理的理解才较为熟练和到位。
我学习多元微分学的内容时的经历亦是类似的。从2013年春天开始我就反复地看这部分的知识,中间也有很多次我都误以为自己已经完全学懂了,但直到2016年8月我才真正掌握了无条件极值、多元函数Taylor公式、条件极值、偏导数在几何中的应用、隐函数定理等基本内容,直到此时我才将众多的信息碎片融合成为一个有机的思想整体;的确,这些知识并不是很抽象,因而不是很难,但是,它们也很复杂,相关的理论、问题、定理、结论等都包涵了大量、细致的信息。
在重复到第20遍的时候,我当时能解决出一部分问题,但只是最为简单的一些问题,而且即便能解决一部分问题,也有误打误撞的嫌疑,即靠的不是自己整体功底的深厚理解,因而只能解决零碎的问题;这也证明,小聪明只能解决局部问题,要整体性解决所有的问题必须依靠深厚、细致的功底。到重复到第55遍时,我已经能够整体性地解决大部分问题,而且深刻地感受到这些课后题与课程中的具体概念、思想、方法、技巧的有机联系,即此时我所掌握的一些孤立的知识信息开始汇聚成整体的知识功底,而自己所解决的一些孤立的课后题也融入了某一章节的总体功底之中;总之,只有重复到相当遍数、熟练到相当程度之后,我们对具体知识和具体问题这两大方面的理解才能由孤立走向整体。
同时,直到这个阶段,我才能够真正辨别这些课程中哪些内容是困难的,同时哪些内容是简单的;之前我错误的认为很多知识很困难(如质心坐标),现在我发现它们只是最简单的概念;的确,一门课程中确实包含着较为困难的一些内容(如重积分变量替换公式的证明),但只有到了这个高度熟练的阶段,我才能够真正辨识出哪些是困难的知识。在开始学习一门课程的最初阶段,我感觉几乎所有的知识点都很困难,但当我重复了55遍以后,我才发觉大量的内容都是比较简单的(如微积分中的计算曲线的法平面、曲面的切平面,偏导数的计算,Euler积分的计算等,它们只是需要遵循标准化的解题方法);但是,有部分内容则很困难。关于此点,我们还可以举出很多其他的例子,如关于微积分里的“Legendre多项式是正交多项式列”这一知识点,在2015年之前我感觉较为复杂而困难,到2016年8月时,我已经感觉它其实比较简单而自然。但是关于抽象代数中的“若A是UFD,则A[x]也是UFD”这一具体的知识点,等到我将它完全掌握以后,我则发现它确实具有一定的深度。同时,在这个时候,即使是很困难的部分内容,由于整体功底的深化,我对它们的掌握也比之前轻松了不少;如含参变量积分部分的某些计算相当复杂,但此时我也清楚地掌握了它们的主要思想、技术细节和精神实质。总之,无论是简单的内容亦或困难的内容,我的理解都有了大幅度的增强。
(十)值得指出的重要一点是,当2016年1月在数学分析等课程上重复到第50遍的时候我仍然发现大部分题目都不会做,到此时我的心态已经达到了很沮丧的程度;当2016年5月重复到第52、53遍时尽管我终于能解出部分题目,但仍然感觉认识不够透彻;直到2016年8月重复到第55遍的时候,我才有了一种透彻掌握的感觉,也是到此时我才真正感受到了这些数学知识的美妙与趣味,才有了一种真正掌握了部分知识的心态上的成熟与自信。即对理工科知识来说,只有我们学到非常好的程度才能体会到它们的真正内涵,才能体会到它们的精妙之处,而这往往需要经过一定时间的积累。
总之,在重复本科课程的大部分时间内,我都处在一种比较挫败的心理状态中;直到最后的2、3个月,由于真实地感受到自己终于熟练掌握了大量确切的知识,并且意识到自己终于接近彻底掌握相关课程,同时自己的综合能力也有了很大提升,我才产生了一种欣喜的心态。进一步地,在最后的2、3个月里,我不仅掌握了所重复的课程的大部分思想、方法、题目等,而且感觉它们都变得分外的浅易和清楚,理解它们也变得比较轻松,这时我有了一种轻松愉快的心态,与前50遍时的压抑状态是一种很强烈的对比。总之,就学习这3、4门课程的整个过程来说,在最初的很长一段时间内,由于薄弱的基本功,我思考很多的知识要点、技巧、问题等感觉都很困难;但在最后的2、3个月,由于整体功底的深化、细化以及熟练程度的提高,我思考其中的大部分思想、概念、题目等开始变得比较轻松,这是一种非常真实和愉快的感觉,而且,我相信真正掌握了几门课程的从业者都会有这种熟练、简单和稳定的总体感受。即在这段漫长的旅程中,经过了阴云密布的前面大半段路程以后,我到最后的阶段才接触到了灿烂的阳光。简言之,对理工科知识而言,只有学得非常好才能体会到真正的乐趣,才能充分、灵活地对它们加以运用,学得半生不熟则不会有太大的意义。
所以产生上述现象的深层原因在于,理工科的每部分内容都包含了大量的思想、技巧、细节等复杂信息,每多重复一遍我们就能多积累一些思想、细节等具体信息,同时理解深度也会相应地加深一些;当我重复到第30遍时,相关的所有思想、技巧、细节等我只掌握了40%,因而,此时我自然会产生似懂非懂的感觉,而且大部分题目都无法解决;而当重复到第51遍时,所有的思想、技巧、细节等我已经掌握了80%,因而,此时我才大体学懂了一部分内容的主要实质,并且能解决部分问题;当重复到第55遍时,相关的思想、概念、技巧等我大概已经掌握了95%以上,而且总体理解也具备了足够的深度,所以自然会产生清澈明了的整体感觉。这也充分证明,理解深度是建立在大量的概念、技巧、细节等具体信息基础上的,在具体信息没有真正掌握的时候,一个人是不太有资格谈所谓的深刻理解的。
相应地,这也自然地解释了我们在解决问题时出现的普遍状况;如所周知,在最初解题时我们往往只能解决一些最简单的问题,这是因为该部分内容的大部分方法、技巧、细节等我们都还没有真正掌握;随着思想、概念、技巧、细节等的进一步积累,理解程度的进一步深化,我们才能够逐渐解决比较困难的问题和很困难的问题。
(十一)如果以能解决的课后题的比例来作为一个较为清晰的指标,当2014年9月,我重复到第30遍时,我只能主动解出20%左右的课后题,它们自然是最简单的20%的题目;当2016年1月,我重复到第50遍时,我能主动解出60%左右的课后习题;而当2016年9月,我重复到第55遍时我已经能主动解出80%以上的课后题,而且包含了大部分困难的题目。当我能主动解出80%的课后题目时,这表明我对这门课程的理解已经比较稳定和成熟;而对一些学生来说,如果一门课程只能主动解出20%左右的题目,自然说明掌握地较为肤浅、粗糙和很不稳定。总之,能主动解决的课后习题(比例以及难易程度等)是衡量掌握程度的一个很好的标尺。
(十二)在此,对真正掌握一些课程时产生的思想、心理状态进行一番阐述是有些意义的。当2016年9月,我重复到第55遍时,我终于产生了一种思想上的稳定感。以前数学分析、抽象代数、C++等课程的知识让我很焦虑,因为我不会处理相关的问题,而且无论是面对具体的知识亦或整体的理解我都不够自信,当时的整体感觉是对这些课程学的云里雾里、支离破碎、似懂非懂;而2016年8月时,面对这些课程,我终于有了一种熟练、轻松的整体感觉,我也终于能够驾驭它们中包含的大量知识,此时,我有了一种居高临下的轻松感,因为我知道这些课程中的大部分思想、概念、定理、方法、技巧自己都真正掌握了,而且我也做过许多难题,所以我知道自己真正学懂了这些课程,不再有一种云里雾里、似懂非懂的混乱感受。同时,当我们真正掌握了一门课程的绝大部分内容时,由于清晰、透彻地掌握了如此广阔的信息,会带给我们一种心理上的充实感、喜悦感以及成就感。
也是在这个时候,当我翻阅这些课程的教材时,面对印入我眼帘的每一个定理、每一道例题、每一道习题,我都有了熟练的感觉,对它们包含的众多细节也都了然于胸;面对这些课程,我也产生了较为成熟的自信;我意识到尽管自己可能还有些具体信息没有掌握,但是主要的部分我都已经熟练掌握了。也是在这个时候,我才感觉对相关课程的几乎每一个定理、概念、习题等的具体细节和思想实质这两个方面我都熟练掌握了;我也深切地体会到,我们只有对一部分知识的所有细节达到十分熟练的程度才能真正将它们学精,如果我们对一些题目、定理等掌握得还不够熟练,则说明这部分知识其实我们还是没有真正掌握到位;总之,对于一部分特定内容,只有对其中的每一个思想、概念、技巧、细节等都达到熟练掌握的程度才说明学得较好。
以往我对一些课程的很多定理、困难的习题等都有一种畏惧感和些许的神秘感,感觉它们一方面很困难,其次,又有些遥不可及,似乎有着高深莫测的内涵;但是,当我真正熟练掌握了它们以后,我吃惊地发现原来它们其实比较简单,其中的技巧、思想原来很清楚,此时我产生了一种不过如此的感觉;当然,这种感觉是整体性的,即我对一门课程的所有内容同时达到了类似的分外轻松的状态(这也再次证明一部分知识往往都是整体性的,想孤立地掌握几道题目是不太可能的,即使我们只想解决几道有限的问题,我们也必须将相关的整块内容都掌握下来)。也正是在这个时候,我才第一次体会到对高等教育阶段的某门理工科课程学透、学精是一种怎样的心理状态,笼罩在这门课程上的较为神秘的整体感觉才被简单感、熟练感以及相当程度的自信所取代了。此时,面对这些课程中的内容我产生了一种与面对高中时期的数列、函数等内容类似的感受,感觉它们一方面都很熟悉,同时也都很简单,这两种基本感受是互为因果的:因为对一部分内容的每一个概念、技巧、细节等都高度熟练了,自然会产生很简单的感觉;同时,也只有我们对一部分内容学到感觉很简单的程度,才说明这部分知识我们已经掌握得足够熟练了。
(十三)在大学阶段,我们面临的一个基本问题是学习时间的紧张;在大学时期,知识的容量是巨大的,仅仅微积分一门课程包涵的信息量就超过了高中数学的总和,并且难度也有了较大增加,何况大学阶段有十几门课程需要学习;因此,大家当时的学习状态是被动地跟着课程往前赶,疲于应付接踵而至的全新课程,根本没有时间去重复学习这些课程;因此,本科课程的整体学习状况自然很糟糕。
同时,与高中知识相比,大学学习的另一个很大区别在于高中时候我们当时的抽象思维能力不够强,还没有太多自己的独立思想,因而当时并非自己主动地解题;而大学解题靠的则是直觉、对知识内容的深刻理解,思想性也大为增强。相应地,就所需要解决的课后习题而言,由于基础教育阶段的知识点较少,因而,对一个具体的知识点往往会有好几道问题进行重复地考察,而高等教育阶段的习题则几乎每道题目都有自己独特的内涵。即对理工科各专业来说,从高中阶段进入到高等教育阶段,在不知不觉间,我们需要学习的知识内容、需要予以创造性解决的问题都发生了巨大的变化。
一个较为明显的基本事实是,大学知识的复杂性、抽象性、困难性等主要的基本特征与高中知识相比也有了很大的提高。(举例来说,高等代数中的二次型部分的知识即比高中数学的数列要复杂、抽象、细致得多)面对本科阶段的复杂知识,我们往往没有做好心理和思想上的准备;同时,在本科阶段,我们才真正开始了对生活的思考,生活中的各种问题也会要求我们不断思考。总之,在学习和生活两个方面,本科阶段与高中阶段相比都发生了质的变化,这是需要我们明确的基本事实。
总之,由于学习时间的紧张以及知识难度的增加,我们被迫跟随着课程进度前进而没有充分的时间消化、吸收课程中的信息,这是本科学习中很多学生面临的一个基本问题。(需要指出的是,事实上,由于思维能力处在较低的水平,因而,我们即便有充分的时间来学习,其实还是掌握不了这些具体知识;我直到本科毕业5年以后才掌握了数学分析等大一时期的课程)
(十四)对于已经本科毕业或者研究生毕业步入社会的学生来说,如电子工程、机械工程等专业的毕业生,我们可以肯定地说他们中的大部分基本功都存在着比较严重的问题;因而,无论工作后的生活如何混乱复杂、动荡不宁,他们可能都需要在适当的时候重复55遍以上的本科课程以便提高自己的思维能力、专业素养和解决实际问题的能力,只有这样才能更好地胜任自己的工作。由于本科阶段我们的课程安排都很紧张,都在疲于应对各种接踵而至的考试,因而,我们没有时间在某些基础课程上重复55遍以上;因此,这一关键性的学习环节可能必须要在本科毕业以后才能进行。同时,虽然我们的思维能力在本科阶段始终较低,我们面对具体的知识也会感觉难以消化,较为痛苦;但是,这一阶段的大量时间投入也是必不可缺的,因为这一个思维能力较低的阶段时的积累是后续思维能力提升的必要前提。因而,在本科阶段,我们也必须在学习上投入大量的精力,没有这一段时间的持续积累,后续的学习也难以顺利完成思维境界的升华。
(十五)在理工科学习的复杂过程中,我们需要重视从独立思考的角度审视所学到的知识,此点对理工科工作人员是至关重要的,如果我们从思想性、艺术性的角度来以自己的方式掌握这些具体信息,可以使我们的理解扩充一倍;在这个过程中,自己的独立思考是极端重要的,即我们需要以自身的思维方式去理解特定的知识,因为,每个人都有不同的思维风格,所以需要以自身的独立思考给掌握的知识打上自己的烙印,这样的知识在自己的头脑中才能具有长久的生命力,同时,只有具备了大量的独立思考我们才能对知识形成生动的理解,才有可能在未来做出创新;即一门课程包含了知识和思想两个层次,后者是必不可缺的一个基本方面。
在重新学习本科课程的过程中,只有建立起自身大量的独立见解,我们才能为以后的独立研发做好准备,独立见解是日后进行创造性工作的主要基石,如果只是掌握了具体的知识而没有自身的独立思考,那么,独立创造的质量便难以保证。只有用自己的方式掌握相应的知识,这些思想和信息在我们的头脑中才能保持生气勃勃,才能为日后的创造打下坚实的基础,这是一个很明显的基本事实。反过来讲,在理工科领域,如果缺少独立思考层面的认识,未来做出重大创新的可能性是很低的,因为信息量不够丰富、深刻。
其中,独立思考主要包括思辨层面和艺术层面两个方面的独立认识。思辨层面的思考能够使我们从思想的角度来理解特定的知识;而艺术层面的思考则能使我们掌握的具体知识充满创造性和新颖的活力,因为艺术需要创造力,而创造力也需要艺术。举例而言,ET Bell的<Men of Mathematics>是人们所熟知的,贝尔的文笔无疑足够优美,但思辨深度则有所欠缺,因而,他并没有做出最杰出的具体贡献(如同我们在其他地方[3]所指出的中心事实:在数学、物理界中,只有Laplace、Dirac、Heisenberg等大师们的表达才同时具备了真正的思想性与艺术性,大部分诺贝尔物理学奖得主的文笔亦没有达到这一层次,毕竟数学、物理学界的大师人数是很少的)。需要补充的是,电子工程、统计、计算机等工科专业的从业者在一定程度上也需要用思想性和艺术性的方式来储存自身的专业知识,虽然不像数学和物理专业那么严格,这些专业同时需要的则是另外的一些思想素质。
(十六)如我们所反复强调的,在重复本科课程的过程中,知识的掌握是一方面,在知识掌握的过程中,我们逐渐积累起来的大量独立见解是第二个方面,同时,在这个过程中,我们的思维能力的提升也是很重要的第三个方面。思维能力的大幅度提升也是重复本科课程带给我们的美好礼物;例如,如果我们重复数学分析等本科基础课程,重复几十遍之后,我们的整体思维能力会有很大的提高,这样我们面对计算机领域中的知识(如算法、数据结构等课程)时,吸收效率、理解深度会大为增强,会感觉这些特定的知识分外简单。即重复数学分析等课程会使得我们的思维能力发生本质提高,使得我们学习其他领域的知识时效率也会有很大的提高。而如果我们只是浮泛地、不停地阅读前沿论文,我们的理工科思维能力虽然也会提升,但不会太快;同时,这样浮泛地学习会使得我们没有彻底掌握任何一门课程的宝贵经验,没有对一门数学课程学深、学精的心智体验,这往往导致我们对计算机等领域之中某门具体课程的学习也很难学深、学精。
在这里,我们可以举一个具体的例证:2014年夏天以前,尽管我对C语言中的冒泡法重复阅读了10遍左右,但是理解起来仍然感觉较为困难而抽象;但是,到2016年春天时,经过了思维能力的不断提升,此时我感觉理解冒泡法已经很简单,只看了1遍左右就轻松掌握了。上述例证其实从属于一个更宽广的例子,即对C语言整门课程而言,本科二年级(2008年秋天)时我曾经学习过这门基本课程,当时学得较为痛苦、似是而非,感觉各种知识细节较为芜乱;但是,通过重复本科课程得到的思维能力的提升,到2016年5月,我只用2-3个小时的时间就掌握了本科时期耗费了上百个小时也没有掌握的大量知识,如字符数组、二维数组、指针、结构、链表、宏(带参宏定义、无参宏定义)、字符串处理函数、数组初始化等;此时我对上述大量具体知识的理解都清楚了很多。概言之,思维能力的提高既会加快我们对局部信息的吸收、理解速度也会增强我们对知识整体的掌握效率,这两个方面对我们的学习、工作都有着很大的价值。从这里我们其实也解释了周围天赋较高的人为何一天只学习3、4个小时即能将各种知识学得很好这一基本现象,背后的原因就是他们的思维能力较强。
类似地,关于实变函数中的“依测度收敛的函数列必有几乎处处收敛的子序列”和高等代数中的“n阶对阵矩阵必可通过合同变换对角化”这两个命题,本科期间我曾花费很大精力仔细钻研过,但当时都没有学懂;而到2016年6月时,我在很短的时间内只看了一遍就较好地掌握了它们。
总之,思维能力的提升、知识基础的完善化及独立思想的大量积累是系统地重复本科课程能够带给我们的三个主要方面的思想财富。正如大部分理工科从业人员都能体会到的,不同的理工科从业人员在思维能力上存在着巨大的差异,本文的基本结论之一就在于:这种思维能力上的差异是可以克服的(途径即是在适宜的情况下重复本科课程),只是需要付出很大的努力。
如前所述,本文的基本出发点是学好基础课程,打好基本功,可能会有人争辩说一些卓越的理工科工作者,如格罗腾迪克、斯梅尔等数学家基本功并不是太扎实,然而他们也做出了第一流的工作,在这里,我们不应该忽略一个本质问题:的确,这些卓越的数学家的基本功可能不是太扎实,但他们的思维能力非常强,处在“很好”的层次,因而,他们很快即能学到大量的新知识进而融会贯通;而大部分基本功不太扎实的从业人员的思维能力也不是太强,因而他们需要在重复本科课程的过程中提高自身的思维能力,否则,如果只是浮泛地阅读前沿论文,则他们的思维能力直到40岁也无法实现本质的飞跃,而且直到40岁他们可能都没有彻底掌握几门本科课程。
(十七)在前文中,“思维能力”是一个总体性的概念,它被用来形容我们吸收具体知识时的速度和效率,由于这个概括较为笼统,下面我们有必要较为具体地剖析一下这个基本概念的丰富内涵。
伴随着重复本科课程导致的思维能力的不断增强,我们的创造力会得到明显提升。对我个人来说,在以往薄弱的知识基础上,我具有的仅仅是微乎其微的创造力,无论是解决问题的创造力抑或提炼崭新理论的创造力等;而伴随着知识功底的深厚、直觉的增强、技巧的丰富化等多个方面的基本变化,我的创造力有了明显的提升,我获得了多种类型的创造力(创造性地解决问题、思考概念、提炼规律、推广已有的知识等),并且,此时我的创造力有了坚实的基础。
与此同时,我的抽象思维能力也有了很大提升。一个较佳的例子是,以往我认为Baire纲定理无论是定理的证明还是定理的应用等方面都很抽象,直到我反复阅读了这个理论30遍之后,我对它仍然怀有畏惧心理,仍然认为它过于抽象,此时我甚至对我的整体的抽象思维能力够不够强也产生了一定程度的怀疑;后来当我重复阅读50遍,熟练掌握了它的所有相关细节以后,我才发现它其实很朴实、亲切。总之,在本科阶段,好学生的抽象思维能力确实比普通学生强很多;而如果我们重新学习本科课程,由于我们能够思考、掌握越来越抽象的各种知识,我们的抽象思维能力会得到不断提升。
在此期间,我们的抽象概括能力也会逐渐增强。对很多类似的问题、类似的方法、类似的概念等我们都会逐渐发现隐藏在它们背后的一般规律,我们综合运用多种知识、思想、技巧的能力会有显著的提高,对一些课程的基本特征我们也会产生越来越多的整体概括。此时,我们会逐渐具备融会贯通的能力,会自然而然地发现越来越多的知识之间的关联环节,并且逐步建立起对一门课程的有机理解。总之,我们从多种类型的理论概括中会得到莫大的乐趣。
伴随着这个复杂的过程,我们捕捉关键信息的能力、具体思考特定内容的能力也会不断增强。当我花费3年7个月的时间,通过反复重复彻底掌握了本科阶段的4、5门课程以后,我明白到:在本科阶段,思维能力“很好”的学生吸收到了大量的具体信息,而普通学生吸收到的则只是一些表层的、比较简单的知识;在此,重新学习本科课程即能解决这一基本问题。首先,随着具体知识的大量积累,我们会逐渐意识到哪些技巧、思想、概念在某个证明或者某道题目中真正发挥了关键性作用。同时,我们对一门课程的理解也会由空泛、笼统走向具体化;每门课程其实主要都是由大量的具体细节构成的,但是,当我们的思维能力较低、对一门课程的理解较浅时,我们根本洞察不到很多重要的具体信息,只有当我们的思维能力增强、知识基础深厚以后,它们才会自然地涌入我们的视界。总之,伴随着重复本科课程,我们的数学思维能力一方面会更加抽象,一方面会更加具体,二者会互相增强、互相促进——具体化思考能力的增强会使得我们的抽象概括能够拥有更多、更详尽、更细致的材料,而抽象思维能力的增强则会使我们能够更容易地发现大量、多样的具体信息。
在这个思维能力不断提升的过程中,我们的计算能力也会有大幅度的提高。以往当我们的基本功很薄弱、能力很差的时候,我们即便对一些简单的计算也会觉得较为费力,而且即使算出来也会无法确定自己的结果是否正确(原因在于相关的一整块知识我们其实都掌握的似懂非懂);而随着基本功的深化与能力的增强,我们进行简单的计算会越发纯熟自如;同时,随着我们广泛接触并熟练掌握了大量复杂的证明与问题,我们也能够处理越来越繁杂的计算(此时的计算已经混合着长时间积累起来的很多经验、直觉、概念、技巧等)。
同时,我们的独立思考能力也会不断增强、深化。当我们的知识基础浮泛、薄弱之时,我们也会产生一些独立思考,但此时我们的独立思考是过于空洞而缺乏有价值的思想实质的;当基本功底深化、能力提升以后,我们的独立思考才能获得坚实的基础,此时(如果有强烈的独立思考的意愿的话)我们会产生越来越多自己的观点;并且由于我们具备了丰富而深刻的知识阅历,这些独立观点会愈发合理、新颖而成熟。
随着重复遍数的不断增加,我们的思想深度此时也会有巨大的提升。容易明白,在本科阶段,好学生对一门课程的理解要比思维能力“普通”的学生深刻得多;当我们的知识功底薄弱空洞、思维能力差的时候,我们对一门课程的理解几乎注定是是肤浅而空泛的,而当我们的知识功底变得宽广深厚之后,我们才能理解教材中一些深刻的思想,同时,我们也才能逐渐理解前人和好学生的一些深度经验。此时,当我们再去阅读相关的书籍时,我们会有深刻的理解,而不像以往那样只能产生浅层的认识;由于已经能够辨别出一门课程中表层与深层的思想,我们会形成深刻的思维方式,能够独立解决大量困难的问题;同时,也为未来富有意义的创新打下了良好的知识与思想基础。
在这个过程中,我们分析问题、综合解决问题的能力也会有很大的提高。由于功底的增强与能力的提升,我们能够更为深入地分析大量的定理与知识,面对崭新的问题,我们也能够通过分析、综合等多种手段来创造性地发现一些解决问题的方法与路径。此时,我们分析问题的深度、细致性等方面会明显加强,也能够愈发灵巧地综合运用许多相隔较远的部分的重要思想;总之,我们具体分析特定问题与知识的能力与综合运用多种手段、技能的能力都会得到显著地提升。
总之,“思维能力”这个概念包涵两层价值:首先,作为一个整体概念它是有意义的;对此,一个很适当的例子是,本科期间我们数学系一百多位同学在同一间教室里听讲复变函数、实变函数、泛函分析、代数拓扑等课程,但是当时我们大部分思维能力“普通”的学生与思维能力“很好”的少部分学生之间的理解差距极大(当然,这是我在本科毕业5年,熟练掌握了4、5门本科课程以后才意识到的),后者的理解深刻得多,掌握的具体信息量也丰富得多,同时他们的抽象概括能力使得他们能够建立起已有知识的丰富联系,而且他们对这些知识的掌握也熟练得多,解决课后习题的创造力也相应地高得多(当时那些好学生花一小时学到的知识,我们恐怕要花50个小时才能达到与之相当的理解程度;当然,这个对比也不是很恰当,因为,即便我们投入50倍的时间来学习这些课程,其实我们也要在进入本科8、9年时间之后才能真正掌握它们)。总之,这个概念确实可以用来较好地形容我们吸收知识的速度和效率。其次,“思维能力”又至少是上述的8、9种具体能力的总称,这些具体能力其实代表了理工科需要的大部分的基本能力,它们中的每一种都是很富有意义的(同时,意味深长的是,它们也是紧密联系、互相增强的);好学生其实从进入大学一年级的课堂开始就同时具备了这8、9种重要的能力(其实从他们的初中、高中阶段就逐渐具备这些能力了),因而,他们的学习效率才比思维能力“普通”的学生高出几十倍。只有将这两层思想结合起来,我们才能够对“思维能力”这个概念有较为合理的理解。
最后,必须说明的是,我们重新学习本科课程的目的绝不仅仅是为了提升自己的思维能力,这个过程我们所掌握的大量具体知识也是极端重要的;那种认为教育的目的只是培养能力的看法无疑是相当错误的,因为:第一,知识与能力是统一的,没有知识的具体积累就很难有这些思维能力的整体提升;第二,具体知识对每个专业的学生来说都是很重要的,比如,微积分即很重要,商业界的众多领域都需要运用它,有限元、有限差分也很重要,很多工科专业都需要使用它们;如果我们只有空洞的所谓的能力,而没有这些具体的知识积累,我们遇到实际工作中的具体问题时该如何创造性地加以解决呢?总之,知识的积累是教育的基本组成部分,它的重要性不在提升学生的综合能力、思维能力之下。[4]
(十八)我们常常遇到的一个基本现象是,很多从业者认为自己计算某些问题(如第二类曲面积分)时出错只是偶然的粗心所致,这一看法在很多情况下是错误的;大部分情形下,我们计算错误并不是粗心的结果,而是理解深度不足所造成,即我们对某一整块知识的理解都不到位。很多有经验的教师都知道某些学生存在着眼高手低的问题,对众多问题只有思路,而不能实际得到最终精确的结果,他们往往认为这只是态度不够严谨、细心不足的问题;其实实际情况是,由于对某一块知识的整体理解存在着严重问题,我们不仅无法得到正确的结果,而且整个思路都很混乱和模糊。
举例来说,在2014年3月份时,我就以为自己已经完全掌握了函数项级数的分析性质等内容;可是到2016年7月份,有了两年多的积累以后,我才意识到当时自己其实并没有真正掌握这些内容;我以前的理解存在两个基本缺陷:一是片面,即没有将这部分知识的理解有机地融入数学分析的整体框架;二是肤浅,即当时对这些知识的理解缺少深度。在这里,我还可以举出自己在学习过程中遇到的另外两件经历:第一件事是2012年8月左右,我遇到一道抽象代数中关于极大理想和环的问题,当时自己无法解答,为此我苦恼了一段时间;但是,四年之后,我才意识到即使当时解出了那道问题,我对于环乃至于对抽象代数的整体理解仍然存在着很大问题;因而,我的根本问题在于对这部分知识的整体理解存在着很大问题,即关于这部分知识的整体功底存在着严重的缺陷,而不仅是一道孤立的特定问题。第二件事发生在2015年秋天,我当时解决狭义相对论中涉及能量、动能、速度和动量关系的一道问题时,感觉有些勉强,问题对我来说有些繁琐;后来,当我将狭义相对论又重复了几遍以后(2016年8月),才明白到当时自己对狭义相对论的整体掌握即不太熟练,对许多具体知识的理解存在着较大问题;当我对狭义相对论的整体把握进一步加强之后,我感觉此时自己解决那道以往感觉不太自信的问题已经分外轻松。(这一体验也充分证明我们要掌握一部分知识必须要达到大体解决全部课后问题时才能真正把握到位)总之,这些事例可以帮助我们澄清认识上的一个误区:我们解不出某些问题只是偶然的,算错某道题也是偶然的,其实这都是整体性现象;在对一部分知识似乎读懂与真正透彻的理解之间其实隔着重复几十遍的艰辛过程。
在重复本科课程之前的时候(2012年),我有时感觉自己的数学分析学的并不差,好像主要内容都学懂了,后来等到我花费了3年7个月的时间重复了这门课程之后,我才意识到,当时我掌握的其实非常差,几乎所有的精华其实都没有学懂。这也充分证明,理工科课程的学习确实很容易出现似是而非的现象。
[1]在中国大学的数学系中,数学分析这一课程大约相当于国外大学的微积分和数学分析原理两门课程的综合;即包括微积分和它的深层原理两个部分。微积分包含的内容是非常广的,同时,它的理论基础也较为复杂。
[2]本文所描述的经验应当是一种普遍性的现象,如调和分析大师Carleson曾经详细描述了他学习、研究数学的个人经验,他写道:“At 19 I got my BS. It all seemed very easy and I still had no idea what mathematics was all about.” “I got my degree in 1950 and a permanent position as a professor in 1954. Looking back, I can now say that I still did not know what serious mathematics or problem solving really meant. It would take me another four years, till 1958, at the age of 30, when I for the first time wrote a paper that I still consider of some interest.” 见One Hundred Reasons to be a Scientist里的文章< It would be Wonderful to Prove Something>, p. 61, ICTP, 2004。容易看出,Carleson所描述的现象与本文所分析的基本问题是非常契合的。这自然是一个很富有启迪的实例。
[3] 参看拙文《论理工科从业者的思想基础》第(四)部分。
[4] 对这一重要认识,著名思想家怀特海曾写道:“但教会学生解二次方程的意义是什么呢?对这个问题有一种传统的回答,即人的大脑是一种工具,你首先要使它锋利,然后再使用它;掌握解二次方程的本领便是一种磨砺大脑的过程。”“(这一观点是)迄今存在于教育理论中的最致命、最错误因而也是最危险的一种观点。”“你不能延迟大脑的生命,像工具一样先把它磨好然后再使用它。不管学生对你的主题有什么兴趣,必须此刻就唤起它;不管你要加强学生什么样的能力,必须此刻就进行;不管你的教学给予精神生活什么潜在价值,你必须现在就展现它。这是教育的金科玉律,也是一条很难遵守的规律。”见《教育的目的》中的同名论文,页10、11,三联书店,2002年。