语言求圆周率近似值改错_新证明解决了如何求无理数的近似值

原文:Kevin Hartnett,QuantaMagazine

日前,一份新鲜出炉的论文证明了近80年悬而未决的达芬-谢弗(Duffin-Schaeffer)猜想,让数轴上讳莫如深的部分再也不如表面看来那么遥不可及。

达芬-谢弗猜想的证明完美解答了从远古时代就困扰着数学家们的一个问题:类似

这样的无理数在什么情况下可以用例如
这样的简单分数来近似表达?此证明显示这一非常笼统的问题答案完全取决于一个公式计算的结果。

这篇论文的两个作者为牛津大学的詹姆斯·梅纳德教授以及蒙特利尔大学的迪米特利斯·科科洛博罗斯教授。梅纳德教授是这么描述该猜想的:“存在一个简单的判定条件,可以判断你能找出几乎所有数的近似值,或几乎找不到任何数的近似值。”

数学家几十年来一直怀疑这一简单判定条件是理解高精度近似值存在与否的关键,但是这一猜想始终无人能够证明。科科洛博罗斯和梅纳德证明的关键在于他们将这一数论问题成功转变成关于点线连接的图论问题来研究。

德州大学奥斯汀分校的杰弗里·瓦勒教授之前曾在这一猜想上贡献过很多成果。关于这份证明,他是这么说的:“选择这个研究方向在我看来需要很巨大的自信心,当然,他们完全有资格拥有那份自信。他们的证明非常美。”

数学以太

有理数是很容易理解的。它们包括所有整数和所有可以写成分数的数。

这种易于书写的特点意味着人类对有理数的了解要超过其它所有数。但实际上有理数是很稀有的存在。绝大多数的实数都是无理数,有着无限不循环的小数,不能表达为分数形式。在历史上,一些重要的无理数获得了属于自己的符号,如

等。剩下的甚至都不能被冠以名称。它们无处不在、但又无法触摸,就好像数学中的以太一样。

因此,“如果我们不能精确表达无理数,那么我们能近似到什么程度?“这样的问题就变得非常自然。这种数学技巧就是所谓的有理近似。例如,古代数学家发现圆周长和直径的虚幻比例可以用分数

来近似表达。之后的数学家又发现了一个同样简便但同时又更为精确的近似值

牛津大学的本·格林教授解释:“很难写下

的定义,人们通常取而代之的是寻找
的特定近似值,一种常见方法就是利用有理数来近似。”

933ea3512e77d1d73653b4ba0e80368a.png

1837年数学家古斯塔夫·勒热纳·狄利克雷发现了无理数用有理数近似时的误差大小法则。当然,只要你对于误差不是太在意,要找到各种近似值并不难,但狄利克雷的结果成功在分数、无理数和两者的误差之间建立起了直接的数学关系。

他的证明显示对于每一个无理数都存在无限多个分数可以越来越精确地近似表达该无理数。更确切来说,每个近似分数和无理数之间的误差不超过1除以分数分母的平方。例如,分数

之间的误差不到
。分数
之间的误差不到
。狄利克雷成功证明了随着分母越来越大,存在无限多的分数值和
越来越接近。

6277a1c7b32d9ed89a61d9d1cb78c368.png
拉马努金1913年的手稿内用355/113作为圆周率的近似值

蒙特利尔大学的安德鲁·格兰维尔教授解释:“总可以找到分数近似表达任一实数。使得误差不超过1除以分母平方。这是一个非凡优美的结果”。

在一定程度上,狄利克雷的发现是有理近似的一个狭义结果。它告诉你对于每个无理数,如果你允许任何整数做分母,且能容忍1除以该分母平方的误差值,那么你可以找到无数个近似分数值。但是如果你希望只从某些特定整数(无限)子集里取分母,例如只看所有质数,或是所有完全平方数?如果你希望误差小于

或任何你选择的数?在这些条件下你是否依然能找出无限个近似分数?

达芬-谢弗猜想试图在有理近似中构建一个尽可能基本的框架。1941年,数学家R·J·达芬和A·C·谢弗想象了下列步骤。首先,选出一个无限长的整数数列包括所有可能的分母,这个数列可以包括任何你想要的整数:所有的奇数,所有10的倍数,或是任选无限个质数等等。

然后,对数列上的每一个分母你都可以定义一个相应的误差值。直觉告诉你如果这个误差定义得越松,就越可能找到符合条件的近似值,反之则越难。科科洛博罗斯解释说:“只要误差不是太小随便怎么定义都没差。”

最后,在选定分母数列以及相应的误差数列后,你想要知道的是:随便取一个无理数,能不能找到无限多个符合条件的近似分数?

