邓爱平,马红彩
(东华大学 理学院,上海 201620)
数学专业“离散数学”课程的教学探讨
邓爱平,马红彩
(东华大学 理学院,上海 201620)
摘要:“离散数学”作为计算机专业的一门重要基础课程,在一些高校的数学系也单列开设。数学专业开设“离散数学”课程,其教学内容的选择、教学方法的应用显然不同于计算机专业。因此,有针对性、有成效地提高数学专业“离散数学”课程的教学水平和质量,对学生后续课程的选择和学习,以及对今后的科研或就业都具有现实意义。
关键词:离散数学;数学专业;计算机专业;教学探讨
“离散数学”是计算机专业的重要基础理论课程之一,它不仅为许多计算机专业课程奠定必要的数学理论基础,同时对培养学生的抽象思维能力与逻辑推理能力起着重要的作用。此外,随着计算机软件及硬件的迅猛发展,人们对数据的处理和计算能力快速提高,能够处理的信息量也呈爆炸式增长,这不仅使离散数学涉及的学科范围不断扩大,也扩大了离散数学可处理的实际问题的多样性。这为离散数学的发展和应用提供了良好的契机,其重要性也与日俱增。
基于离散数学在现代科学发展中的重要性,在一些高校的数学系也单列开设了“离散数学”课程,为数学专业学生在学习计算机课程方面提供基础的理论连接,同时也能提高数学专业学生面对实际问题时的独立分析能力、数学建模能力和利用计算机解决问题的能力。对数学专业学生讲授离散数学,其教学内容的选择、教学方法的应用显然不同于对计算机专业。因此,有针对性、有成效地提高数学专业“离散数学”课程的教学水平和质量,对学生后续课程的选择和学习,以及对今后科研方向的确定或就业的选择都具有现实意义。笔者结合多年来从事数学专业“离散数学”课程教学的实践,在教学目的、教学内容、教学方法等方面进行了初步的探讨。
一、 明确教学任务和教学目的
对数学专业的学生而言,基础课程基本上都是涉及对连续系统的研究,因此,学生在处理连续性问题方面已经具备了一定的知识和能力,他们在逻辑推理、空间想象力、理论分析与联系上具有一定的优势。离散数学则架构起连接数学理论知识与计算机应用的一座桥梁,通过对离散数学的学习,可以充分发挥并进一步培养学生抽象思维和逻辑推理的能力,更可以提高学生分析问题、建立数学模型和解决实际问题的能力。对实际问题的提炼、分析和解决的锻炼,能帮助学生养成严谨、缜密、求实、规范的科学态度,为将来从事科研或者应用等工作夯实基础。从连续系统的学习转向离散数学的学习,需要让学生明确“离散数学”课程的研究对象,知道离散数学与计算机学科和数学学科的联系,掌握离散数学的基本内容,清楚离散数学的学习方法,了解离散数学的应用。
1. 离散数学的研究对象
“离散数学”课程教授学生如何处理离散结构,这些离散结构是用来表示离散对象及其之间关系的抽象数学结构,包括集合、置换、关系、图、树和有限状态自动机。实际上,数字电子计算机就是一个离散结构,它所处理的对象是离散的或离散化了的数据和关系,所以计算机科学的核心就是对离散对象的处理。因此计算机科学本身,以及与其密切相关的现代科学各研究领域,都面临着如何将已建立了连续数量关系的数学模型离散化,以及如何对离散结构建立相应的数学模型,从而可将离散数据交由计算机进行处理。而研究有离散结构的系统的数量关系的一个数学分支恰恰就是离散数学。所以有学者说,离散数学是研究离散量的结构及其相互关系的数学学科,具有能充分描述计算机只能处理离散的或离散化了的数量关系的特点。
在离散数学的发展过程中有一个著名的例子——四色定理,在得到证明前一直称为四色猜想,是世界近代三大数学难题之一。该定理说的是:每幅地图都可以只用四种颜色着色,并且使得具有共同边界的国家可以着不同的颜色。这是1852年由英国绘图员弗南西斯·格思里提出的。而该问题的最后解决是在100多年后的1976年,由肯尼斯·阿佩尔(Kenneth Appel)和沃尔夫冈·哈肯(Wolfgang Haken)通过计算机辅助计算来完成。他们的证明简略表述为:第一步证明了每个平面三角剖分必须至少含有1 482个“不可避免构型”中的一个;第二步用计算机证明每个上述构型是“可约化的”,即通过粘合更小的四着色的平面三角剖分,可得到任一含有上述之一构型的平面三角剖分的一个四着色。综合这两步,利用数学归纳法可以证明,所有的平面三角剖分,乃至所有的平面图都可以四着色。这一问题的解决是离散数学和计算机科学处理离散且大量数据的数学问题的范例。
2. “离散数学”课程教学的基本内容
随着计算机技术的迅猛发展,计算机的应用也日益广泛,作为其基础学科的离散数学,其内容也由于计算机科学的发展而不断得到扩充和更新。“离散数学”课程教学通常涉及的领域包括:数理逻辑、集合论(包括函数和关系)、代数系统、图论、数论基础、组合分析等。
离散数学作为计算机科学与技术的核心,是计算机专业许多后续课程的重要理论基础。作为其主要内容之一的数理逻辑是研究推理的逻辑学科,在计算机硬件设计中的应用也极为突出。如计算机科学的一个重要理论数字逻辑,很大程度上起源于数理逻辑中的逻辑命题和布尔运算。而集合论作为整个数学大厦的基础,有着举足轻重的作用,在很多学科里都会先介绍集合论的基础。代数系统的内容主要是抽象代数,在数学系一般都开有专门的抽象代数或近世代数课程,这部分内容对培养学生的抽象思维和归纳分析能力、提高学生的数学直觉和数学观察力具有重要作用。而作为数字逻辑理论基础的布尔运算,则是布尔代数里的一个基本运算。通过应用代数系统的理论方法构造出的数学模型对程序理论、数据结构、形式语言与自动机、容错诊断、编码理论机、逻辑电路设计等研究具有重要的指导意义。图论不仅在计算机科学中,如形式语言、数据结构、分布式系统、操作系统等方面扮演着重要角色,而且在数学的其他分支和其他应用学科中,如控制论、博弈论,乃至社会科学等领域起着越来越重要的作用。而数论作为数学中最古老的分支,也在计算机科学中有着广泛而深入的应用,如涉及到计算机算术、可计算性理论、计算复杂性理论以及计算机设计等领域中,都离不开数论知识的应用。如正则引擎与编译器的词法分析中的DFA(确定性有穷自动机)或NFA(不确定性有穷自动机)都用到图论,而其发现过程正是用数论推导出来的。组合分析的主要研究内容是计数和枚举方法与理论,而对算法所需计算量及存储单元数的估算,都是关于计数的问题,算法研究与计算机软件密切相关,因此,组合分析对计算机软件的重要意义不言而喻。
3. 离散数学的学习方法
学好离散数学,除了要了解上述的离散数学的研究对象、基本内容,还需要了解其特点和难点,总结适合学生自己的学习方法。
“离散数学”课程的特点是:涉及学科多、概念多,但内容较松散;对涉及的每门学科没有作深入探讨,所以理论性虽强,但都是基础理论,较易理解。
由于“离散数学”课程涉及多学科的基础知识,所以即使是简单讲授各学科的基础理论,也需要介绍大量的基本概念。但是相关的理论都是建立在基本概念基础上的,而概念具有一定的抽象性,对概念的理解程度直接影响对相关理论的理解。在很多情况下,面对问题无从下手、无法解决,往往是因为对概念理解得不够深刻。所以,花费充分的时间去理解概念,才能事半功倍地正确利用概念理解理论。一个最基本的办法,就是每学到一个新概念,利用例子来加深理解。比如学到格这个概念,格是一个偏序集,且其中任两个元素都有最大下界和最小上界。可以分情况自己举例,或将书上看到的例子按不同情况分类:是格的有限偏序集,是格的无限偏序集;是偏序集但有两个元素没有最大下界(或最小上界),是偏序集但有两个元素有两个最大下界(或最小上界)。结合偏序集的哈斯图,很容易就掌握了格这一概念。
“离散数学”课程内容松散是因为它涉及的数理逻辑、代数结构、组合分析、图论的基础知识并无明显关联,具有相对的独立性。所以,当完成一部分知识的学习后,进行下一部分知识的学习时,如果不进行及时的复习,很容易把前一部分的内容忘掉,等到学期末再回头复习,花的时间和精力都要翻倍。这就要求学生养成良好的复习习惯,如学到第二部分内容时,每周一、三、五花5~10分钟时间温习第一部分的内容,唤起记忆中的知识;学到第三部分内容时,添加每周二、四、六来温习第二部分的内容;依此类推,这样,知识总在被唤起,也就记得牢固。所以,可以和同学结成小组,互相监督,互相提问复习。另外,离散数学学习的难度并不大,学生在学习中也容易自我放松。因此,同学间互相提醒、互相学习非常有必要。
“离散数学”课程的理论具有很强的逻辑性和抽象性,因此,在学习中要注意推理、分析的严谨性,落实到每一个证明的叙述上,就是要严格按照推理步骤,每一步给出详尽的过程,前因后果要一目了然。对每步推导的严肃和严谨性的要求不可降低,因为这将直接影响到后面步骤的进行。笔者在课堂教学时就有过这种情况,学生在黑板上演算时进行到一半,写不下去了,因为在其中的一步把关键条件“对任意元素”漏写了。事实上,在演算到那一步时学生是知道这个条件的,但是却省略了,到若干步后需要用到这个条件时找不到了,造成演算失败。所以,推理的严谨性要求也是帮助学生养成缜密思维、规范求实的科学态度,对今后的学习和工作都大有裨益。
二、 教学内容的选择
离散数学涉及的学科领域较多,但是对于总共56学时,甚至只有48学时的课程来说,显然不可能完成所有内容的讲授;再加上数学专业通常开设“抽象代数”课程,以及数学专业学生对集合论的熟悉和掌握程度,需要适当地选择教学内容,使学习效率最大化。另一方面,数学专业的学生一部分今后可能倾向于科学理论研究,另一部分则可能倾向于实际技术应用,这两部分学生对离散数学的要求显然不同,所以在教学中要做到两者兼顾,适当地选择教学内容。
以我院(东华大学理学院)为例,因为“离散数学”课程只有48学时,还开设有“抽象代数”课程,所以在“离散数学”教学中,重点是数理逻辑、集合论中的二元关系、代数结构中的格与布尔代数、组合数学中的递推方程与生成函数,以及图论中的最短路问题等。
数理逻辑一般包括命题逻辑和一阶逻辑两部分。这两部分内容的学习无论对计算机专业还是数学专业都是非常有必要的。数学专业没有开设专门的逻辑课程,所以数理逻辑的教学涵盖了命题逻辑的基本概念、等值演算和推理理论,以及一阶逻辑的基本概念、等值演算和推理理论。而集合运算和函数的基础知识有些在中学阶段已经介绍过,在简单复习、强调运用文氏图进行有穷集合的计数后,即可开始对二元关系的讲授,重点放在关系的运算、性质、闭包的概念和计算,以及等价关系和偏序关系的理解上;函数部分需强调双射、强化对函数基数的认识。代数结构部分,因为布尔运算是计算机的基本运算,所以这部分内容必不可少;而为引进布尔代数,也必须对格这一类代数进行较完整的介绍。组合数学中的排列组合也是中学阶段学习过的内容,所以重点放在递推公式的实例和解法,以及生成函数及其应用。图论部分有许多著名的寓意深刻的有趣问题,如哥尼斯堡七桥问题、周游世界问题、四色猜想等,且运筹学、计算机科学以及编码理论中很多问题都可以转化为图论问题,值得好好钻研,但限于时间,不可能在课程教学中介绍所有的内容,只能讲授图的基本概念、连通性、欧拉图和哈密尔顿图及其应用、最短路问题、生成树、平面图的欧拉公式等。
三、 教学方法的应用
“离散数学”课程具有概念多、内容散、较抽象、理论性强的特点,要求有较强的抽象能力和严谨的推理能力。如果授课时一味强调知识的灌输、理论的讲解,看似在有限时间内教授了较多内容,但会导致一定程度上学习的枯燥无味,而且会使学生对该课程的应用性缺乏明确的认识,以为离散数学只是纯理论的数学学科。如果教师正确而积极地引导学生的学习方向,激发学生的学习兴趣,那么学生就愿意自发地去学习、去看书、去寻求解决问题的方法。因此,通过改进教学方法和教学手段,以激发学生的学习积极性,让学生认识到离散数学在理论和实际应用上的魅力,是任课教师的教学追求。
1. 理论联系实际
“离散数学”课程的实际应用背景很强,在教学中选择有趣且与教学内容联系密切的实例,能起到良好的教学效果。如在数理逻辑部分,可以通过土耳其帽子的推理故事和罗素的经典理发师悖论引入。在讲授命题概念时,就可以拿理发师的那句话问学生:我给且只给镇上所有不给自己理发的人理发,是不是命题?既活跃了课堂气氛,激发了学生的学习热情,也传授了知识,让学生对命题这一概念认识深刻。在学到命题逻辑的推理理论时,可以再次提到土耳其帽子的故事,让学生将之符号化,给出推理过程。这样的理论联系实际,并且注重前后呼应,能让学生注意到基本概念和基本理论的密切联系,拓宽了学生的视野,增强了学生的实际应用能力。
2. 温故而知新
著名教育学家苏霍姆林斯基曾说过:“在我看来,教给学生能借助已有知识去获取知识,这是最高的教学技巧之所在。 ” 因此,在给数学专业学生讲授离散数学时,应尽可能地联系他们最近学过的数学分析或者高等代数中的相关概念。如在学习一阶逻辑命题符号化时,可以举数学分析中的极限定义条件:任给ε>0,存在δ>0,如果|x-a|<δ,那么|f(x)-b|<ε让学生将其符号化。因为学生已经对极限概念非常熟悉,所以借助已有的知识来学习新知识,是学生乐意接受的挑战,虽然最后的表达式略复杂,但通常学生都能完成得较好。又如在讲到等价关系时,可以联系到高等代数中学过的矩阵的若干等价关系,采用提问的方式唤起学生对已学知识的记忆,引导学生答出矩阵的相抵关系、相似关系、合同关系等,并由此进一步巩固等价关系的定义。在学习等价类、商集的概念时,可以再次以矩阵为例,让学生思考这三类等价关系之间的联系和区别,以及能否进一步给出它们各自的商集。这既检验并巩固了学生对矩阵的理解,也加深了他们对新知识的认知,消除了对这一新学科的陌生感,提高了对离散数学学习的热情。
3. 背景知识的融入
“离散数学”课程中无论是数理逻辑、集合论、代数系统的内容,还是图论和组合分析的知识,都是非常抽象的,在上面两种方法都不适用的时候,可以考虑增加背景知识的介绍,融入数学史的知识。数学文化的融入能淡化离散数学理论的枯燥性,让学生在学到理论知识的同时扩大视野,提升数学人文素养。
例如,在讲授集合基数的相关内容时,可以利用希尔伯特旅馆问题来引入自然数集的基数的神奇运算。进而在给出自然数集和实数集基数之间的关系后,引出德国著名数学家康托(G. Cantor)在1878年提出的连续统假设:在自然数集基数和实数集基数之间不存在其他的基数。在1900年希尔伯特(Hilbert)提出的23个数学问题中,连续统假设排在第一位。1938年,奥地利数学家哥德尔(K. Godel)证明了“连续统假设决不会引出矛盾”,即“标准集合论与不存在中介的基数假设是一致的”。1963年,美国数学家科恩(P. J. Cohn)证明了“连续统假设是独立的”,即“假定存在中介基数,也不与集合论矛盾”,并且连续统假设根本不可能被证明。这一发现在数学界激起了强烈的震动,“可证的一定是真的,但真的不一定可证”,这粉碎了数学家们两千年来的信念。科恩也因此成为1966年的菲尔兹奖得主。数学家外尔感叹道:“上帝是存在的,因为数学无疑是相容的;魔鬼也是存在的,因为我们不能证明这种相容性。”这一背景介绍激起了学生对数学学习的无限热情,也让学生强烈地感受到数学的博大精深。有学生说:原来菲尔兹奖得主的工作离我们不是那么遥远,也是我们可以理解的,数学竟然这么神奇。可见,数学史知识的适时穿插,收到了良好的教学效果。
四、 结语
本文从教学任务、教学目的、教学内容和教学方法等方面对数学专业“离散数学”课程的教学进行了探讨。此外,在教学手段上,我们结合多媒体教学,加强平时测验。一方面要求学生自觉学习和复习巩固,另一方面通过离散数学每一部分内容的测验,来督促学生的学习,保持学生学习效果的持续性。另外,对数学专业学生讲授“离散数学”课程,除了对理论知识的讲解外,更要注重理论的实际应用和建模能力。本文只是对近几年“离散数学”课程教学的思考和总结,如何更好地激发学生的学习兴趣,提高课程的教学质量和教学效果,在今后的教学中需要教师不仅加强数学和人文素养,还要加强计算机修养,善于联系实际,为培养优秀人才而更加努力。
参考文献:
[1]ROSEN Kenneth. Discrete mathematics and its applications .7th edition. McGraw-Hill, 2012.
[2]谢志强. 讲好离散数学的第一次课. 计算机教育,2011(16): 95-98.
[3]DIESTEL Reinhard. Graph theory .4th edition. Heidelberg; Springer-Verlag, 2010:143.
[4]薛占熬, 齐歌, 杜浩翠, 等. 离散数学的课堂导入法研究. 计算机教育,2010(8): 95-99.
[5]屈婉玲, 耿素云, 张立昂. 离散数学. 北京:高等教育出版社, 2008.
[6]苏霍姆林斯基. 给教师的建议. 杜殿坤, 译. 北京: 教育科学出版社, 1984.
[7]伽莫夫等G. 从一到无穷大. 修订版. 暴永宁, 译. 北京:科学出版社, 2002:14-15.
作者简介:邓爱平(1973—),女,湖北恩施人,副教授,博士,研究方向为组合与图论。 E-mail:apdeng@dhu.edu.cn
中图分类号:G642.0
文献标志码:A
文章编号:2095-3860(2016)02-0148-05