全世界有3.14 % 的人已经关注了

数据与算法之美


当酒鬼止不住地说“我没有醉”、“再来一杯”的时候,他基本上已经醉得不行了。此时,他会说出一堆毫无逻辑的话,让旁人听了不知所云。这就是最为常见的酒鬼形象了。

直到某一天,死理性派也被放倒了。为了证明自己没醉,他利用死理性派引以为傲的严密思维,证明了一个逻辑上无懈可击的定理。不过,醉酒之后的死理性派把数理逻辑玩到了走火入魔的境界,却忘记了数学逻辑和生活语言的诸多不符之处。死理性派此时的逻辑虽然毫无漏洞,但在旁人眼中简直是荒谬到了极点。

看上去很假

死理性派证明的定理是:在酒吧里,一定有这样一个人,如果他在喝酒,那么酒吧里的每一个人都在喝酒。

这个定理看似荒谬,但在数学上看是完全正确的。死理性派郑重地给出了证明。在数理逻辑中,“如果 A 则 B”写成表达式就是“A → B”,只要 A 不成立或者 B 成立(任满足其一),整个表达式就是成立的。

在酒吧里,要么所有人都在喝酒,要么至少有一个人没在喝酒。如果所有人都在喝酒,那么不管对谁来说,“如果他在喝酒,那么所有人都在喝酒”这个命题都没有错,因为确实每一个人都在喝酒。如果至少有一个人没在喝酒,对这个没有喝酒的人来说,“如果他在喝酒,那么所有人都在喝酒”也是对的,因为事实上他没在喝酒,并没违反这一句话。无论是哪种情况,我们都能找到一个人,如果他在喝酒,那么酒吧里的每一个人都在喝酒。至此,定理也就证明到了。利用数理逻辑的符号,这个结论可以表示成:

∃x. (D(x)→∀y. D(y))

它总是成立的。这叫“酒鬼悖论”(drinker paradox),是由美国数学家雷蒙德·斯穆里安(Raymond Smullyan)在《这本书叫什么》一书中首次提出的,书上称它为“酒鬼原理”(drinker principle)。

一地逻辑

命题“A → B”中,A 称为前件(antecedent),B 称为后件(consequent)。上面提到过,只有在前件为真并且后件为假的时候,整个命题才是假的。“如果 2 是偶数,那么 2 是奇数”,这句话矛盾得一塌糊涂;但“如果 2 是奇数,那么 2 是偶数”呢?由于前件就不成立,“如果 2 是奇数,那么怎么怎么样”这句话不会有任何反例,因此这句话是对的!

大家或许想问,按此逻辑,无论“如果 2 是奇数,那么______”的空白处填什么,这句话都是对的咯?没错,在数学中,我们可以由一个错误的假设推导出任意命题。随便哪句话前面加上一个不可能成立的条件,整个句子就立刻成为了一个数学定理。要是每个人都这么做了,定理的数量就会爆炸性地增长。在经典逻辑里,有一个词叫做“爆炸原理”(principle of explosion),专门描述这种“矛盾可以推出一切”的缺德做法。

在数学中,接受爆炸原理的逻辑有经典逻辑(classical logic)、直觉主义逻辑(intuitionistic logic)等等。那就是说,还有不接受爆炸原理的逻辑?没错,这种逻辑就是为了消灭爆炸原理而生的。最晚至 1910 年,数学界就已经开始讨论这个问题了。直到 1976 年,秘鲁哲学家奎萨达(Francisco Miró Quesada)才给了这种逻辑一个名字,叫做“次协调逻辑”(paraconsistent logic)。

酒鬼悖论还会带来很多其它有意思的理论。比方说,酒鬼悖论有个加强版叫做“无限酒鬼悖论”(infinite drinker paradox):在无穷多个人里面,一定有这么一个人,如果他在喝酒,那么所有人都在喝酒。这也是一个逻辑上完全正确的定理,证明方法同上。

无限酒鬼悖论的价值就更高了,在无限酒鬼悖论的指引下,证明哥德巴赫猜想(Goldbach’s conjecture)有了一种全新的思路:由酒鬼原理,一定存在一个大于 2 的整数,如果它能够表示为两个素数的和,那么所有数都能表示为两个素数的和。如果试遍所有的素数组合,都不能表示出这个数,那么我们就找到了反例,推翻了哥德巴赫猜想;但若找出了把它分解成两个素数之和的方法,猜想便得证了。证明或推翻哥德巴赫猜想的任务就简化为了找到这样的数。

停,不对。坚持直觉主义逻辑的死理性派跳了出来。

你出来干嘛,你不是也接受爆炸原理吗,回去。

这次和爆炸原理又不一样了,直觉主义死理性派解释到。在经典逻辑中,一个命题和它的否定,至少有一个为真,这叫做“排中律”(law of excluded middle)。但在直觉主义逻辑的体系中,这就不一定了。解析直觉与谎言,推荐阅读《数学思考法》。

如果一个命题可以在有限的步骤里计算出真值,我们就说它是可判定的(decidable)。只有在命题及其否命题都可判定的时候,排中律才生效;而一扯上无限,排中律就不管用了。我们是无法在有限的步骤内判断是否无限个人都在喝酒或者至少有一个人没喝酒的,因而若酒吧中有无穷多个人,之前的定理就有争议了。也就是说,无限酒鬼悖论在传统逻辑中也是成立的,但在直觉主义逻辑中则是不可接受的。

说了这么多,死理性派的酒也醒了。他终于从自己的世界中走了出来,又重新开始说人话了。有趣的是,死理性派自己也觉得,周围人讲话都有逻辑多了 。

