文档章节

1和0.999...

xionghuiCoder
 xionghuiCoder
发布于 2016/04/12 13:43
字数 2368
阅读 76
收藏 3

无限循环数如何相加才能得到一个有限数的和?

这是芝诺悖论后又一个困扰着诸多数学家们的难题。在芝诺悖论中,一个人如果要过街,他首先走完总程的1/2,接着走完剩下1/2的1/2,以此类推,无穷尽也。几个月前有一个视频认为:

1 + 2 + 3 +….的和为-1/12,一时间被疯狂转载,网络上顿时掀起热烈讨论。

0.999...到底应该等于1吗

不过说到无穷数谜,大多数人第一次遇到的就是:0.999……无限重复下去,最后会等于1么?

从魔兽世界游戏中的留言板到安·德兰论坛,大家对这个问题的争论非常火爆。对于芝诺悖论,大多数人都觉得题中人最后会到达街对过。可同样的情形放到循环小数里,直觉就会告诉你0.999……怎么也不会等于1啊。光是看就知道0.999……比1小,但是差的却不多……大家都认为0.999……这个数只是不断接近目标,却永远也不会达到。

不过,他们的老师(包括我在内),会说:错,0.999……就是1。

想要说服人们站到我这边,我就要用下面的方法:

众所周知,0.33333……=1/3

两边同时乘以3得到0.999…= 3 / 3 = 1

如果这还不足以让你动摇,试试把0.999…乘上10,也就是将小数点向右挪了一位,所以我们得到了

10 x (0.999…) = 9.999…

现在把两边的烦人小数都去掉,我们在等式两边同时减去0.999……

10 x (0.999…) - 1 x (0.999…) = 9.999…- 0.999…..

得到了9 x (0.999…) = 9.

什么数乘以9会等于9?自然是1。

对于大部分人,这种证明方法就足够了。但是老实说,这套证明体系缺了点什么,也没有真正解决0.999……=1的不确定。事实上这种手段只是用了些代数上的小把戏,你不会真的以为1/3=0.333……吧?

比起相信1/3=0.333……,其实还有更可怕的:

1 + 2 + 4 + 8 + 16 +…?

省略号在这里的意思是相加过程会永远持续下去,每次相加的数字大小都是上一次的两倍。这么大的和毋庸置疑应该是无穷大了。但是你试试乘以2,会发生什么?

2 x (1 + 2 + 4 + 8 + 16 +….) = 2 + 4 + 8 + 16 +…

好像和原来的和差不多,只是(1 + 2 + 4 + 8 + 16 +…)前面多了个1,所以(2 + 4 + 8 + 16 +…)比(1 + 2 + 4 + 8 + 16 +…)小1,换句话说:

2 x (1 + 2 + 4 + 8 + 16 +…) - 1 x (1 + 2 + 4 + 8 + 16 +…) = -1

相减得到:

1 + 2 + 4 + 8 + 16 +…= -1

将越来越大的数字相加无限次,结果却等于-1?

更疯狂了来了,求下列无穷和:

1–1 + 1–1 + 1–1 +…

有人会这样理解:

(1-1) + (1-1) + (1-1) +…= 0 + 0 + 0 +…

除了上面这种和为0的观点,还有一种理念认为应该这样看待算式:

1 - (1 - 1) - (1 - 1) - (1 - 1) -…= 1–0–0–0…

结果和为1,到底是0还是1?还是“一半时间是0,一半时间是1?”最后的值是多少取决于你停在那里,但是无穷和是不会停的!

先不要着急下结论,我们先假设T是这个神秘的和:

T = 1–1 + 1–1 + 1–1 +…

两边同时取负

-T = -1 + 1 - 1 + 1 -…

我们注意到右边刚好是T-1,也就是说:

-T = -1 + 1 - 1 + 1 -…= T - 1

所以-T = T - 1,这个方程只有当T=1/2时才有解。一个由许多整数相加的无穷和到最后竟然神奇地出现了分数解?

