开始了开始了,又开个坑,离散数学。

离散数学就我来理解,就是不离散数学的对立面。离散的对立就是连续,说到连续很多人想到连续的函数、积分、等等概念。离散就是另一个方向,不连续数学。集合、计数、关系、树、图。如果我们希望用某种数学工具来表述模式、关联性(树、图)、属性(向量)之类的问题时,我们都需要借助到离散数学。

对于离散数学的理解之后会慢慢谈到,先进入这次的正题,逻辑和证明。

首先我们对逻辑语句这一类数学表达很熟悉,或、且、非blabla。中学时我们就知道,p且q、p或q我们都有理解,至少能知道其中的真值表。那么,高中时候的“送分题”有什么好研究的呢?

一、从一个小问题开始

我相信很多人听过一个谜题,在你面前有两个神,一个天使一个恶魔,你不知道哪个是天使哪个是恶魔,同时你面前有两条你不知道通往何处的路,一条通往天堂,一条通往地狱。但是我们知道天使只说真话,恶魔只说假话,现在你只能向你面前的某一个神问一个问题,请问怎么能够问出通往天堂的路。

答案揭晓,只需要问其中一个神:“另一个神会说哪条路去天堂?”。

假设你问的是天使,因为恶魔会骗人指向去地狱的路,天使只说实话。所以天使会如实的指向地狱的路。

假设你问的是恶魔,天使会指向去天堂的路,但是恶魔只说谎话,所以他会指向去地狱的路。

也就是说无论是你问的是什么神,他们都会指向去地狱的那条路。这里面蕴含了什么知识?

就是高中的那道送分题,事件P为真,事件Q为假时,(P且Q)为假。仔细一想,天使说的话必定为真,恶魔说的话必定为假那我们那我们把他们两个的话取且运算,就必定为假。

不知道你会怎么想,我在第一次解决这个问题时有一些惊讶,很多看上去很浅显而又比较简单的知识在应用时,我却没有任何意识,这就是因为我从来没有去理解过这些知识。

说到这里你也许有一些感觉了,逻辑运算是解决计算机问题的所有基础。计算机就是由0和1组成,从图灵机到人工智能,都离不开逻辑运算与证明。

二、对于运算符的理解

我认为且、或、非、异或运算不需要赘述其公式,我就来谈谈对其理解。

以前我一直有一个问题,那就是我拿两个十进制的数字来进行位运算,有些什么意义呢?现在我的答案是,没有意义(除非你你想找数当中2的幂问题)。

布尔代数只有0和1、我们可以去理解成不存在(0)与存在(1)。那么两个布尔代数做运算时:

且:同时存在   或:至少存在一个    异或:存在且仅存在一个。

另外就是非,非也就是取反。还有一个符号,→(条件语句)。我们不能把→符号理解成“推理出”。例如P→Q,这个语句的意思是P是Q的充分条件,如果是双向箭头那就是充分必要条件。另外,这个符号有一些反直觉当P→Q为真时,大家可能认为Q为真蕴含着P为真,但实际上是P为真蕴含着Q为真

也就是说,当语句P→Q为真时,P为真时Q一定为真,而Q为真时P不一定为真。

P→Q符号意思就是,如果P那么必定Q。很多时候我们不能去思考其现实中的意义,我们关注的只是其真值表。

但是我们仍然可以举出一些生活的例子,就拿《离散数学及其应用》一书上的例子。一位政治家说:如果我被选上,那么就施行减税政策。那么P事件为“我被选上”,Q事件为“施行减税政策”,政治家说的话就是P→Q。

我们看到真值表:P和Q都为真时,也就是说政治家选上了,而且实行了减税,政治家说的话当然是真的。

P为假,Q为真时,这句话也为真。很好理解,如果该政治家没有选上,其他政治家施行减税政策,Q依然成立。而这个事情的结果和政治家的话不冲突,那么政治家的话就是真的

P为真,Q为假时,P→Q为假。也就是说政治家选上了却没有施行减税,说明政治家骗人,他说的是假的。

同样,P为假,Q为假也没有冲突。他没有被选上减税政策也不被施行。我们发现当条件为假时,语句必定为真,因为条件为假时,结果是什么样子都是合理的,结果的真值就不受条件语句的控制

这是很好理解的例子,或许你认为这是一个可以根据常理来推断的。但事实不是如此,例如,假设明天下雨,那么昨天下雨。乍一看,这个语句没有意义啊。昨天下没下雨已经定格了啊,和明天下雨有什么关系呢?但是在数学中这一语句仍然可以画出真值表,而且可以为真也可以为假。

三、推理

推理当中最为核心的一句话就是,一个论证的有效性取决于论证形式的有效性。

当我们想要证明一个语句时,我们就需要用到论证。论证就是一连串的前提,和一个结论。而前提和结论都是命题,当所有的前提为真蕴含着结论为真时,论证就是有效的。论证形式是什么呢?我们可以认为论证形式就是各种各样的推理规则

图片引自https://blog.csdn.net/u011531613/article/details/60469999。

这些推理规则都是永真式,也可以换一个更加方便理解的写法例如第一个规则,假言推理原则可以写成

