| 选课类别:计划内与自由选修 | 教学类型:理论课 |
| 课程类别:本科计划内课程 | 开课单位:人工智能与数据科学学院 |
| 课程层次:专业基础 | 学分:4.0 |
本课程讲述离散数学的基本概念和理论,主要内容包括:(1) 集合、关系、函数等基本概念和理论;(2) 图论的基本概念和方法; (3) 代数系统的基本概念、几个重要的代数系统:半群、群、环、域、格与布尔代数;(4) 组合数学,其中包括组合存在性、组合计数、组合设计与编码以及组合最优化。(5) 数理逻辑,其中包括命题逻辑、一阶谓词逻辑、Her-brand定理和直觉逻辑。
秦晓卫老师的《离散数学》课程内容涵盖数理逻辑、集合论、图论、初等数论和代数结构等广泛主题,相比传统“计科三部曲”的课程进行了一定压缩,但仍然相对庞杂,被不少学生视为“史诗级难度”课程。许多学生认为课程内容过于复杂,并指出该课程目前的设置将大量内容“揉在一起”,形成一种“缝合ZIP课”,导致较差的学习体验,有人指出其“像是把多个学分的课塞成一个4学分的课”。
秦老师的教学态度与投入获得了普遍的好评。他十分认真负责,讲解过程中条理较为清晰,并制作了详实的PPT。不过,某些学生指出,老师在讲解时的节奏把握欠佳,特别是某些关键性概念的讲解略过得过于快速,课程节奏不均。部分内容甚至超出了课本范围,引发一些学生的不适。此外,秦老师的表达方式,有时会出现卡壳现象,给学生理解带来一定困难。
本课程作业和考试紧密联系,作业具有一定难度,但考试相对简单,尤其是期末考试被认为考查范围相对基础,覆盖了一些作业原题,学生通常被建议对作业题进行充分复习即可对考试有所准备。对于评核标准,多数学生表示老师出题相对友好且给分大方,优秀率通常达到满额。
学生们普遍反映课程负担重,体验差,有人形容其为“依托答辩”的存在,内容复杂且抽象,导致学习压力大,理解不易,有些板块时间紧凑,讲授仓促。这种课程设置令部分学生选择放弃课后复习,或以速通策略应对,导致学习效果不佳。有学生还指出,与信智学部大二其他课程同样抽象,形成联动,使得课业压力雪上加霜,但部分高年级和提前修课的学生认为通过有效利用助教资源和业余时间,仍有较高学习价值。
尽管课程性质存在争议,秦老师和助教团队的努力仍旧受到赞赏,特别是在解答学生疑问、安排合理作业以及维护考后反馈的责任心。老师还在期末考试后请全班学生吃肯德基作为奖励措施,被学生津津乐道,反映其对学生的关爱和认可。
总体而言,秦晓卫老师的《离散数学》课程有着较高的难度和内容复杂性,但教学团队的辛勤工作弥补了不少课程本身设置的问题,为学生提供了一定的支持和帮助。
我上这门课是在 23 年春季, 刚个性化到大数据学院, 离散数学是我的必修课. 两年后我来做了这门课的助教. 两年前我给了这门课 9 分的评价, 因为那时我虽然没上过课, 但可以从作业和考试感受到: 秦老师选取的内容相比计科三部曲恰当地省略了一些. 与学分量相配的同时, 又能给学生一个相对连贯的学习体验. 而且作业和考试的难度也合理, 让我这个学过三部曲的计科人可以很轻松地解决. 两年后的今天, 如果不是因为秦老师给分还行, 我会给这门课 0 分.
先说结论: 这门课现在已经成为了纯粹的行为艺术. 参与这门课的老师, 助教和学生仿佛身处第二十二条军规般的荒诞幽默中: 由于上面的安排这里需要派一个人来表演, 每个人都不想看这种表演, 每个人也都知道其他都不想看这种表演, 但是因为上面的安排还是派人来表演了, 于是被迫看表演的人面面相觑又不敢作声, 只剩下表演的人自我陶醉在他的舞蹈里. 我知道类似的讽刺已经被前人用在科大各个专业的很多抽象课上, 但这次我想表达的不是修辞, 而是这句话的字面意思: 必修 2025 春的离散数学对学生没有任何作用, 而无论是对学生知识的构建, 还是学习兴趣的培养维护, 害处都广泛而深远. 此外, 这种对学习和学习兴趣的伤害, 还难能可贵地自带一个禁疗 debuff : 计科的离散三部曲当然也有缺点, 但我在做助教时至少可以做一些事, 比如写讲义和准备习题课, 来改善学生的体验. 而当这门课的助教是我最挫败的一次体验, 除了写作业答案提供不到任何额外的帮助. 至于作业答案, 也无非是对佶屈聱牙的证明列举无懈可击的证法. 学生连知识体系都没构建起来, 读证明如同读天书, 最后无非是死记硬背一道具体题目的答案的过程字符串.
众所周知科大从来不缺少脱离实际, 仅靠领导一拍脑门就安排下来的课. 数院的光原B, AI的电基与计嵌, 信智的量子物理, 还有那些我不了解的院系里我没有听过名字的抽象课. 在评课社区和知乎之类的地方, 这些课, 以及背后的安排逻辑, 其缺陷我们已经讨论过很多次了. 起初我们讨论; 接着我们提出意见; 发现没用后我们消极对待, 或者自发互帮互助; 最后我们累得不行了, 干脆玩起解构和黑色幽默, 把这些抽象课的内容倒进化粪池里, 作为搞文学创作的肥料. 但我写这篇评课除了爽喷, 终归还是想提出一些有意义的观点, 所以接下来的正文还是会带点理论讨论. 此外我也不想继续假装面对着一群老师提什么未来改进建议, 所以我们干脆跳出这种单方面到场的辩论赛, 讨论一个 (一族) 更广泛的问题: 面向信智学部的数学课, 或者再广泛一点, 面向非本专业学生的, 应用导向或科普导向的B级课程, 究竟应该怎么开? 讲什么? 怎么用紧张的时间和资源, 面对一群比起专业学生更缺乏知识基础和思维习惯的外系学生, 讲完几大门专业课杂糅压缩在一起的一门巨无霸课程? 怎样取其重点, 舍其末微, 才能保证给学生一个大观的同时, 又不至于在严谨性上造成误解? Particularly, 全套照搬A级课的内容, 开固有时御制用二倍速甚至三倍速灌完是合理的做法吗?
我们可以观察到, 科大本科课中对学生造成精神创伤的课程, 主体正是这些B级课程: 贯穿整个学校的力学热学电磁学光学原子物理B, 以及臭名昭著的大物实验和量子物理; 沆瀣一气, 互为支撑论据的大数据/网安/计科的离散数学/二部曲/三部曲; 同样沦为行为艺术的信息论; 装腔作势的复变B, 随机过程B和数理方程B; 以及近年来颇有兴起之势的ICS. 这些一拍脑门的跨专业课程安排, 正在全方位地破坏学生的学习能力, 抹杀学习兴趣, 造成学生对其它专业知识的误解, 甚至在不同院系的同学, 老师之间加深隔阂与偏见. 每一条影响都和领导们当初畅想的预期作用背道而驰. 我相信这种闹剧绝非巧合, 也不能归咎于科大某个专业的学生全都被动懒惰, 或者被派来上这些课的老师巧合般全都能力不足, 消极怠工. 只要点开评课社区的排行榜, 看看受欢迎的课程, 读读学生们写的生动鲜活, 发自肺腑的热评, 就能意识到科大不缺能把课上好的老师, 而在好老师的引导, 好课程的设计下, 学生们也不吝拿出最大的热情投入到计划好的任务中. 王火箭的拓扑学, 涂涛的量子力学, 卢建良的计组……在数学系, 物理系, 计算机系, 都有无数老师在讲台上为我们展现了知识的传奇. 而这些传奇老师中, 有不少同时还兼着上面那些B级课程的教职, 同一批人在不同的课上居然上出两种截然相反的效果. 橘生淮南则为橘, 生淮北则为枳, 我想这里面一定是出了某些结构性的问题.
事先声明: 开始写这篇东西不是因为我狂妄到自信有能力完备地回答这些问题, 只是发现有些常识级别的东西在科大老师和学生中还没有形成共识, 所以就自己的所想能说什么说什么. 写这篇东西的直接动机是这学期深感离散数学这门课的糟糕, 但其中的内容提炼自我过去所有课的助教经历. 从 23 秋开始四个学期我总共带过七门课的助教, 其中除了信智课外, 有数院组合, 也有计科研究生必修的组合数学这种课. 但终归都围绕着 discrete mathematics 这个主题. 所以我斗胆觉得自己还是有资格说点什么的.
做图论证明题我们往往从一个具体的图出发, 感受这个命题为什么不得不成立. 本文中我们也不直接丢结论, 而是先从本学期离散数学这个新鲜案例看起: 学生主观上负担重, 体验差已是公认; 期中成绩分布和错误类型也表明, 高强度的授课没有产生高质量的效果. 为什么会这样呢? 学生的学期课程压力, 以及态度不端, 缺少投入是一些经常拿来背锅的场外因素. 但即使不考虑ai大二下的繁重课程, 假想让学生一周只上这两堂离散数学课, 所有其余时间都拿来攻克作业和研读ppt, 这门课也很难说就能让人学明白什么, 更不要说学得感兴趣. 类似地, 作业量大也经常被归咎, 但比起数量庞大, 作业选题的华而不实还要更加糟糕. 更关键的因素在于课程内蕴的性质, 比如 topics 的选取, 上课的讲法出现的问题.
第一节我们先从学生这边看起, 看看主观体验到底为什么变得这么糟糕. 回顾刚过去的离散期中, 数理逻辑的形式证明大题可谓惨不忍睹. 学生作答的最大问题, 不在于在形式化的规则下找不到证明路径, 而在于连要做什么都没理解, 在一类问题错用另一类问题才能用的证明规则. 如同一个萌新玩家, 点进一款看似很自由的游戏, 想做什么却都被提示 “这扇门从这边打不开” . 规则不明确的游戏是糟糕的, 做数学题也可类比至此: 快速介绍一堆规则就拉人开玩, 在萌新做操作时粗暴地拦下来说 “这么做违反规则” , 却不解释应该努力的正确方向, 这是桌游纳新的大忌. 即使有部分天资聪颖, 格外用功者背下了整套规则做出了题目, 恐怕也没有学到什么知识, 无非是被人按着头走迷宫罢了. 在考完试, 乃至讲完卷子后, 依然有学生来问零阶逻辑中的 |- 和 → 同为 “推出” 的含义有什么分别, 改写前束范式时交换量词又有什么影响. 了解数理逻辑的读者当然知道, 对这些概念的理解, 是数理逻辑中如同 “ABC” 般基础的内容, 也是整门学科的骨架. 如果连 |- 和 |= 的意义区别都不理解, 只训练了一堆寻找直接证明的奇技淫巧, 锻炼了一套把日常语言翻译得无可挑剔的本事, 这样的学生学到了什么数理逻辑呢? 和一个被按着头皮玩自己不喜欢的无聊桌游的玩家又有什么区别呢? 有的老师会将其简单归咎于 “学生不知道数理逻辑的研究动机” , 于是在上正课前像讲故事一样讲述莱布尼茨到希尔伯特的理想, 最后把哥德尔刻画成蒙面侠客般的传奇角色. 但是, 学生们需要的不是故事. 如果不能够正确理解数学家取得结果的含义, 只强调其功绩如何伟大, 征程如何困难, 意义如何前所未有, 则故事和理念都无所凭依, 与一个老掉牙的幼儿童话无异. 学生需要的点拨不应在背景故事里, 和将知识的正课截然分离, 而恰恰应该贯通在所谓严谨的定义介绍和定理讲解中. 学习数理逻辑, 学生需要及时地听到语法和语义的直观意义, 听到 “直接证明p→p” 这种元语言证明和 “证明演绎定理” 这种现实证明两种 “证明” 的区分, 哪怕这些东西并不能以定义和定理的语言严格地说出来, 对于学生理解数学却更加重要. 如果对这些问题没有理解, 即使听到了哥德尔不完备定理的严格陈述, 也不能切身体会其意义, 遑论感受 “掷地有声” 的震撼, 当然昏昏欲睡. 大学的数理逻辑课尚且充斥着这样的漏洞与误解, 也难怪网上关于哥德尔不完备定理的玄学解读和鸡汤解读比比皆是, “数学是不完备的” 之类末日预言大行其道, 而不求炫技, 能正视听的科普视频却少之又少.
相似的问题也出在别的知识板块里: 在集合论反复强调各种集合式恒等变形, 要求只能用这些变形律证明一个集合恒等式; 在图论里锱铢必较 “路” 和 “轨道” 的区分, 让学生按定义判断一个又一个图的实例; 在代数结构引入 "代数常元" 这种连计科都已经抛弃的概念, 大谈特谈 “<Z,+>和<Z,+,0>是不同构的” , 却对定义群同构的动机只字不提. 这些无疑都给人以 “强行定义规则” 的荒诞感, 哪怕规定这些区别在数学上确有意义, 也没有在这门课接下来的内容里体现出来. 特别是代数常元, 简单图非简单图之流, 只是定义了几个概念, 让学生做几道判断题, 此后就弃置不用. 一个概念的引入如何是糟糕的, 如何又是优秀的? 我想借数学课中的例子对比说明: 新的定义可以提出, 甚至可以在提出时显得抽象, 刻意, 没有必要, 但不能让这种没有必要维持到最后一刻. 数学分析初学时也引入 “连续/一致连续” “收敛/绝对收敛” , 这两组概念的区别理解起来, 比起前文那些刘雨表面的定义, 还要抽象艰涩许多. 可没有哪个数学生学完数分, 还会觉得这种新定义毫无必要, 因为我们最终看到了: 性质上的细微区分会影响重要定理的成立与否.
许多人对A级和B级数学课差异的理解无非是 “广度与深度” , 并且认为非数学生数学思维弱一些, 所以削减课程细节, 降低广度与深度就能顺利授课. 但恰当的广度与深度并不令人难以接受. 我们可以这样形式化地定义一门课的广度与深度: 从最基础的定义出发, 每进行一步 untrivial 的推导, 便在上一个命题与下一个命题之间画一个箭头, 直到课本上的最后一个定理/推论, 由此得到一个 Hasse 图 (这个图是无圈的, 否则命题之间构成循环证明, 不可能) . 一个 Hasse 图天然对应一个偏序关系, 这个偏序关系的最长链大小便可以定义为一门课的深度, 而广度则可以定义为其最长反链大小. 显然, 数学思维的强弱无非影响一步 untrivial 的推导能跨越到什么地步. 除非概念本身已经很抽象, 否则数学生可以一步理解的证明, 计科生拆成两步, 三步, 未尝不能理解. 一门课如近世代数那般从群环域的概念出发, 一路向深, 最后直至 Galois 理论得到 “五次方程没有根式解” 这样一个掷地有声的结论, 其 Hasse 如一条长链, 一气呵成, 虽然深度很深, 学完却让人荡气回肠; 像图论那样从图的定义出发, 枝开叶散, 自然而然地形成许多新问题新定理, 即使最后没有收束一统, 固然广度太广, 但也够让人啧啧称叹. 信智学部的学生, 学习能力, 求知欲都并非不如人, 同样能欣赏这种美感. 驽马十驾, 功在不舍. 即使行进缓慢, 一学期上不完A级课程那么多内容, 削减一到两个枝叶末端的板块, 也是保证连贯性的有效手段. 可然而偏偏是从中途胡乱削减所谓 "细节" , 前面的引理和直观理解略过不谈, 后面的复杂定理照讲不误, 使得该连贯的地方连不起来, 证明和算法理解不了只能硬背, 最后弄得知识图支离破碎, 才最抹杀人的学习意愿. 当然, 离散数学作为给信智人恶补数学的功能性课程, topics 是独立的几大块, 知识图免不了分成多个连通片. 但在每一块内部还能七零八碎, 实在令人发笑. 向上文那样贸然提出概念, 要求学生服从规则, 练几道判断题后就再也不提, 如同在这个知识图中莫名其妙点一个孤立点, 于广度深度都无增加, 却恰恰是最破坏体验的改动.
当然, 在一门糟糕的课程中, 破坏体验的因素有很多. 其中有些是学习过程内蕴的, 也有些与学期压力, 时间紧迫这些现实因素协同作用. 本节所谈的 “知识点之间关联性差, 感受不到动机” 属于前者, 并且只是前者中的一部分. 在后面的几节中我们会再次 callback 体验的问题.
对这第一条, 指挥开课的领导还可以有话说: 上课不等于玩游戏, 体验不是第一位的, 有些知识的学习就是要经过艰苦枯燥的训练过程. 的确, 游戏不好玩, 玩家可以退出, 怎么改进是设计师自己该操心的事; 知识不好学, 实用性却客观不移, 学生还是得老老实实学. 那么在第二节中我们也不妨退一步, 看看这种过程让我们学到了什么知识, 体验的糟糕又是否是 for the greater good 必要的牺牲.
我们暂且把视线聚焦在课程内部, 即只关心 “学生是否学好了离散数学” , 至于 “离散数学的知识在这门课之外的作用” , 我们就先当它是公理, 不去怀疑它. 从考试和作业的情况来看, 答案依然是否定的: 期中考数理逻辑题目的谬误不必再提, 联结词完备性, 集合等势这类题目只要稍微超出常规题型, 学生作答立马原形毕露; 作业里算法题当然可以按部就班照做不误, 但一到证明题就暴露出思路的苍白空洞, 或是成批成批抄标准答案. 是老师上课没有讲, 教材里没有写吗? 并非, 老师上课对定义的完整陈述, 定理的完全证明, 算法的执行过程, 复述得一字不漏, 正如许多其它B级课的老师念课本那样念得无可指摘. 那么答案很明显了: 听人念经并不能学会知识. 至于这经形式上是十年不变的经典教材, 还是老师躬亲写就增删的ppt, 也未必就产生什么区别 (说到底, 大部分ppt看似是针对性备课的表现, 实际效果还不如看经典教材) .
对于如何讲课能讲明白知识, 第一节第一段中关于数理逻辑讲课的讨论, 在这个问题上同样有可以推广的参考意义: 定义和定理当然是数学, 但并非是数学的全部, 并且绝不是数学学习的全部.
(未完. 本评课将持续更新)
老师确实可以,但是这门课本身有一点用处吗?将集合逻辑数论群论图论等东西一锅烩,学也学不深,用也用不到,不懂为什么AI要学这课。
也是丰学长(25春本课程助教)的文字给予启发。
AI专业必修,23级的AI培养方案在大二下就是在信院6系必修课程的基础上增加了本课程,新的AI专业培养方案已经将离散数学设置为大二上与DS一块了,本人猜测会由ss老师来进行授课。
Anyway,本课程虽然是4学分,但体量在涵盖计科三部曲(必然是部分)的基础上,还辐射到了一点初等数论(主要是中国剩余定理求解同余方程组),集合论等基础知识,属于经典的缝合ZIP课程,本人觉得应该改为6学分的。而且23级AI专业本学期的所学课程基本上是与AI没有什么关系,只是单纯的塞一堆课程名字比较高大上,实际上学的完全是不知所云的课程(点名计嵌)。在期末周复习的时候对这点感触颇深:所复习的课程一方面因为本人看不懂,遂感心烦焦虑,转念一想哪怕这课我看懂了,应该可能也许很大概率与AI或者相关方向风牛马不相及😂。在庞大的各方面知识的课程的全方位无死角的打击下,离散数学这课也是我本学期选择性放弃掉的第二门课。(第一门是随机过程,信号与系统润出AI置课英文班了,要不然肯定是信号了😂)
还记得老师开学第一节课上讲离散数学是一门2^n重要的课程,自己也听过这计科三部曲的重要性,也下定决心要学好这门。期中的部分涵盖集合论和数理逻辑,这一块最难的部分应该是数理逻辑的N,P系统的推理了,那时候本人还能用一两个下午的时间还推导哪怕是其中的一个证明题,还是没有放弃这门课程的。但是期中之后,一来有各课程的ddl,二来离散数学也来到了图论,初等数论,代数系统的期末部分,难度深度广度基本上单独拆开也顶上一门基本课了,在各种压力重担之下,这门重要性程度指数爆炸级增长的课程,也成为本人选择性放弃的课程之一。有一说一,23级AI培养方案这学期的课程基本上不是用来培养学生的,更像是用来培养AI的😂。合理一点至少感觉应该把数理方程删掉或者列入选修,把离散数学这门课程建议仿照数学分析B改为6学分且一周三次那种的吧,离散数学概念之多有时候三节课都用来介绍概念了,听过之后完全云里雾里反而还不如两节课每次下去自己还能看看。
最后说一下,课程难度本人感觉是目前独一档(无论是广度深度),以为上学期电路模电数电三兄弟合手已经天下无敌,万万没想到离散数学以一敌三✌,甚至还能打十个的地步。尽管课程如此,本学期老师和助教还是十分负责且均极具水平,在期中考试分数较低的情况下,期末没有太难且含作业原题,多关注基本概念知识。
期末成绩未出,但给分情况老师承诺优秀率会给满,而且本人感觉(小声说)除了大佬和天赋怪(AI最不缺了)在展现自己的能力以及对这门课程的掌握,剩下的大部分人仅仅只是在比谁对这门课程掌握的更加不好😂,已经从对绝对能力的要求转变为相对能力了(jwc优秀率的SB之处)。
老师说话卡壳,像那个老式的收音机。让人想上去拍两下子
唉,也不按着书讲,很乱
我通过学习3天,成功在离散数学课程期末中拿到了不错的总评。在此分享一我的学习思路和策略,希望能帮到时间紧迫、没时间复习的同学们。
通过查看老师PPT的标题,不难发现期末考试分为三个板块:图论、数论、代数结构。
我在课程QQ群和评课社区都找了,发现完全没有往年卷、题库、学长学姐笔记等,可谓是一穷二白。
所以,我们手头的复习资料,只有老师的讲课PPT,以及每次的作业和答案。
这时候,我们可向助教询问,是否有往年题。果然不存在。
接下来我们再次问助教考试的难度和再次确认考试范围。这种直接大胆问,如果回答了就对复习有帮助,如果不能告知也不亏。
然后助教回答是考试比较简单,“老师希望不调分”,以及会考一定的作业和PPT原题。那么,我们可以确定考试复习步骤:以作业和PPT题为基础,做到会做所有作业题以及类似的题。
由于速通的话在3天内重新做完所有作业显然是不可能的,所以我采用对照着作业答案看作业的策略,偶尔感觉比较经典的题才会自己上手做。
当然,最开始复习的时候,我们显然是啥都不会的。这时候我推荐看蜂考的离散数学教程,注意只要看后面几章。虽然很多知识没有讲到但基本上是课内知识的子集。
我在海鲜市场一块五买了讲义和答案,非常便宜实惠。里面的课后例题很简单,我花2小时做完了对完了答案,对基础知识有了大概的了解。
接下来是细细地看PPT,尤其是那种比较完善的例题,因为大概率是考题。在此过程中不会的及时询问助教。助教都很细致负责且高水平,及时给出了解答。
然后是对照答案看作业题并偶尔做作业题。看PPT和作业题需要的时间是比较久的。且一定需要重视。由于是简单题,所以看PPT可以夯实基础查漏补缺。由于会考作业题,所以会做作业题是基本,可以拿到基本的分数并在考场上有自信。
个人感觉图论和数论比较好理解,但代数结构真的很晦涩难懂。其实到最后我代数结构也不是很会,作业题只能大概做个七七八八。
刚开始的时候,基本上一道题也做不出来,全靠查答案+问GPT和助教,这是非常正常的,不必焦虑。