你是不是还是觉得没有道理?但是包括意大利数学家格兰迪在内的一些人表示1 - 1 + 1 - 1 + 1 - 1 +…最后会出现分数解,许多时候,人们将1 - 1 + 1 - 1 + 1 - 1 +…称为格兰迪级数。在1703年发表的一份文章中,格兰迪认为这个发散级数的和应为1/2,这个不可思议的结论也代表了宇宙从无到有的造物过程,许多当时的著名数学家,包括莱布尼茨和欧拉都赞同格兰迪的计算,不过不包括他的证明过程。

实际上,0.999……之谜的答案还需要更深入的探索。你无须勉强同意我的代数解法,你完全可以坚持认为0.999…不等于1,而等于1减去一个无穷小的数。既然说到这里,0.333……同样不等于1/3,同样差无穷小的那么一点点。要证明这点需要一点力气,不过也不是做不到。在数学领域,非标准分析这门学科就是专门研究这种数字问题的。非标准分析理论由亚伯拉罕·罗宾逊在20世纪中期创立,也正是非标准分析的出现,人们才终于搞清楚了无穷数的概念。要研究无穷数,你不仅要研究无穷小数,还要研究无穷大数。

好吧,回到我们的问题上来,0.999…到底是什么?是1么?还是比1小无穷小的数?

现在揭晓正确答案:0.999……可以表达为:

0.9 + 0.09 + 0.009 + 0.0009 +…

这又是什么意思?其实看着让人厌烦的省略号才是真正的问题所在。如果我们有100堆东西,我们还是可以数得出具体数量。但是无穷多我们要怎么办?问题变得不一样了。真实世界绝不可能出现无穷多的“堆”。那么无穷和的数学值又是什么?答案是——除非我们给于一个值,否则不存在这样一个值。法国数学家柯西提出了这个伟大创新理念,他在19世纪20年代将极限这个概念引入了微积分。

伟大数学家哈代在《发散级数》一书中很好的解释了这个问题:

“除非符号分配被定义,现代数学家从来不会认为数学符号有‘意义’,即便是18世纪最伟大的数学家也不觉得定义符号是件琐碎的事情。现在的数学家们都没有定义的习惯:他们觉得写上“我们将X定义为Y”这么许多字相当不自然。”在柯西之前,大多数数学家都会问“1 - 1 + 1 - 1 +…等于几?”,他们不会问“如何去定义1 - 1 + 1 - 1 +…?”这种思维习惯让这些数学家陷入不必要的困惑和争论中。

随着你0.9 + 0.09 + 0.009 +…不断相加下去,最后的值会越来越接近1。最后这个无穷和会随着无穷的相加,最终到达1,并且永远留在1的位置。哈代则认为,这个无穷数应该被简单地定义为1,他也花了一番功夫证明这样定义不会造成其它地方出现什么大矛盾。

对于格兰迪级数1 - 1 + 1 - 1 +…,柯西的理论不管用了。用Lindsay Lohan的名言说就是:极限不存在!

崇尚柯西解法的挪威数学家Niels Henrik Abel在1828年写道:“发散级数是恶魔发明出的东西,任何基于发散级数的证明都是自取其辱。”而哈代的观点(也是我们今天的观点)更为宽容。对于某些发散级数,我们可以赋值,对于另一些发散级数,我们则不应该赋值。现代数学家会说如果要对格兰迪级数赋予一个值,那么就应该是1/2,因为在所有关于无穷和的理论中,但凡能够引起一些注意的,要么认为这个级数的值为1/2,要么像柯西一样拒绝赋值。1+2+3+4……这个级数的情况也很相似,这是一个发散级数,柯西会说这个级数没有值。但是如果真的要给这个级数一个值的话,-1/12可能是最好的选择。

0.999…这个问题之所以能引起如此大的争论,因为它与我们的直觉不符。我们希望任何一个无穷级数都恰好能够符合运算操作,所以好像0.999……需要等于1。另一方面,我们希望每个数字都有一串唯一的小数位数表示,这就与同样一个数既可以用1表示,也可以用0.999…表示相矛盾。两种愿望无法共存,所以必须舍弃其中一个。柯西用独一无二的十进制展开打开了一扇解决这个问题的窗户,在提出后的2个世纪里,这种解法的价值得到了充分证明。

