枯燥乏味之离散数学闲谈

说在前面

  好久没有正经的弄过数学了,如果有错误请轻喷。

  先从度娘那搜到本科阶段学习的离散数学(概论)大概会包含以下内容:

  • 集合论/群论:整个数学界万物起源
  • 函数:建立在集合论基础上,函数式入门
  • 关系论:建立在集合论基础上,表示高维度对象,数据库入门
  • 命题逻辑/布尔代数:逻辑推导与化简
  • 组合数学:计算问题通解
  • 数论:密码学入门,组合数学理器
  • 图论:数学建模入门,数据结构入门,建模界万物起源
  • 计算理论:理论计算科学万物起源,编译原理入门,函数式入门,算法复杂性分析

  离散数学是计算机科学的基础,学好它就在掌握了日常要用的基本数学工具。因为计算机中的一切,究其根本都使用 0 和 1 来表示的,这就决定了它是一门基于离散数学的学科。

  我发现面临的很多实际问题里面都有离散数学的影子。比如强人工智能涉及因果推理,需要逻辑学和布尔代数。计算机中的文件系统涉及树状结构,并行计算涉及图,都属于离散数学。

  我可以很负责任的告诉你,如果你能在大一的时候就吃透离散数学这门课,你就等于学完了整个计算机科学、计算机专业(本科阶段)的一切。恭喜你,你可以毕业啦!!!

  可能会有人有这样的疑问?我一个学计算机的,编程能力才是最重要的吧,数学学那么好干嘛。我又不干数学公式推导那些,那些是数学系的人干的。

  虽然国外的科学家做过统计和证明,目前编程能力的强弱和数学确实关系不大(杠精勿扰)。个人觉得,编程能力主要考验的是宏观构建能力和微观的逻辑思维。

  宏观构建能力是什么?例如一个很大的项目摆在你面前,往往是老鼠啃天的感觉,这是初级程序员的必然反映。但是资深的会跳出微观世界,从宏观分析整体的需求和特点,从而构建出合理的拓扑。

  那么微观的逻辑思维呢?就是有个清晰的逻辑,这个操作应该怎么进行,遇到各种异常分别怎么处理。做好了结果也很明显,你写完的代码可能有语法错误,但是很少有逻辑错误。日常工作中语法错误是容易找到的,逻辑错误往往很难找很耗时。代码小白可能经常会遇到代码可以编译运行,但是结果就是不对。这很明显就是逻辑错误,即使知道是逻辑错误,可就是不知道错在哪,此刻是很绝望的。

  所以逻辑思维的重要性不言而喻了吧。感觉我们现在的教育死记硬背我们很推崇,但是真正的逻辑思维培养都忽略了。我最讨厌的就是背书了,没有之一,这或许就是我文科很差的原因吧。

  最后,鸡汤还是要端上来。离散数学必须好好学,要超过老师的课程(因为老师往往也不是高手)。多去网上看看搜索,自己也要多思考,培养好逻辑思维,即使你自己不做编程的工作,做其他领域也会很强。

  所以,我又滚回来学了。


集合悖论

  说到集合,很多人首先想到集合悖论。

  小说《堂吉诃德》里描述了这样一件事,要进入某个城市就要过城门安检系统,该城法律规定,每个要进城的人都要求回答一个问题“你来做什么?”如果说的是真话就被放行,但如果发现说假话,就要被当场绞死,有个聪明人回答“我是来被绞死的。”如果这个人被绞死那他说的就是真话,就应被放行,可如果把他放行,他说的就是假话了,就应被绞死。
      在这里插入图片描述

  波特兰.罗素,英国超级哲学大师,除了哲学他对数学也极有研究,当年他构造了一个集合,这个集合是由一切不属于自身的集合所组成的,然后问这个集合属于他自身吗?把这个集合记作S,如果S属于S,根据S的定义,S就不属于S,但如果S不属于S,同样根据定义,S就应该属于S,无论如何都是矛盾的,这个悖论让当时的大数学家们无比崩溃。

  这个悖论在哲学里有很多种表达形式,比如理发师悖论,一个理发师说他只给那些不给自己理发的人理发,然后有人问他是否给自己理发,理发师陷入两难境地。

            在这里插入图片描述

  再比如一个人说他正在说谎,那么如果他真的在说谎,则他说自己说谎就是真话,可是如果他说的是真话,则他是在说谎。哲学就是如此神奇的学科,下图中匹诺曹的鼻子会变长吗?

    在这里插入图片描述
  哲学里至今无法解决这样的悖论问题,但数学里必须要解决它。就像爱因斯坦解决光速问题一样,只要设定光速永远不变,只要承认这种超越常识的认知即可避免各种悖论。同样的,因为罗素悖论的存在,则就可以提前规定不允许存在那样的集合S,就是禁止一切不属于自身的集合所组成的集合的存在。这种用各种限制条件构造集合的方法叫做公理化集合理论,就是建立一些列公理条件,以剔除掉可能存在的矛盾。可见数学是不完美的,数学也不是自由的。

    在这里插入图片描述

  • 1
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 2
    评论
评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值