虽然推理规则是永真式,但是我们在推论时我们还是需要找到条件为真,结论为真的情况,因为上面提到的,条件为假时,结论和条件没有关系。如果我们在论证的时候被现实的大量可能情况迷惑,那么我们就只看真值表。我们给出条件语句的真值表,再给出结论的真值表,给出各种命题真值出现的所有情况,因为推理规则是永真的,条件语句能找到为真的值,那么这种情况下结论就一定为真。

另外,提一下全称命题和存在命题。

当我们说一个全称命题是对的,那么其所有情况都是对的,反而言之想要证明一个全称命题为假,只需要一种情况为假。这里不禁要赞颂一下科学。要证明一个科学理论,那么这个理论就必须要解释所有的相关现象。要推翻一个科学理论只需要一个小小的,不符合预期结果的实验就行了,谁去比萨斜塔上面扔两个球都可以推翻欧几里得的权威。

不说题外话了,另外一种存在命题,那么就只需要找一种存在情况。这个也很好理解,不多赘述。

四、证明

也许很多人对数学的定理有一些误解,认为一些很有智慧的伟人不停地想啊想,就得到了轰动数学解的定理。但事实上不是这样,大部分的数学定理都是有一个流程的。

首先,根据观察的现象提出假设,然后试图证明假设。如果没有办法证明这个假设,就想办法去证明假设是错的,如果还是不能证明假设是错的。又回头来寻找假设成立的证明。如此可能要分头证明其是错是对很多次尝试,甚至有不少假说还没有被证明。

证明的方法和技巧有很多,在处理不同问题时可能就会出现许多不同的方法。例如,分情形证明法,其实就是把所以情况列举出来一一证明。这种方法最为直接同时也是最笨滴。

1、存在性证明就分为构造性,和非构造性证明。构造性证明就是暴力的寻找一个存在的可能性,分情况一种一种的去试。非构造性就需要用到一些精彩的手法,例如以下问题。

证明存在无理数 x 和 y 使得x^y是有理数。

首先,是无理数,第一步令 x 是,y 是,x^y=^。这个数字还是难以判断,第二步我们令 x=^,y= 。

于是x^y=(^)^=^2=2 是有理数。如果^是有理数那么就证明成功了,如果是无理数,那么第二步 x 依旧是无理数 y 也是无理数。证明依然成立。

这就是书上的一个非常巧妙的非构造性证明,同时我们利用非构造性证明可以证明一些简单的博弈问题,下面会提到。

2、证明策略

策略这种东西当然不能一股死脑筋的来记住,前人的策略只能借鉴而不能成为解决问题的全部。

一般证明策略为两种,正向推理和反向推理:正向推理也就是直接的推理,我们要充分利用已有的已被证明定理来构造证明。反向推理,我们可以先否定结论,然后反过来推出前提错误(一个命题的真值和它的逆否命题一样)。

我们从反向推理,来解决取石子的博弈问题:我们有15颗石子,A和B每个人只能从当中取出1~3颗石子,最后没有石子取的人失败。假设A先手,不论B怎么取A都可以胜利。

我们想要A一直胜利,那么最后一次B取完之后,还会剩下1~3颗石子被A一次取走。A想要让B留下1~3颗石子,那么在B最后一次取的时候,必须要给他留下4颗石子(如果我们留下了5~6颗石子,那么B就可以取到只剩4颗石子,A就会输)。那么我们怎么保证一定给B留4颗石子呢?那就是A在取的时候剩下5~7颗石子,那就可以直接取到剩下4颗。同理想要让A取的时候是5~7颗石子,那么必须让B取的时候是8颗棋子。那A就是从9~11颗石子中取,那给B留下12颗石子,那么A最开始取3颗石子,剩下12颗。

这就是反向推理的一种应用,我们发现我们将博弈分成了一次一次的推理。

把左边的命题当成P,右边的命题当成Q,这里所有的命题格式都是P→Q。不过左右两边箭头应该是双向的。不过我们就是这样把命题一个一个的推理下去才得出最终的结果。

五、结语

逻辑和推理当中还有许多东西我没有去挖掘,逻辑和证明在有的学校甚至专门开课,哲学,经济学,更不用提数学。我现在都后悔当年在读高中是没有看过逻辑学,不然辩论赛说不定能拿到更好的成绩。最后,我想要总结的是:逻辑和证明这一章给了我很多的思考,这一章才80页,我却看了将近两个月。最后跑到理学院老师那里点通了很多误解和迷津。逻辑学的思想建立起来后,后面的章节都会走起来相对要简单不少。致此。

