证明之圆的分割

圆的分割

“数学证明问题:圆上点连线分割区域总数的倍增推理”

既然我已经谈到了数学证明的本质,现在让我们回到本系列开始时的问题。圆上有n个点,我们用直线将这些点两两连结起来,希望能够表明这些直线所分割出的区域总数是 2 n − 1 2^{n-1} 2n1。对于n为1,2,3,4或5的情形,我们已经看出这是对的。为了一般性地证明这个陈述,我们很想找到一种令人信服的推理,能够说明圆上每增加一点,区域总数就增加一倍。这样的推理会是什么样的呢?

“观察分割圆形图形的模式:探索区域数量的规律”

脑子里无法立刻蹦出些什么来,那么我们可以从观察被分割的圆的图形来着手,看看能否从中发现某种模式并提炼概括。例如,圆上有三个点,就产生了三个外围区域和一个中心区域。圆上有四个点,就有四个外围区域和四个中心区域。圆上有五个点,就有一个中心五边形,五个三角形从中心指向外围,五个三角形嵌入这个五角星之中,于是又形成一个五边形,最后还有五个外围区域。因此,我们可以把4看作3+1,把8看作4+4,把16看作5+5+5+1。
这能起到什么作用吗?我们似乎还没能掌握足够多的例子,看出清楚的模式,所以让我们再来画出圆上有六个点的情形。下图显示了这种情况。这一回外围有六块区域。每一块都与一个指向中心的三角形相邻。这样的区域两两之间,各夹着两个小三角形区域,至此共有6+6+12=24块区域,还需要继续数位于中心的六边形内包含的区域。里面分成了三个五边形,三个四边形,还有一个中心三角形。所以看起来很自然地,区域总数是6+6+12+3+3+1。
在这里插入图片描述

“揭开分割圆形图形区域数量的谜团:超越翻倍规律的思考”

可是好像出了点什么错,因为结果是31。我们哪里疏忽了吗?事实上并没有:正确的序列开头几项是1,2,4,8,16,31,57,99,163。其实只要稍加深入思考,我们就能看出,区域总数不可能每次都翻倍。在刚开始时就有点麻烦,圆上0个点得到的区域总数是1而不是1/2,所以加上第一个点的时候区域总数就不是翻倍。尽管这种例外情形时常发生在0上,大多数数学家还是会认为这是个麻烦。但是,当n是个比较大的数时问题会更加严重,这时 2 n − 1 2^{n-1} 2n1显然会特别大。比如当n=20时 2 n − 1 2^{n-1} 2n1是524 288,当n=30时,结果是536 870 912。在圆上画30个点就会把圆分割成超过5亿个不同区域,这可能么?当然不可能。想象一下,在地上画一个大圆,在圆上打30个间隔不一的桩子,用很细的线把桩子两两相连。结果得到的区域数量确实比较大,但也不会大到难以想象的程度。如果圆的直径是10米,把它分成5亿块,平均每平方厘米里就会有超过600块区域。这个圆一定密密麻麻布满了线,但周围只有30个点,实际情况显然不是这样的。

“挑战直觉,揭示数学陈述的深层思考:从分割圆形到证明的重要教训”

我前面说过,数学家对待“显然”这样的词非常慎重。但在这个例子中,我们的直觉能够以坚实的论证来支持,归结如下。如果圆被分割成数量巨大的多边形区域,这些区域之间必然有大量的顶角。每个顶角处都是两条线的交点,和这个交点相联系的桩子,也就是两条线在圆上的端点有4个。我们在圆上选取这样的4个桩子,第一个桩子有30种可能的选择,第二个有29种,第三个有28种,第四个有27种。这意味着,选取4个桩子的方式共有30x29×28×27=657 720种,但是这样就没有考虑到,如果以不同的顺序选取了同一组桩子,就重复列入了相同的交点。选出同一组4个桩子共有4x3x2x1=24种不同方式,考虑到这一点,我们就能够算出交点总数是657 720/24=27 405个,根本不可能像536 870 912块区域的角的数量那样巨大。(实际上,30个点分割出的区域的真正数量是27 841。)
在这个让我们引以戒的故事中,包含了很多证明与证明数学陈述相关的重要教训。最明显的一个就是,如果不去小心地证明你所说的话,那你就有说错的危险。一个更积极一点的寓意是,如果确实努力去证明一个陈述,那你将能以全然不同而且更有意思的方式理解它。