虽然英语有时候使用两种不同字母串(例如,两个单词)来表示世界中一样相同东西的两种同义词,但是我们并没有因此产生任何困扰。同样的,两种不同的数字串表示同一个数字也不是什么天塌下来的事情。

0.999……等于1么?没错,0.999……确实等于1。前提是我们大家一致同意这个不断重复的无穷小数的意思就是1。

本文转载自:http://www.ithome.com/html/out/89635.htm

共有 人打赏支持
xionghuiCoder
粉丝 86
博文 34
码字总数 31340
作品 4
海淀
程序员
私信 提问
Gentle Introduction to the Adam Optimization Algorithm for Deep Learning

The choice of optimization algorithm for your deep learning model can mean the difference between good results in minutes, hours, and days. The Adam optimization algorithm is an......

火力全開
2018/12/04
0
0
简单解释Momentum,RMSprop,Adam优化算法

我们初学的算法一般都是从SGD入门的,参数更新是: 它的梯度路线为: 但是可以看出它的上下波动很大,收敛的速度很慢。因此根据这些原因,有人提出了Momentum优化算法,这个是基于SGD的,简单...

zenRRan
2018/01/31
0
0
基于Python-opencv2的目标定位--Aircv

Aircv是一款基于Python-opencv2的目标定位。 用法 import aircv as acimsrc = ac.imread('youimage.png') # 原始图像imsch = ac.imread('searched.png') # 带查找的部分 SIFT查找图像 print ......

匿名
2016/03/29
603
0
hadoop之 安全模式及SafeModeException

问题: hadoop启动的时候报错 HTTP ERROR 500 Problem accessing /nn_browsedfscontent.jsp. Reason: Cannot issue delegation token. Name node is in safe mode. The reported blocks 0 n......

技术小美
2017/11/12
0
0
Oracle中常用的to_Char用法详解

Oracle中常用的toChar用法详解(有FMT的详细列表) The following are number examples for the to_char function. The following is a list of valid parameters when the to_char functio......

旺仔520
2014/05/06
0
0

没有更多内容

加载失败,请刷新页面

加载更多

springmvc源码解析之@EnableWebMvc一

说在前面 本次介绍MvcNamespaceHandler。关注“天河聊架构”微信公众号更多源码解析。 springmvc配置解析 @EnableWebMvc这个注解干了什么,初始化RequestMappingHandlerMapping 先看下这个注...

天河2018
1分钟前
0
0
Druid连接池一个设置引发的血案【abandon connection, open stackTrace】

今天在一台配置很低的机器上运行批量更新的程序~~~ 大概跑了三十分钟~~~这配置~~~这程序~~~ 然后华丽丽的报异常了~~~ 具体异常是这样的, DEBUG: (BaseJdbcLogger.java:132) ooo Using Con...

时刻在奔跑
3分钟前
0
0
idea中配置xml不自动提示解决方案

1.打开设置File-->Settings(或者Ctrl + Alt + S)--->Languages&Frameworks-->Schemas and DTDS 2.选择右上角的“+”进入添加界面 其中URI是你xml文件里引用该xsd文件的地址,File是你本地的...

小橙子的曼曼
9分钟前
0
0
SpringCloud系列第04节之注册中心Eureka高可用

简介 Eureka Server 也支持运行多实例,并以互相注册的方式(即伙伴机制),来实现高可用的部署 即每一台 Eureka 都在配置中指定另一个 Eureka 地址作为伙伴,它在启动时会向伙伴节点获取注册...

吴伟祥
12分钟前
1
0
Logstash读取Kafka数据写入HDFS详解

强大的功能,丰富的插件,让logstash在数据处理的行列中出类拔萃 通常日志数据除了要入ES提供实时展示和简单统计外,还需要写入大数据集群来提供更为深入的逻辑处理,前边几篇ELK的文章介绍过...

运维咖啡吧
14分钟前
0
0

没有更多内容

加载失败,请刷新页面

加载更多

返回顶部
顶部