达芬-谢弗猜想提供了一个数学函数来进行判断。把你选择的参数丢进去,这个函数会出现两种结果。达芬和谢弗猜测这两种结果恰好对应于两种可能:或者你的数列可以在给出的误差值内得出几乎所有无理数的近似分数,或者你的数列几乎不能近似表达任何无理数。(这里的“几乎”非常关键,对于任何一组分母,总有可忽略的少量无理数能被近似表达,同样也总有可忽略的少量无理数无法被近似表达)。

梅纳德表示:“你要么成功得到几乎所有数的近似值,要么几乎得不到任何数的近似值。没有折中的选择。”

这个猜想的表达极为广义,概括了有理近似的一切细节。数学家们一直觉得达芬和谢弗提出的判定条件是正确的。但是,只确定这个函数的结果是两种情况的哪一种,就能完全确定是否能找到近似值的完整证明相当困难。

2efaa95196a7a4f262759225b4cd781d.png
迪米特利斯·科科洛博罗斯(左)和詹姆斯·梅纳德(右)在今年7月意大利举办的一次学会上公布了他们的达芬·谢弗猜想证明

重复计数

证明达芬-谢弗猜想其实在于理解你选出的每一个分母有多大覆盖力。为了看清这一点,可以思考一个简易版的问题。

假设你要计算0和1之间所有无理数的近似值,并可以用1到10做为分母。可能的分数很多:首先是

,然后是
,然后是
等,最后一直到
。但是这些分数并不都有用。

例如,分数

和分数
是相等的,而分数
则和
一样。在达芬-谢弗猜想之前,数学家亚历山大·辛钦已经提出了一个关于有理近似的一般性猜想。但是他的定理并没有考虑这些相等分数每个只能算一次这个问题。

格兰维尔评论道:“通常一年级数学不应该影响问题的结果,但是在这个情况下影响确确实实存在。“

因此,达芬-谢弗猜想增加了一个系数来表达每个分母可以获得的独特分数(或最简分数)数目。这个系数即以18世纪数学家莱昂哈德·欧拉命名的欧拉

函数。10的欧拉
函数值为4,因为0到1之间以10为分母的分数只有4个最简分数:

下一步就是找出每个最简分数可以近似表达多少个无理数。这当然取决于你愿意承受的误差大小。达芬-谢弗猜想允许你为每一个分母选择一个误差值。例如你可能要求分母为7的分数误差为0.02,或者你对于分母为10的分数要求严格一点,允许误差0.01。

一旦选好分数和误差,是时候开始撒网捕无理数了。在数轴上0和1之间标出你的所有分数,将误差想象为在每个分数两边张开的网。那些被网罩住的无理数都是可以被你的分母成功近似表达的数。剩下的最重要问题就是:你到底能抓到几个无理数?

0e2ca9e536dca0c4cb40dd5974def663.png

在数轴上任一区间内都存在无限个无理数,因此被抓到的无理数个数是不能精确定义的。数学家们更关心每个分数捕捉到的无理数占全部无理数的比例。他们用一种称为数集“测度”的概念来量化此类比例,打个比方,这就好像用总重量而不是数目来量化捕鱼总量。

达芬-谢弗猜想让你将所有近似分数捕捉到的无理数集测度加起来,并将其表达为一个无限项求和的公式。该猜想的核心提议就是:如果这个和趋向于无穷,那么你的近似值将捕捉到几乎所有的无理数,如果这个和有限,不管多大,你的近似值几乎没有抓住任何无理数。

讨论无限项求和是“发散”至无穷或是“收敛”于有限的问题在数学中经常出现。达芬-谢弗猜想的关键之处在于如果你想要知道一组分母和相应误差值是否能近似表达几乎所有的无理数,你唯一需要知道的就是这组分母相应的测度和到底发散还是收敛。

瓦勒对此是这么评论的:“说到底,不管你是用什么方法决定每个分母相应的精确程度,最终你成功与否完全取决于这个无穷数列求和是否发散。”

作“图”解答

你也许会想到:如果一个分数的误差区间和另一个分数的误差区间重叠呢?这种情况下把区间的测度相加不是重复计算了吗?

对于某些分母数列来说,这种重复计算的问题并不大。例如,数学家几十年前就证明了达芬-谢弗猜想对于所有质数组成的数列成立。但是对于很多其它可能的数列,重复计算是个很大的问题。这也是为什么数学家整整80年都没有证明这个猜想的最大原因。

两个分母捕捉到的无理数相互重叠的程度取决于两个分母之间有多少个公共质因数。举个例子,取分母12和35,12的质因数为2和3。35的质因数为5和7。换句话说,12和35不存在公共质因数,因此以12和35做分母的分数可以近似表达的无理数重叠并不严重。