同时也很感谢三位认真负责的助教!
其实自己也很意外,能在高手如云的AI班用3天抢了一个优秀名额。所以大家可以相信速通的性价比!
希望我的经验能帮到即将考试或时间紧迫的同学们!
哇,多年以后当我的对象指着我的鼻子问我怎么证明我没有第二个对象的时候,我一定会想起所有N系统的证明都有否定引入。
牛逼,数理逻辑这一块还是有说法的,把学生训练成人机了都快。蕴含和等价两个连接词的含义不能直接用,析取三段论不能直接用,德摩根不能直接用,拒取式不能直接用,假言易位不能直接用,那我问你,我头顶怎么尖尖的,所有的二级结论都是基于否定引入的,有种把C语言拆成机器码的美。
牢完了,一次作业十几个题,而且怎么每个都这么恶心。也不知道证明写到哪种程度算完备,建议所有算数题都从皮亚诺公理开始证明。
🤡孩子们,一阶逻辑也有N系统🤡
🤡孩子们,集合论也有N系统🤡
本文纯属虚构。
前提:
∀x(InClass(x,DiscreteMath)→Stress(x))
证明:
1.∀x(InClass(x,DiscreteMath)→Stress(x)) (前提)
2.InClass(a,DiscreteMath)→Stress(a)InClass(a,DiscreteMath)→Stress(a) (∀消去,从1)
3.InClass(a,DiscreteMath)(附加前提)
4.Stress(a)(→消去,从3和4)
5.Stress(a)∧Stress(a)(∧引入,从5和5)
6.InClass(a,DiscreteMath)→(Stress(a)∧Stress(a))(→引入,从4到6)
7.∀x(InClass(x,DiscreteMath)→(Stress(x)∧Stress(x)))(∀引入,从2到7)
8.重复上述1~7,有∀x(InClass(x,DiscreteMath)→(Stress(x)∧Stress(x)∧Stress(x)∧Stress(x)∧Stress(x)……))
结论:∀x(InClass(x,DiscreteMath)→(StressedOut(x)))Bob盯着那张纸,纸上有一行结论。最前面的符号显得非常古怪,像一个倒写的A,他把它读作"所有的"。所有的。所有的x。所有的x,∀x(InClass(x,DiscreteMath)→(Stress(x))。
Alice曾经说过,∀太庞大又太窒息,∃在∀面前显得那么弱小。
黑板上的粉笔字在日光灯下泛着白垩色的光。粉笔还在写,与黑板摩擦,发出一种细小尖锐如同蚊子的声音。Bob看见那个声音从黑板上飘起来,变成一行符号,然后散成白色的粉末,让整个教室变成惨白一片。
∀x(InClass(x, DiscreteMath) → Stress(x))。
然后教授做了∀消去。他把那个庞大的东西收回来,里面有一条叫a的鱼。InClass(a, DiscreteMath) → Stress(a)。a是谁?a可以是任何人。a可以是Bob。a可以是Alice。a可以是教室里任何一个人,他们坐在这张硬邦邦的椅子上、试图理解为什么一个倒写的A可以决定他们接下来一小时心情的人。
Alice坐在他左边两排的位置。她的笔记本摊开着,上面的字迹很小、很整齐,像是用尺子比着写的。Bob看不见她写了什么,但他知道她在写什么。她在写和教授一模一样的符号,一行一行,整整齐齐。他曾经在一张高中的课桌上见过那种写得如此之小的符号,那些符号比"丰"字多一横,四横一竖,铺满了整张桌子。它们没有∀那么大,也没有∃那么小。
粉笔在黑板上划出一道弧线,那是→的符号,一个箭头,指向某种必然的坠落。教授的声音从很远的地方传来,他想让课堂看起来没那么死气沉沉,不自觉地提高了音量,声音却仍然免不了要掉在地上。
"附加前提。"他说。
InClass(a, DiscreteMath)。
Bob感到自己的存在被括进了这个括号。他成了a。a是任意的,a是普遍的,a是教室里三十几个疲惫灵魂中的任意一个。他低头看自己的笔记本,发现上面写满了同一个字母,a,a,a,像一群蚂蚁在纸页上爬行。他想起小时候用放大镜烧蚂蚁,阳光聚焦成一点,蚂蚁在焦糊中扭动。现在他觉得自己就是那只蚂蚁,而∀是太阳。“a也不一定是任意的。”Bob想着,“还有一半的人没来上课。”
Alice的铅笔尖突然断了。他听见那声清脆的断裂,铅笔的骨头折断的声音。她低头找铅笔刀,头发垂下来,遮住了她的脸。Bob想,她的头发也是a,a是黑色的,a是柔软的,a是∀x(Hair(x, Alice) → Black(x))。但这个全称命题是假的,因为在某个光线下,她的头发会泛出美丽的棕色,像旧书牛皮纸封面的斑纹。
教授在写第三行。Stress(a)。
"→消去。"
Bob感到某种东西从胸口升起。那是一种熟悉的压迫感,像有人在他的肋骨之间塞进了一块吸饱水的海绵。Stress(a)。a是Bob。Stressed(Bob)。这个推理是有效的,形式正确,前提为真,结论必然为真。他无法反驳。他想起Alice说过的话:在逻辑里,没有"有点累",没有"有点焦虑",也没有“学得有点死了”,只有p或非p,没有中间状态。二值逻辑。0或1。生或死。Stress或非Stress。
他看向窗外。窗外有一棵树,树上有叶子。他可以写:∀x(Leaf(x, Tree) → Green(x))。但这是假的,因为有些叶子是黄的,有些已经枯了,有些被虫咬出透明的洞。真实世界充满了欠定,而教室里现在到处都是必然。欠定,必然,Bob也不知道自己更喜欢哪个,也许两个都不喜欢。
黑板上不知何时多了一个∧。
"合取引入。"教授说,"从5和5。"
Stress(a) ∧ Stress(a)。
Bob觉得荒谬。同一个命题与自己合取。Stress(a) ∧ Stress(a)。这就像说"我很累并且我很累"。他看向Alice。她正在笔记本上画什么,不是符号,是某种图形。他眯起眼睛,试图辨认。那是一条皮亚诺曲线,线条细密得像她的字迹。她在迷宫的角落写了一个很小的∀,然后画了一个箭头指向迷宫的中心。
教授的声音继续漂浮:"从4到6,→引入。"
InClass(a, DiscreteMath) → (Stress(a) ∧ Stress(a))。
Bob感到这个蕴含式像一条锁链,把他和某种必然性绑在一起。如果他在这个教室里,那么(他很累并且他很累)。前件是地点,后件是状态。教室变成了一个函数,输入是学生,输出是疲惫和另一个疲惫。他想起函数的定义:单值性。一个输入只能对应一个输出。但这里的输出是重复的,是Stress的平方,是布尔代数特有的废话连篇。
Alice突然抬头,看向他的方向。他们的目光在空气中相遇,像两个集合的交集,非空。Bob想写:∃x∃y(Look(x, y) ∧ InClass(x, DiscreteMath) ∧ InClass(y, DiscreteMath))。存在x存在y,x看向y,x在离散数学课堂里,y也在离散数学课堂里。这个存在命题是真的,因为a看向a,Bob看向Alice,Alice看向Bob,他们的目光构成一个对称的关系,也许是等价的。但是Bob不想——等价关系是传递的,他不想让任何人跟着自己到处乱看。
但教授在黑板上写下∀引入。
"从2到7。"
∀x(InClass(x, DiscreteMath) → (Stress(x) ∧ Stress(x)))。
那个倒写的A又回来了,而且比第一个更大。a消失了。∀吞噬了a,把实例的结论任意化。不再是"如果Bob在教室里那么他很累",而是"所有在教室里的人都很累并且很累"。Bob感到自己的特殊性被抹除了。他只是∀的一个实例,一个代入,一个可以被替换的变元。他可以被Alice替换,可以被任何人替换,而命题依然为真。
Alice的迷宫画完了。她又在中心写了一个很小的∃,然后把它涂掉了。
"重复上述1~7。"
教授的声音变得遥远,像是从另一个教室传来。Bob看着黑板上的粉笔字开始自我复制,像细胞分裂,像病毒繁殖。一行变成两行,两行变成四行,四行变成无穷多行。
∀x(InClass(x,DiscreteMath) → (Stress(x) ∧ Stress(x) ∧ Stress(x) ∧ Stress(x) ∧ Stress(x)……))。
Bob想起数学归纳法,想起那个关于多米诺骨牌的隐喻。如果第一个骨牌倒下,如果倒下会导致下一个倒下,那么所有骨牌都会倒下。这里的骨牌是Stress,第一个倒下了,第二个倒下了,第n个倒下了,第n+1个也倒下了,无穷递降,无穷上升,没有尽头。他感到自己的疲惫也在归纳。第一分钟很累,第二分钟更累,第n分钟比第n-1分钟更累……他的疲惫渐渐显示出发散的迹象。他想起微积分里的无穷大,那个∞的符号,像一条衔尾蛇。他的疲惫也是一条蛇,从Stress(a)开始,经过Stress(a) ∧ Stress(a),再经过Stress(a) ∧ Stress(a) ∧ Stress(a)。
Alice的笔记本写到:lim(n→∞) ∧ⁿ Stress(a) = ?
她画了一个问号,然后把它改成∞,然后又改成StressedOut。
教授放下粉笔。粉笔与黑板分离时发出一声轻微的叹息,像是一个证明的终结,像是一个生命的终结。他写下最后一行:
∀x(InClass(x,DiscreteMath) → (StressedOut(x)))。
Bob看向Alice。她正在收拾笔记本,动作很慢,像在水下移动。他想,她的疲惫也是紧致的,她的StressedOut和他的StressedOut是同构的,存在一个双射,保持结构,保持痛苦。他们可以建立一个等价关系,划分等价类,所有的StressedOut(x)在同一个类里,所有的¬StressedOut(x)在另一个类里。教室被划分成两个集合,但他知道,在这个离散数学的课堂上,第二个集合是空的。他看着Alice的笔记本变得越来越大,上面的皮亚诺曲线却反而越来越密,并逐渐从笔记本上蔓延开来,铺上书桌和墙壁,把教室里的所有人都缠得血肉模糊。
"下课。"
Bob嗯了一声,从桌子上弹了起来。日光灯不再那么惨白,只是有点刺眼。他低头看笔记本,上面只有三行潦草的笔记,没有那个无穷无尽的证明。黑板被擦干净了,只剩下一些火山灰一样的痕迹。
Alice从他身边走过,头发泛出那种好看的棕色。她看了他一眼,嘴唇动了动。这次他听见了声音,很轻,像一片叶子落下:"你睡着了?"
他站起来,腿发麻,像有蚂蚁在血管里爬行。他想起梦里的a,那个任意的a,那个可以是任何人的a。现在他不是a了,他是Bob。
Bob看着她,看着她的棕色头发,看着她上课偷吃不小心留在嘴角的面包屑。他想写:∃x∃y(Eat(x, Sandwich) ∧ Crumb(y, x) ∧ On(y, Face(x)))。存在x存在y,x吃三明治,y是x的面包屑,y在x的脸上。这个存在命题是真的,而且很美,因为它可以被反驳——她可以擦掉面包屑,她可以不吃三明治——而所有真的全称命题都是残酷的,因为它们必须永远为真。
"回去吗?"他问,"下午还有课。"
Alice把包装纸倒过来,把所有的面包渣倒在手里,一口吃了个干净。
"回去。"
他们走回教学楼。走廊里,黑板上的粉笔字已经被新的符号覆盖,在那些画着鲜花和彩虹的风景画下面,那些被擦掉的∀和∃仍然若隐若现。Bob看着那些倒写的A——也许只是他想象出来的——感到它们依然庞大,依然窒息,但现在他知道它们只是符号,只是可以被擦掉的粉笔灰。
Alice打开她的笔记本,又开始画那条皮亚诺曲线。
先说结论,如果是完全以考试为导向的话,花短时间拿个好分是完全可行的(楼下大佬就分享了经验),毕竟期末考试还是很基础的,可以出的很难的图论部分只出了两三道还算简单的题,一道面染色,一道判断可平面图(作业题),数论部分也是计算,没涉及证明,代数结构里也是有一道作业题。
其实这门课的授课内容一点不比计科的离散三步曲少,基本覆盖了计科那几门的知识点,我觉得比较遗憾的是没讲到哈密顿圈的近似算法,那个近似比还是很有意思的。这么多内容放在一学期里的4学分的课中,我只能说不如不开。
其实秦老师是很努力的在上好这门课的,ppt很详实,有抽象的证明,也有图像直观,只是可惜几分钟不到讲一个图论算法的证明对同学压力还是太大了。
这门课就是这学期的一个缩影,有太多应该是有意思的课,最后因为课程安排,优秀率限制等等变成了同学们口中的⑩课
首先是利益相关,被超乎想象的捞了一把。喜出望外之时来看评课社区,卒读丰助教之长论,深以之为然。我今年是大一的小东西,提前来学的这门课。动机是兴趣加上心比天高的自负,当然,这个选择是未经深思且带来痛苦过程的。期中之前我依然坚持保证到课率,尽量是每节课都来了。我有三点感触,其一,但凡走神半分钟,接下来老师讲的内容就完全跟不上了。其二,有一些在理解上非常重要的点,老师上课时并未予以强调,风轻云淡的略过了,造成了严重的障碍。其三,内容过于庞杂,概念多如牛毛,且每节课都像雨后春笋般不停的涌出。我向来对难题有一种执念,意欲全身心以赴以克服之。比方说自然演绎推理系统n和p,参读北京大学出版的离散数学教程,自以为全盘领悟之,而且也花了很多时间去练习。但是期中考试被很简单的概念和算法题背刺了。。。离散数学的超大体量造成了深度与广度的尖锐矛盾,二者难可兼顾。有限的时间内,鱼与熊掌不可兼得。对普通人来说想要学好这门课,期末复习除外,不能使用老师的ppt或者布置作业所用的教材,要看只能看北京大学出版的离散数学教程,B站也有配套的网课 。其中屈婉玲老师讲的代数系统部分以及王捍贫老师讲的数学逻辑部分是我觉得比较清晰的。但是问题在于,北京大学的离散数学课所开设的学时以及学分远超我科,这就要求我们以六学分乃至八学分的态度去学习这门只有四学分的课。有时间吗?肯定是没有的。期中之后我就没去上过课了……因为觉得去上课也听不明白,下来还得自己看网课,不如直接省去上课这一环节。期末的时候也是通宵完直接来考试,不过依然遭遇了许多前所未见的概念😅。所幸结果是好的……我觉得这门课我应该算是全程自学。内容蛮有意思的,给分也很好,但是我不会再选一次。最后感谢一下助教!我虽然没问过他什么问题但是能感受到他的认真负责。他的习题课简直是我期末的救命稻草。🥰🥰🥰🥰🥰🥰给一万个好评~
老师挺认真的,PPT质量很高,不过有时会讲得不太清楚,毕竟离散确实有点抽象。
很多内容会超出课本,因此我除了做作业外基本没用过课本,完全靠PPT学习,在图论和代数部分参考了计科的教材。
作业有一定难度,但是考试不算难。今年的期末答题大部分是比较简单的证明题,建议复习时记牢重要概念,不用纠结于较难的知识点。
教材电子版和答案电子版如下:
离散数学 (屈婉玲, 耿素云, 张立昂) (Z-Library).pdf
离散数学习题解答与学习指导(第3版) (屈婉玲, 耿素云, 张立昂) (Z-Library).pdf
计科三部曲教材如下:
群论的相关入门文章:
老师的语言组织实在是太混乱。
节奏也很差,越上越快,每次课后半段都讲得非常慌乱,语速快且逻辑乱。
补充:ppt漏洞百出
出分更新:
因为代数结构没学所以期末寄了,最后被奶上3.7,优秀率是给满的,老师给分不错。
这门课的内容安排因老师而异,我室友在邵帅老师班修的离散感觉和我修的完全是两门课,秦老师班本学期是期中考数理逻辑、集合论、函数,期末考图论、数论、代数结构(主要是群论),供参考。个人感觉不是太平衡,期中内容太少且简单,期末内容太多且较难。
关于先前评的上课问题,现在我依然持相同观点。离散这门课的内容比较抽象,自学不容易理解(而且老师的ppt质量也一般),所以我认为听课还是比较重要的,因此老师上课的问题对我造成了一些困扰,主要就是节奏不好和表达不清晰。可以看出秦老师本人是很有灵感的,只是有时候表达不出来,加上课堂规划欠妥。秦老师人还是很好的,我有时下课后会去问一些奇怪的问题,老师一直很有耐心。
btw这个班的习题课比较少,整个学期只在期中期末前各上过一次,据了解邵帅老师班好像每周都会上习题课。
这门课是AI必修课,是第一次开课,总体下来给我的感受还是很不错的。 老师备课认真,课件做的超级好;讲课也是条理清晰,让大家能听懂。助教也是很用心地批改,也很热心解答作业中的问题。 但个人觉得这门课程的设置很不合理,数理逻辑、集合与关系、图论、数论、代数结构这么多内容融到一门课里,很多章节给我的感受就是讲完定义就结束了,做题时有点懵圈。当然这是课程设置的问题,不是老师的问题。 给分方面,40%的优秀率老师是给满了。 考完老师还请我们吃KFC,真是神仙老师啊!
综上所述,推荐大家选这门课(虽然AI人是必修)
离散大概是我大学两年学过最难的一门课了5555555
课程分为五个部分:数理逻辑,集合与关系,图论,数论和代数系统,前面两部分温水泡脚课都不用听,到图论正式进入地狱难度,一道题能看两小时。。。(也有可能是鼠鼠太菜了)比较重要的部分就是图论和代数系统,建议花很多时间真正搞懂。
个人推荐参考书:图论部分《图论导引》,数论部分计科的《代数结构》,群论部分《离散数学教程》
老师上课很认真很负责,甚至会把布置的作业题都自己写一遍。期末总共汇总下来888页PPT就问你爱不爱吧。这门课离散的知识点确实多,888页至少有600页是重点,所以建议提前开始复习。
老师讲逻辑命题的时候说“如果张三来上课,我就请全班吃肯德基,等价于如果全班来上课了,那么张三一定来上课了,等价于如果全班都来考试了,那么我请全班吃肯德基”。本来是举一个例子结果真的兑现了,这样的老师谁能不爱啊。
但是为什么没有给老师打到满分只打了9分呢,我对老师的教学态度和课堂质量都百分之两百的认同,但是可能老师在讲授的时候是站在一个已经全面领会的角度去高屋建瓴的对我们进行指导,所以理解性和接受性可能对于我这种菜鸡不是很友好,PPT很多定理和概念就是用公理性语言和严谨的数学语言进行描述的(意思就是看不懂很抽象),尤其到了抽象代数部分更是痛不欲生。在复习的时候感受到老师是站在一个很高的角度去讲这门课所以讲述的是这些数学概念背后最本质的东西。我个人觉得老师也许以后可以多加一些具象的例子,比如说商群有哪些,群同态基本定理的具体例子,有时候太抽象确实不好接受。
但是老师确实是非常非常非常好又负责任又有爱心的老师,强烈推荐。
给个十分
因为各种原因,课程内容在上课之前已经接触过了。但每周做作业的时候,还是会感觉很痛苦。期末复习的时候,之前自己做的做法也几乎忘光了,只能看助教的答案
秦老师感觉还是很有水平的。各种典故信手拈来。听课可能收获不小。学的内容很多,但平心而论,学的很肤浅,大部分板块都是浅尝辄止。几位助教挺好的,但好像从没见过面。
考试的话,建议对着作业题拟合。作业题都会了基本上就七七八八了。期末考试不少作业原题。应该还是调分的吧
给个10分平衡一下。我个人的观点是,课程史是课程的问题,老师助教都还是很不错的。
AI25年春季学期的课程,真是极大丰富了我对史课的想象。本科上了一半了,你告诉我AI专业还没开始系统性交AI(隔壁网安都开始上人工智能导论了,我学本科学了两年,学AI还得靠大研?)也就罢了,这个把数理逻辑、数论、图论、代数结构全揉在一起的课是个什么玩意儿?我嘞个仙之人兮列如麻。还有逆天期末周,一天半复习,几百页PPT,上百个定义、定理和证明,除了熬夜硬背我还能怎样?第二天考试都是梦游着考完的。未来要学这门课的同学看到这里,可能会想:也许我期末周时间安排合理一点就好了?nonono,独史不成粪坑,你这想法属于是没有被计嵌、数据分析及实践、信号与系统一起毒打过。总之,尝者自知吧。
看得出这门课的内容是有用的,有些知识在学离散数学之前就已经如雷贯耳了。可是,这样大水漫灌,我能学到什么呢?大概AI的大二学年,不是拿来学知识的,只是拿来磨练意志的吧。
不过YYSY老师还是很不错的,看得出已经很努力地帮学生过了。甚至期末尽量出原题(早知道我就先把作业看完了)。
复习太痛苦了,都是概念,完全不知道有啥用。就像是往水池里无意义地注水,注水之后任其蒸发掉
助教和老师挺负责的,老师布置的作业巨多,较难,一方面是沟槽的课内容又多上得又快,念个概念和例子,就又是下一个概念,另一方面这课是真抽象,真的难。总结,这颗纯粹就是依托答辩,知识杂糅,摸个皮毛,啥都没弄下,要不是老师和助教,一分没跑。
老师第一次带这门课,感觉对进度和难度把握有些失误,图论前的部分难度极低(老师说之后从这里就开始上难度),老师讲的也稍微有点慢,让我放松了警惕,但之后突然就难度激增,尤其最后一部分代数系统,最难但讲的最快,其实这部分前后联系还是很紧密的,但当时没有充足时间去理解,学起来很割裂,就很痛苦。同时老师会补充很多书上没有的东西(会留作业也会考),尤其在最后一部分。
这门课的内容巨多无比(数理逻辑,集合论,图论,初等数论,代数结构······),这个学期没有期中考试,AI的考试有堆到了一周内,复习离散数学时真的几次在崩溃边缘,但老师说之后可能会加上期中,把图论(好像是)之前的东西考了,可能会好很多。但这学期期末考试难度讲真不是太大,前面的填选就是送分,后面的大题基本全是证明,我记得图论和数论那两个题最难,图论的混出来了,但数论那个证明RSA公钥体系的安全性属实是不会(PPT上有,但复习认为没用),其他大题难度也就还好,有些就是利用定义证明还是比较简单的。
老师非常的负责认真,在群里也经常和同学们聊天,之后这门课肯定是越来越好的,对了,老师请所有同学考完吃了开封菜,本来只是我们开的玩笑,但老师真的做到了,爱了。
(实在复习太痛苦,给个9分)