版权归原作者所有,转载仅供学习使用,不用于任何商业用途,如有侵权请留言联系删除,感谢合作。

精品课程推荐:

选购数学科普正版读物

严选“数学思维好物”

送给孩子的益智礼物   |   办公室神器

算法工程师成长阅读   |   居家高科技

理工科男女实用型礼物精选   


数据与算法之美

用数据解决不可能

长按扫码关注

为了证明自己有多能喝,理工科的学生竟做出这种事相关推荐

  1. 最多能喝多少啤酒(3)

    题目: 这是一道"美国FBI特别刑事组"招聘的测试题.这个组是专门对付那些穷凶极恶的凶残变态罪犯的--那些人间极品人渣!这需要执法者不仅具有超常的逻辑力,还需要具有比他们更变态,更 ...

  2. 咖啡每天最多能喝几杯

    现在,咖啡成了一种时尚饮料,咖啡馆越开越多,年轻人都喜欢去咖啡馆聚会,咖啡也成了不少家庭的必备饮品,然而,健康专家却提醒大家咖啡多饮无益. 健康专家建议喜欢喝咖啡的人和那些交际特多的人不要过多地饮用咖 ...

  3. 每瓶汽水一元,两个空瓶可以置换一瓶汽水,现有N元,最多能喝多少瓶?

    --------------------------------------------------------------------------------      这是一个很容易出错的题:假如 ...

  4. 适合学计算机学生喝的茶,学生喝什么茶能够提高记忆力

    学生喝什么茶能够提高记忆力2019-07-05 14:05:26文/宋则贤 记忆力在学生的学习生活中起到很重要的作用,记忆力好了,学生的学习成绩也会随之提高.学生可以喝龙眼枣仁茶,核桃苹果茶等茶饮,有 ...

  5. 惩罚孩子的10大智慧 [转]

    惩罚孩子的10大智慧 惩罚孩子的10大智慧 2009年11月04日 1.犯了错误就要惩罚       孩子犯了错误,无论有心还是无意,都要受到惩罚.比如:孩子不小心把杯子摔碎了,虽然他不是故意的,也应 ...

  6. 浅谈喝汽水问题————能用数学解决为什么要用递归

    犹记得小学年代学奥术就曾经被喝汽水问题支配,没有想到现在这么大了还要面对这道题. 题一: 1元钱一瓶汽水,喝完之后两个空瓶换一瓶汽水. 问:若你有N元钱,你最多能喝多少瓶汽水? 题二: 一个人买汽水, ...

  7. 计算机想转行金融 但是完全没经验,master是不是基本拿不到奖学金?研究经历只是指paper吗?美国理工科申请问题汇总...

    原标题:master是不是基本拿不到奖学金?研究经历只是指paper吗?美国理工科申请问题汇总 理工科的小伙伴,以下是理工科同学申请研究生时经常遇到的问题,总结如下,希望能帮到大家! 标准化考试类问题 ...

  8. 能否用计算机证明数学定理大全,那些教材中未给出证明的定理,到底能否使用?...

    那些教材中未给出证明的定理,到底能否使用? 初中几何知识体系,是基于<几何原本>中的公理体系建立的,可以看作是公理体系的子集,在教材编写中,为了教学方便,并没有直接照搬,而是有选择性地&q ...

  9. 软考报名资格审核要多久?证明材料要哪些?

    软考报名资格审核要多久? 一般来说,软考资格审核时间不超过1个工作日.当然,每个地区的具体情况都不一样.有些地区估计需要1-3个工作日.总之,为了顺利成功报名,大家应尽快报名,不要拖到最后一天. 软考 ...

最新文章

  1. json11库的使用
  2. python绘图实例-Python中turtle绘图学习笔记和实例
  3. 实例详解 EJB 中的六大事务传播属性--转
  4. mysql报错:Deadlock found when trying to get lock;
  5. 世界坐标系,相机坐标系和图像坐标系的转换(Python)
  6. linux跑caffe模型的步骤,Caffe初步实践——使用训练好的模型完成语义分割任务
  7. mysql的cpu高定位
  8. 爬虫03-url的格式
  9. 组合拍卖算法 应用例子
  10. FreeRTOS软件定时器
  11. 我是如何从通信转到Java软件开发工程师的?
  12. 阿里云张振尧:阿里云边缘云驱动5G时代行业新价值
  13. linux vi 删除行命令,在Vim/Vi中删除行、多行、行范围、所有行及包含模式的行
  14. 开机自动启动 Ubuntu iBus 输入法
  15. vanish_variables_3.0
  16. 如何通过自己的app打开twitter的指定功能
  17. 六、Oracle 同义词
  18. 单例模式 恶汉懒汉式
  19. 4.0高等数学五-积分与路径无关的条件
  20. PE格式:导入表与IAT内存修正

热门文章

  1. Angular SPA基于Ocelot API网关与IdentityServer4的身份认证与授权(一)
  2. 技术绩效考量:你们可能都做错了
  3. 用ASP.NET Core 2.1 建立规范的 REST API -- HATEOAS
  4. 这个拖后腿的“in”
  5. Visual Studio中使用Git Flow
  6. Python FastApi:快速建立docker容器/挂载共享文件夹/导入导出
  7. 计算机控制系统的试题,计算机控制系统练习题(1)
  8. Python3.6学习笔记(五)
  9. 【ArcGIS风暴】ArcGIS生成GlobeLand30土地利用数据集中国区域行列号shp格式对照图(附shp下载)
  10. 【GIS风暴】GIS拓扑关系原理详解