总结

通过观察和推理圆的分割图形,我们探索了连接圆上点的直线所分割出的区域总数的规律。我们最初试图以翻倍的方式推断区域数量的增长,但在实际计算中发现了一个例外情况。进一步思考后,我们发现了交点的数量是一个更准确的指标。通过计算不同桩子组合的方式,我们得出了交点总数与区域数量的关系。这个关系揭示了区域数量不可能像直觉所认为的那样翻倍增长,而是与桩子组合的方式和交点数目相关。这个认识让我们警醒地意识到在数学证明中,我们需要小心论证,不能只凭直觉。通过深入思考和严谨证明,我们能够更好地理解数学陈述并发现其中更深层次的思考。这个故事提醒我们在证明数学陈述时的重要教训,同时也展示了数学的美妙之处。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:/a/385218.html

如若内容造成侵权/违法违规/事实不符,请联系我们进行投诉反馈qq邮箱809451989@qq.com,一经查实,立即删除!

相关文章

【程序设计竞赛】C++与Java的细节优化

必须强调下,以下的任意一种优化,都应该是在本身采用的算法没有任何问题情况下的“锦上添花”,而不是“雪中送炭”。 如果下面的说法存在误导,请专业大佬评论指正 读写优化 C读写优化——解除流绑定 在ACM里,经常出现…

【Java程序设计】【C00251】基于Springboot的医院信息管理系统(有论文)

基于Springboot的医院信息管理系统(有论文) 项目简介项目获取开发环境项目技术运行截图 项目简介 这是一个基于Springboot的医院信管系统 本系统分为管理员功能模块、系统功能模块以及医生功能模块。 系统功能模块:医院信管系统,…

Swift Combine 用 Future 来封装异步请求 从入门到精通十一

Combine 系列 Swift Combine 从入门到精通一Swift Combine 发布者订阅者操作者 从入门到精通二Swift Combine 管道 从入门到精通三Swift Combine 发布者publisher的生命周期 从入门到精通四Swift Combine 操作符operations和Subjects发布者的生命周期 从入门到精通五Swift Com…

【C语言】解析刘谦春晚魔术《守岁共此时》

今年的春晚上刘谦表演了魔术《守岁共此时》,台上台下积极互动(尤其是小尼),十分的有趣。刘谦老师的魔术不仅仅是他的高超手法,还有这背后的严谨逻辑,下面我们来用C语言来解析魔术吧。 源代码 #define _CRT…

[Python] 文件

这篇是Python基础语法的一个结尾了,还是可莉跟着大家一起学习哦~ 可莉将这篇博客收录在:《Python》 可莉推荐的优质博主主页:Keven ’ s blog 目录 一、文件是什么 二、常用的文件操作函数 1、打开文件 2、关闭文件 3、读取文件 read( ) …

JAVA设计模式之命令模式详解