但是换成12和20又会怎么样呢?20的质因数为2和5,与12的质因数有交集。因此,分母20的分数可以近似表达的无理数和分母12的分数可以近似表达的无理数之间存在显著重叠。在此类情况下,即数列中的数之间存在很多公共的小质因数,近似区间有大量重叠时,达芬-谢弗猜想的证明难度最大。

牛津大学的山姆·周解释:“当分母数列中存在很多共同的小质因数时,它们开始互相干涉。”

于是,证明猜想的关键就变成:对于一组拥有很多小公共质因数的分母,找出一种方法来精确量化它们可以近似表达的无理数集之间重叠的程度。80年来没人能做到这一点。而科科洛博罗斯和梅纳德通过一种崭新的视角成功解决了这一难点。

55f190d33fcc9aabf615d2add98f0e00.png

在这份新出炉的证明里,他们用分母构建了一张图,在图上用分母做顶点,顶点间如果存在公共质因数则用边连接。这张图的结构记录了每个分母可以近似表达的无理数集之间的重叠。虽然要直接算出这种重叠很困难,但科科洛博罗斯和梅纳德找到了一种用图论技巧分析该图结构的方法,并借此找到了他们所寻找的信息。

科科洛博罗斯表示:“这张图算是一种视觉辅助,是帮助我们思考这个问题的优美语言。“

科科洛博罗斯和梅纳德成功证明了达芬-谢弗猜想成立:如果你拿到一个分母数列和每个分母相对应的误差值,你只要算出每个分母对应的测度之和是发散至无穷还是收敛于有限,就能够决定这一数列能够近似表达几乎所有的无理数,还是几乎不能近似表达任何无理数。

这是一个极为优美的测试,它将有理近似的本质这一巨大问题简化为一个可计算的值。科科洛博罗斯和梅纳德的成功证明赋予这个测试一般性,并从而达成了数学领域最为罕见的成就之一:给某个领域的最基本问题画上句号。

格林教授是这么评论的:“他们的证明建立了充分必要条件。我想它标志着一个数学篇章的结束。”

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

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

python在不同层级目录import模块的方法

转自:https://www.cnblogs.com/luoye00/p/5223543.html 使用python进行程序编写时,经常会使用第三方模块包。这种包我们可以通过python setup install 进行安装后,通过import XXX或from XXX import yyy 进行导入。不过如果是自己遍写的依赖包…

谷歌翻译无法连接网络_window10无法连接网络

很多朋友都将电脑的系统升级到Win10,如果遇到了Win10系统无法连接网络该如何解决,下面就为大家介绍一下解决的方法。window10无法连接网络一、检查路由器1、重新启动(断电10秒钟) 无线路由器和猫(调制解调器),有时候是路由器的故障&#xff1…

php: +1天, +3个月, strtotime(): +1 day, +3 month

php: 1天, 3个月, strtotime(): 1 day, 3 month 比如,我现在当前时间基础上1天: strtotime("1 day"); 比如我现在,2014-05-01时间上 3个月 $s strtotime("2014-05-01"); $d strtotime("3 month", $s); 转载…

获取弹出的窗口_Win7系统如何获取设置everyone权限的问题

一位win7之家系统的小伙伴,想要在电脑系统中获取everyone权限,但是不知道该怎么做,对于Win7电脑如何获取设置everyone权限这个问题,小编觉得我们可以在电脑的计算机中找到相关的磁盘,打开磁盘属性然后在安全选项中进行…

异步请求中jetty处理ServletRequestListener的坑

标题起得比较诡异,其实并不是坑,而是jetty似乎压根就没做对异步request的ServletRequestListener的特殊处理,如果文中有错误欢迎提出,可能自己有所疏漏了。 之前遇到了一个bug,在Listener中重写requestDestroyed清理资…

Maven国内镜像 Maven阿里云镜像

<mirror><id>nexus-aliyun</id><mirrorOf>central</mirrorOf><name>Nexus aliyun</name><url>http://maven.aliyun.com/nexus/content/groups/public</url> </mirror> 转载于:https://www.cnblogs.com/a2b1/p/787…

华为h22h05服务器做raid_华为V5服务器 RAID控制卡(LSI SAS3008IR)

提供高速接口和模块LSI SAS3008IR的PCIe Core提供PCIe x8接口&#xff0c;每lane速率为8Gb/s&#xff0c;可以兼容x1、x2、x4配置&#xff1b;支持PCIe 3.0规格&#xff0c;兼容PCIe 2.x和PCIe 1.x。LSI SAS3008IR的SAS模块提供SAS功能&#xff0c;并定义支持的硬盘速率。LSI S…

通过tomcat日志定位错误

1、tomcat的安装路径下tomcat home下的common文件夹下的classes文件夹中创建log4j.properties文件&#xff0c;即 apache-tomcat-5.5.20\common\classes log4j.rootLoggerinfo,Console,Rlog4j.appender.Consoleorg.apache.log4j.ConsoleAppenderlog4j.appender.Console.layouto…

