毫不相干的三个关键词,没人能想到下面要写些什么。
本文是关于学习方法和思考方式的自我检讨。
1. 哥特巴赫猜想
从小学开始老师告诉我们有个伟大的猜想叫做哥特巴赫猜想,中国有位伟大的数学家陈景润提出陈氏定理解决了1+2的问题,终极命题是1+1=2,小学的时候大家内心会有两个声音:本能+逼格,本能告诉我们这尼玛也要证明,逼格告诉我们既然是大数学问题一定有着深刻的内涵,要装着很懂的样子向其它小朋友炫耀。问题到这结束的话也就是少儿心理的研究问题了,这不是本文所想要讲的。
其实哥特巴赫猜想后来我们也接触过,证明偶数等于两个素数之和,但是我们总会根深蒂固的认为它和1+1=2之间有某种关系,不停的为1+1=2的神圣地位辩护。实际上呢?哥特巴赫猜想的终极命题是1+1,不是1+1=2,1+1是什么意思,只是一种缩写而已,a+b在这里指一偶数可以是两个数之和,第一个数有a个质因子,第二个数有b个质因子,数学家们先证明了9+9……终于到了1+2,那么1+1显然就是哥特巴赫猜想(欧拉猜想)本身了。
对,这才是当初那个所谓的 全世界的大数学家都在证明1+1=2的故事。现在搜索1+1=2还是相同的故事。。
在这里我检讨自己,小学相信这一点是教育的问题,在学过欧氏几何初步和狭义相对论初步之后的现在,仍然相信它就是基本数学素养的缺失和论证能力的低下。因为这些理论都是相似的体系,提出一个公理或者公设,然后衍生这个体系的理论,欧氏几何的公理,狭义相对论的公设莫不如是,而数字运算体系呢,是皮亚诺公理所设计的体系基础上衍生的,和哥特巴赫猜想本身无关。这一小小的无关痛痒的问题,告诫自己,固有的如果是错的,危害是很大的,那么,尽量以求证的眼光去看待吧。
2. 尾递归
由于是c++语言入门编程,开始的思想完全被C++体系所绑定(这里顺嘴说一句,宣传语言无所谓,思想最重要的都是二逼),我指的绑定不是语法,而是一些问题的理解。比如尾递归,提到尾递归最常提的是尾递归优化,似乎尾递归天生是差的,必须优化为循环。
实际上呢,从scheme这一函数式语言来看呢,尾递归是迭代而非递归(当然很多语言并不支持尾递归,而是语法上支持循环,所以将尾递归优化为循环是提高效率的,但这无关理解迭代和递归的本质),而普通递归则是真正的递归,区别在于尾递归的过程无须扩展和追溯两部,而是维持一些状态间的不变量来以常数的空间存储计算过程。尾递归是实现迭代更接近人类思考模式的方式,当然,C系列语言学多了,对我而言就是python和C++和perl,现在要用循环来理解scheme的尾递归了。
这一案例告诉自己:1. 认为理解了的很可能是局限在当前条件下的
2. 人为的跳出去,多尝试,才会有更对的理解
3. 返回第一步 (:: //# 这段话就是一个尾递归,哈哈哈)
3. 湘潭孕妇案件
由于信息源的问题,我们了解的所有信息都经过太多的筛选和别有用心的媒体的修饰,无意对事件本身做任何评论,先看着不迟。
这里谈的是由此引发的另一点:
保大人还是保小孩
什么?你没听过?那说明你没看过电视剧。。。
就是这一个影视剧中为增强悲剧气氛而营造的谎言,竟然存留在我们的脑海中如此之久,从未怀疑,包括我。
实际上呢, 如果家属做出保小孩的决定,实际上剥夺了孕妇的生命,任何人包括自己无权剥夺他人生命,所以永远不存在保大人和保小孩的选择。实际上存在的命题是,医生提出方案A B C,A对孕妇的风险为0.5,对小孩0.5,B对孕妇风险为0.8,对小孩为0.4,C和B相反,此时让家属进行选择方案, 不会存在让孕妇致死的选择。更多的情况下,只要选择抢救或者不抢救救好了,因为抢救过程本身一般也是极为危险的,选择不抢救顺产也是可以的,这是家属的权利。
这一观念的深信到自觉荒谬告诉我:思考是一种能力,也是一种习惯,习惯是靠养成的,不断练习吧。写到这里想到另一个观点,思考和选择的能力比努力宝贵的多,努力本身是廉价的,当然对很多做不到努力的人来说,我也不知道该说什么,我认为还是思考的少选择的条件和勇气的丧失导致没有热情和动力,最终导致了不努力,而不是因为不努力而处于现状,因为努力不算是一个宝贵的品质,是一个必要的而已。
赘言如此多,感谢看到这里的每一个人,感谢你们看了我这些牢骚,但愿不是污染了你们的时间线。
高端
2014.8.16 于宿舍 等待 racket 运行时记
哥特巴赫猜想 尾递归 湘潭孕妇之后的自我检讨