作者 | 冯克勤(清华大学数学科学系)
来源 |《大学数学》2004年第20卷第5期
高校数学课应当增加几何、代数(甚至离散数学)的比重,这是多年来议论的话题。几何数学问题最严重,不少学校现在已缺乏讲拓扑学的教员,几何课只剩下讲经典曲线曲面的微分几何。不少人对加强几何教学发表了看法和建议(比如最近北大陈维桓教授在《高等数学研究》中的文章),加强几何与代数教学可以说出一大堆理由。我想结合自己对本科生的教学情况,谈一些个人看法,供参考。
目前多数学校的代数课为线性代数(或叫高等代数,包括多项式理论)和近世代数(或叫抽象代数,讲述群、环、域)。线性代数作为两个学期的基础课,普遍受到重视,本文不谈。对于近世代数,多数学校是周三学时一个学期的选修课。近世代数作为必修课还是选修课并不十分重要,主要问题是:不少学校这门课的教学效果不十分好,学生觉得太抽象,没有掌握这门课的本质思想和方法。而这门课的思想却是很丰富的,其中的原因有教师的教法和水平问题,也有课程安排问题。当然还有更深层次的问题:在世界先进的数学研究和其他科学和技术领域,现代的代数学已是重要的工具,但在国内这方面有不小差距。
抽象代数研究各种代数结构的性质和分类,形式化推理多,习题比较难。数学的抽象是各种具体对象中提炼出共性,从而使应用更加广泛。而学生的最大问题是心中没有多少例子,不知道形式化的推理在干什么,不了解为什么要研究群、环、域这些代数结构。历史上,伽罗华研究高次代数方程根式可解性提出群的思想,高斯研究二次型整数解讨论高斯整数环的唯一因子分解,库默尔研究费马猜想导致环中的理想概念,但是这些内容(以及用域的扩张解决三等分角和正多边形尺规作图等等)大都要到课程的最后才讲到,甚至由于学时太少不能讲。学生学了一堆空泛的定义和定理,后面没有一个课程用到群环域,结果是学生在考完试之后,关于群环域的知识几乎全都忘掉了。
我们的第一个想法是:大学第一学期讲一个《初等数论》的短课。中国科学技术大学从1977年起就在本科生一年级第一学期开设周三学时的《初等数论》必修课,一直坚持至今。2000年笔者来清华之后,也在清华数学科学系新生第一学期开设周二学时的《初等数论》必修课。
新生入校学初等数论是基于三点考虑。
-
(1)大学数学一上来就是微积分和线性代数课,不仅份量重,而且与中学数学味道也很不一样。不少数学很好的中学生被这当头两棒打昏,由喜欢数学变成害怕数学。初等数论的不少内容是中小学就接触过的(质数,因子分解,辗转相除求最大公约数,带余除法……),这个课对新生有亲近感。所以是联系中学和大学数学的一个纽带,保持他们对数学的兴趣。
-
(2)初等数论和线性代数是下一步学习抽象代数的必要课程。初等数论中的同余类环是有限交换群和交换环的最基本例子,数论中的原根与指数就是循环群的生成元和群中元素的阶。同余类本身可引伸出群对子群的陪集分解,以及商群和商环的思想。即使不学这些,在讲抽象代数时也要补充这些内容。
-
(3)由于数字计算机和数字通信的发展,离散性数学(包括组合数学,初等数论,有限域等)在数学研究和应用中的地位增强。现在许多数学系有信息数学专业,初等数论是必不可少的。
由于上述理由,我觉得现在不少学校到大三之后再开设数论选修课,意思就不大了。因为初等数论都可以给中学生讲,大三学生再听初等数论,会感到拿他们当小孩子耍。初等数论是研究整数性质和方程整数解的学问。公元前三世纪欧几里德证明了算术基本定理(正整数唯一分解为质数乘积)。欧拉和高斯研究费马提出的一系列问题,在二百年前建立了系统理论(整除性和同余性),其中有许多好的数学思想和有趣的故事。初等数论有许多问题易懂而做起来很困难。不要让学生做太难的习题,注重讲系统的方法,并展示这些方法可以解决什么问题,同时说明为解决另一些数学问题还需要进一步发展数学,即近世代数。师生一起共同欣赏和享受(enjoy)当年欧拉和高斯是如何做数学的,应当是双方都愉快的事情。最后,可讲述初等数论在信息安全方面的应用(大数分解的RSA公钥体制和离散对数体制,用于保密、数字签名与认证、密钥分配和共享等)。这部分内容常引起学生极大的兴趣,使一些信息专业的学生来听课。初等数论也是鼓励学生个性发展的很合适的课。不少学生在数论方面有很好的素质,他们常给出习题的一些新解法,学生之间不同想法还可以讨论,这使得同学和我都有成就感。
第二,谈谈近世代数的讲法。关键有两点:
-
一是要让学生心中有足够多的例子,学生能通过这些例子直观地体会抽象定理的意义和价值,然后能把握和应用它。
-
二是要教给这门课本质性的东西。比如群和环中的同态方法,群在集合上的作用等。这几年在硕士入学口试中,问到“最小非交换群是什么?最小非循环的单群是什么?”都不能脱口说出。交换环上一般的中国剩余定理可以背出来,但是问到对于同余类环这个定理是什么意思,居然不知道,也就是不清楚这个定理为什么是“中国的”。这样的学生是不及格的。又如,我们依次问“正立方体的自同构群有多少元素?如何把这些自同构具体表示出来,这个群的结构如何?”有的同学常常杂乱无章地拼凑,不会用代数的方法。再如“有限域到的映射
抽象代数一定要讲例子,讲历史起源和Motivation,随时讲一些应用,例如高斯为解决
清华大学数学科学系为大二和大三每学期都开设16学时的“专题课”(1学分)。每个专题课15人左右,由教授讲授一些具体题目。两年下来,学生可以接触四位教授,课上师生相互讨论,学生要自己做问题和查资料。教授很愿意上这类课,因为学时少时间安排比较灵活。具体来说:在学生学了一学期线性代数之后,可讲专题课“线性纠错码”,让学生体会用有限域上的矩阵和线性变换可设计有纠错性能良好的纠错码。在学了近世代数之后,又可讲循环码和量子码。现在清华大学已把这种课推广到全校范围,这个学期讲的《初等数论与信息安全》(16学时),选课的一年级学生来自八个不同的系。有一位同学制作了“电子商务信息安全协议”电子课件,使其他同学和笔者都受益匪浅。
最后谈一个更深层的问题,就是我们为非数学专业学生所教的数学,如何使他们在各技术领域中发挥作用。在这方面,数学老师当然有责任改进教学方法,在内容上更贴近于应用方面,尤其是要使学生感受到数学的重要。学生在今后工作时,遇到数学不要因为害怕而绕过去,而是有兴趣和胆量弄明白这些技术文献中所用到的数学。我认为这就达到了最基本的目的,就是成功的。至于到底给他们讲了多少知识,甚至于有多少又都忘掉了,都不是最重要的。重要的是将来再遇到它时,还愿意和能够把它再捡起来。
现在各专业都想开数学课是好事情。但是要造就新一代年轻人,使他们在不同领域中发挥数学的威力,主导方面不在数学教师本身。二十年前中国建立计算机系的时候,由数学、通信、计算机的老师分别开设这三方面的课,计算机系就建起来。到现在,这种模式已很陈旧了。在先进国家中,初等数论和近世代数已成为通信和计算机工程师的基本语言。国外大学关于通信和计算机科学的教科书中,有限域是基本数学语言。如果专业课程的数学含金量很低,研究生论文本身也没有数学,在将来工作中也不涉及数学,那么,数学老师讲再多的数学有什么用?物理和力学等专业的学生不会提出数学有什么用的问题,因为物理和力学课中有大量数学。因此,我们要培养交叉复合型的年轻人才,根本上是依靠于技术领域的研究和教学中具有很高的科学含金量,这也许是提高我国技术整体水平的关键。即使数学研究本身,几何与代数教育的不充分,也在影响着中国数学研究的整体水平。
,