命令模式 1 命令模式介绍 命令模式(command pattern)的定义: 命令模式将请求(命令)封装为一个对象,这样可以使用不同的请求参数化其他对象(将不同请求依赖注入到其他对象并且能够支持请求(命令)的排队执行…

jsp课程教学管理系统Myeclipse开发mysql数据库web结构java编程计算机网页项目

一、源码特点 JSP 课程教学管理系统是一套完善的java web信息管理系统,对理解JSP java编程开发语言有帮助,系统具有完整的源代码和数据库,系统主要采用B/S模式开发。开发环境为 TOMCAT7.0,Myeclipse8.5开发,数据库为Mysql5.0…

vue3-内置组件-Suspense

Suspense (实验性功能) <Suspense> 是一项实验性功能。它不一定会最终成为稳定功能&#xff0c;并且在稳定之前相关 API 也可能会发生变化。 <Suspense> 是一个内置组件&#xff0c;用来在组件树中协调对异步依赖的处理。它让我们可以在组件树上层等待下层的多个嵌…

最新Burp Suite入门讲解

Burp Suite的安装 Burp Suite是一款集成化的渗透测试工具&#xff0c;包含了很多功能&#xff0c;可以帮助我们高效地完成对Web应用程序的渗透测试和安全检测。 Burp Suite由Java语言编写&#xff0c;Java自身的跨平台性使我们能更方便地学习和使用这款软件。不像其他自动化测…

Offer必备算法06_位运算_十道力扣OJ题详解_由易到难

目录 位运算算法原理 ①力扣191. 位1的个数 解析代码 ②力扣338. 比特位计数 解析代码 ③力扣461. 汉明距离 解析代码 ④力扣136. 只出现一次的数字 解析代码 ⑤力扣260. 只出现一次的数字 III 解析代码 ⑥力扣面试题 01.01. 判定字符是否唯一 解析代码 ⑦力扣26…

STM32F1 - GPIO外设

GPIO 1> 硬件框图2> 工作模式 1> 硬件框图 2> 工作模式 C语言描述 /** * brief Configuration Mode enumeration */typedef enum { GPIO_Mode_AIN 0x0, // Analog Input 模拟输入 GPIO_Mode_IN_FLOATING 0x04, // input floating 浮空输入GPIO_Mode_I…

Linux第47步_安装支持linux的第三方库和mkimage工具

安装支持linux的第三方库和mkimage工具&#xff0c;做好移植前的准备工作。 编译linux内核之前&#xff0c;需要先在 ubuntu上安装“lzop库”和“libssl-dev库”&#xff0c;否则内核编译会失败。 mkimage工具会在zImage镜像文件的前面添加0x40个字节的头部信息,就可以得到uI…

【JAVA WEB】JavaScript--函数 作用域 对象

目录 函数 语法格式 示例 定义没有参数列表&#xff0c;也没有返回值的一个函数 定义一个有参数列表 &#xff0c;有返回值的函数 关于参数个数 函数表达式 作用域 作用域链 对象 基本概念 创建对象 1.使用 字面量 创建对象 2.使用new Object()创建对象 3.使…

Microsoft Word 超链接

Microsoft Word 超链接 1. 取消超链接2. 自动超链接2.1. 选项2.2. 校对 -> 自动更正选项2.3. Internet 及网络路径替换为超链接 References 1. 取消超链接 Ctrl A -> Ctrl Shift F9 2. 自动超链接 2.1. 选项 2.2. 校对 -> 自动更正选项 ​​​ 2.3. Internet…

java中事务的使用

文章目录 前言一、同一张表1.业务代码2.测试代码3.测试结果 二、不同表1.业务代码2.测试代码3.测试结果 总结 前言 本文将介绍在springboot中使用Transactional注解来完成对数据库事务的操作&#xff0c;保证数据一致性。 一、同一张表 1.业务代码 Controller Controller p…

二、ClickHouse简介

ClickHouse简介 前言一、行式存储二、DBMS功能三、多样化引擎四、高吞吐写入能力五、数据分区与线程级并行六、场景七、特定版本 前言 ClickHouse 是俄罗斯的 Yandex 于 2016 年开源的列式存储数据库&#xff08;DBMS&#xff09;&#xff0c;使用 C 语言编写&#xff0c;主要…

C++线程浅谈

本篇文章我们来介绍一下C 多进程 多线程的技术 1.为什要学习多线程 多进程 提高程序的性能&#xff1a;进程和线程可以使程序并发执行&#xff0c;从而充分利用计算机的多核处理器和资源&#xff0c;提高程序的执行效率和吞吐量。 实现复杂任务&#xff1a;通过将任务划分为多…

Acwing---842.排列数字

排列数字 1.题目2.基本思想3.代码实现 1.题目 给定一个整数 n&#xff0c;将数字 1∼n排成一排&#xff0c;将会有很多种排列方法。 现在&#xff0c;请你按照字典序将所有的排列方法输出。 输入格式 共一行&#xff0c;包含一个整数 n。 输出格式 按字典序输出所有排列方案…

Java安全 URLDNS链分析

Java安全 URLDNS链分析 什么是URLDNS链URLDNS链分析调用链路HashMap类分析URL类分析 exp编写思路整理初步expexp改进最终exp 什么是URLDNS链 URLDNS链是Java安全中比较简单的一条利用链&#xff0c;无需使用任何第三方库&#xff0c;全依靠Java内置的一些类实现&#xff0c;但…

读千脑智能笔记12_阻止人类灭绝

1. 阻止人类灭绝 1.1. 宇宙中唯一知道这些的物体&#xff0c;唯一知道宇宙存在的物体&#xff0c;是我们的大脑 1.2. 如果没有关于某个事物的知识&#xff0c;我们能说这个事物就一定存在吗&#xff1f; 1.2.1. 我们的大脑扮演着这样一个独特的角色&#xff0c;这很令人着迷…