离散数学学习心得(一)逻辑和证明相关推荐

  1. 【离散数学】第一章 —— 基础:逻辑和证明

    嗨喽,宝子们,好久没有更新了.首先声明,我绝对没有偷玩hhh,只是因为最近忙着写毕业论文,然后又重新温习离散数学,时间比较紧凑,这不就马不停蹄的来了嘛. 叮叮叮,这将是一个全新的专栏--<离散数 ...

  2. 离散数学及其应用_第1章_基础:逻辑和证明

    第1章 基础:逻辑和证明 1.1 命题逻辑 1.2 命题逻辑的应用 1.3 命题等价式 1.4 谓词逻辑 1.5 嵌套量词 1.6 推理规则 1.7 证明导论

  3. 模电学习心得(转载)_史蒂文森sun_新浪博客

    个人建议:认真分析几个典型电路,主要掌握晶体管的等效模型,以及在电路中怎么等效.其他的都很容易解决了.只要会等效了,模电就是完全是电路的内容.其实一点都不可怕,开始不要太关注乱七八糟的内容,抓住主要的 ...

  4. 计算机科学与技术学习心得(转载)

    计算机科学与技术学习心得 计算机科学与技术反思录 计算机科学与技术这一门科学深深的吸引着我们这些同学们,上计算机系已经有近 三年了,自己也做了一些思考,我一直认为计算机科学与技术这门专业,在本科阶段是 ...

  5. 好文章 强烈推荐计算机专业的看,“计算机科学与技术学习心得”

    计算机科学与技术学习心得 撰文 曾毅 声明: 1.本文集众前辈及恩师之经验于一文,由我执笔总结前辈所感而已.并非尽我所言,特别说明基于南京大学网友sir在南京大学小百合站点发表的文章<理论计算机 ...

  6. [转]verilog语法学习心得

    verilog语法学习心得 1.数字电路基础知识: 布尔代数.门级电路的内部晶体管结构.组合逻辑电路分析与设计.触发器.时序逻辑电路分析与设计 2.数字系统的构成: 传感器  AD  数字处理器  D ...

  7. 分享一下字符串匹配BM算法学习心得。

    字符串匹配BM(Boyer-Moore)算法学习心得 BM算法 是 Boyer-Moore算法 的缩写,是一种基于后缀比较的模式串匹配算法.BM算法在最坏情况下可以做到线性的,平均情况下是亚线性的(即 ...

  8. 分享云及人工智能的一些学习资源和学习心得

    很久没写新的东西了.这段时间除了适应新的工作,其他时间都献给了各种学习~ 在这个提倡终身学习的年代,面对急剧更新的IT行业,不学点云计算和人工智能啥的,总感觉会被时代抛弃. 所以,终于找到个空闲时间, ...

  9. 医用计算机基础学习心得,计算机基础学习心得.doc

    计算机基础学习心得 计算机基础学习心得一:计算机基础学习心得 当今社会,到处充满机会与挑战.知识是我们面对这一切的筹码,而计算机知识则更为重要.如何在本科函授这样一种形式下,学好计算机课程,这是摆在我 ...

  10. 学计算机这么课最大的收获是啥,计算机课程学习心得范文

    计算机网络系统是一个集计算机硬件设备.通信设施.软件系统及数据处理能力为一体的,能够实现资源共享的现代化综合服务系统,计算机网络系统的组成可分为三个部分,即硬件系统,软件系统及网络信息系统.下面是学习 ...

最新文章

  1. 论文返修与校对的经验教训
  2. 按计算机的地位划分计算机网络可分为,2010年全国自考计算机网络基本原理模拟试卷(三)及答案...
  3. 【谷歌推网页爬虫新标准,开源robots.txt解析器】
  4. S5PV210开发 -- 串口驱动开发
  5. php 集合安装,centos7安装php5.6报错集合
  6. 微信小程序云开发 mysql_微信小程序云开发学习笔记(一)云数据库
  7. C++ lower_bound 与 upper_bound 函数
  8. 创建运行时类的对象--Class.newInstance()
  9. sscom 中文显示 乱码_SSM框架中的中文乱码问题
  10. 冰冻三尺,非一日之寒。数据解析——xpath(2)
  11. java 企业号 临时素材_【fastweixin框架教程8】微信企业号临时素材管理
  12. 没有苹果开发账号,只有p12文件和mobileprovision文件进行打包
  13. 谈一下关于python-docx指定位置插入图片的故事
  14. SELECT数据查询例题4——分组查询
  15. 高德地图实现多天路线规划(途经点显示自定义内容)+轨迹回放(显示车牌)
  16. 使用mongoDB的一些新的(mongoDB报错解决)
  17. outlook邮箱显示一直启动中_win10outlook邮箱怎么设置开机自动运行 - 卡饭网
  18. WDF开发USB设备驱动教程(1)
  19. 虚拟自动取款机ATM设计(C语言)
  20. MyEclipse ci8破解教程,图文教你一步一步走向成功

热门文章

  1. python忽略错误继续执行_python能在错误出现之后再进行处理吗?
  2. android手表微信运动,华为手表(华为运动健康APP)终于能绑定微信运动
  3. a+aa+aaa+......+a......a(n个a)之和
  4. iOS中使用storyboard实现页面跳转,Segue详解及简单的数据传递
  5. Xcode12 在Segue下切换视图时不充满屏幕的问题
  6. matlab中simulink耦合线圈,基于AMESim和Matlab/Simulink的耦合振动台建模仿真
  7. Json文件格式化方法
  8. 我的世界jAVA如何变创造_我的世界怎么把石头变成空气
  9. 阻焊机器人系统_点焊机器人
  10. Java下载excel文件并且添加水印效果