css加了固定定位就不显示内容_前端开发必备,学好”定位“向菜鸟说拜拜

众所周知&#xff0c;前端CSS中&#xff0c;盒模型、浮动、定位为必须掌握的三座大山。今天就来聊聊定位的那些事。定位是什么&#xff1f;先来看看哪些场景用到定位&#xff0c;如下图所示&#xff0c;凡是有盒子压住另一个盒子的地方都可定位&#xff0c;因为用浮动做不了&am…

vscode更换主题的插件_VScode 插件开发(三)主题

咱们上回书说道&#xff0c;安装完基础环境&#xff0c;我们要来玩自己的主题了1. 创建一个主题项目$ yo code选中 New Color Theme接下来照图中所选&#xff0c;完成项目创建(简单英语不做解释)打开项目如图2. 配置文件2.1 themes这个文件夹包含主题配置文件&#xff0c;可以新…

sql之引擎介绍

数据库引擎介绍MySQL数据库引擎取决于MySQL在安装的时候是如何被编译的。要添加一个新的引擎&#xff0c;就必须重新编译MYSQL。在缺省情况下&#xff0c;MYSQL支持三个引擎&#xff1a;ISAM、MYISAM和HEAP。另外两种类型INNODB和BERKLEY&#xff08;BDB&#xff09;&#xff0…

jquery查找ul属性不是hide,jQuery的ul显示/隐藏功能

Im trying to hide my divs which will have content in them when finished. I have a jsFiddle file and some of the coding is not complete, just wrote it very fast to give you an idea.I believe that the ul is making it not be created correctly.解决方案The html…

HttpContext

相关知识点&#xff1a;ttp://www.cnblogs.com/wujy/p/3264475.htmlHttpContext context HttpContext.Current; if( context ! null ) {// 在这里访问与请求有关的东西。 } 记录当前用户信息的线程当前线程是指与【当前请求】相关的线程。在ASP.NET中&#xff0c;有些线程并非…

mysql if 多个_MySQL使用IF语句CONCAT多个字段

语法不正确.你想使用CASE&#xff1a;SET loc_name Location;SET add_street Add Street;SET add_number 10;SET x_street_1 Street 1;SET x_street_2 Street 2;SET city City;SET state State;SET country Country;SELECT Concat(loc_name, \n, CASEWHEN add_number !…

IOS+Android马甲包封装上架!

目的 我们有自己的一个主网站平台&#xff0c;为了推广我们的主网站平台&#xff0c;我们需要长期制作大量马甲app&#xff0c;然后引导用户到我们的主网站游戏&#xff0c;所以&#xff0c;你制作的app的功能只给审核人员看到&#xff0c;只是为了应付审核&#xff0c;app上架…

软件工程概论课后作业01

1. 网站系统开发需要掌握的技术 ①java语言 Java语言体系比较庞大&#xff0c;包括多个模块。从WEB项目应用角度讲有JSP&#xff0c;Servlet&#xff0c;JDBC&#xff0c;JavaBean&#xff08;Application&#xff09;四部分技术。JDBC可做三件事情&#xff1a;与数据库建立连接…

mysql low_case_MySQL8.0的坑之lower_case_table_names

在安装了8.0.14之后&#xff0c;初始化的时候在my.cnf里设置了lower_case_table_names1&#xff0c;安装好了之后&#xff0c;启动报错&#xff1a;2019-01-28T13:24:24.91946308:00 0 [System] [MY-010116] [Server] /usr/local/mysql/bin/mysqld (mysqld 8.0.14) starting as…

php5.4 mysql connect_php5.4 Call to undefined function mysql_connect()

今天学习PHP中连接MySQL&#xff0c;使用mysql_connect()函数时&#xff0c;碰到以下错误&#xff1a;“Call to undefined function mysql_connect()”&#xff0c;PHP版本&#xff1a;5.4.29MySQL版本&#xff1a;5.5.28Apache版本&#xff1a;2.2.22解决方法如下&#xff1a…

Js slice()方法和splice()方法

1、slice(start,end) 从已有的数组中返回选定元素,参数start必填&#xff0c;end选填 <script>delArray();function delArray(){var workExp["早上","中午","下午","晚上"];var a workExp.slice(0,3);//早上&#xff0c;中午&am…

mysql 参数bug_MySQL 的这个 BUG,坑了多少人?

作者&#xff1a;腾讯数据库技术来源&#xff1a;cloud.tencent.com/developer/article/1367681▌问题描述近期&#xff0c;线上有个重要Mysql客户的表在从5.6升级到5.7后&#xff0c;master上插入过程中出现"Duplicate key"的错误&#xff0c;而且是在主备及RO实例上…