费马大定理的Python简单验证

来源 :电脑报 | 被引量 : 0次 | 上传用户:jaz23cn
下载到本地 , 更方便阅读
声明 : 本文档内容版权归属内容提供方 , 如果您对本文有版权争议 , 可与客服联系进行内容授权或下架
论文部分内容阅读
  在Python的学习过程中,通过编写程序来解决一些实际问题,也是一种乐趣。在数学史上,关于数论的著名世界难题很多,了解数学家们如何破解这些难题让人深受启发和鼓舞。今天我们就用Python来简单地验证费马大定理。

一、费马大定理简介


  费马大定理,又称费马问题,是数论中最著名的世界难题之一。
  概括来说就是当整数n>2时,关于x,y,z的方程xn+yn=zn,无正整数解。
  你看这个方程是不是和求勾股数的类似,只是2次方变成了n次方,我们后面的验证,也是根据这个思路进行的。

二、创意来源


  看到这个定理内容,就想到了勾股数,我们用Python编写程序,在一定取值范圍内验证费马大定理。
  如果想了解更深入的知识,大家可以参考相关资料。今天我们利用Python只做简单的验证。

三、设计思路


  根据《趣味数学——勾股数》一文的分析,勾股数是平方,这里就变成了大于2的正整数,程序设计不难,验证的范围越大,幂次越高,时间复杂度会几何级数增大,大家可以自行测试。

四、程序设计


  1. 费马大定理:
  根据勾股数的例子,我们不难写出Python程序。代码如图1。



  程序中有三重for循环,外层循环,即是输入的最大范围,然后再确定指数幂,在1~n整数范围内逐个验证,如果有满足条件的x,y,标记s=1,然后输出屏幕,否则继续验证,如果s=0的值没有改变,即没找到任何满足条件的数,则输出无整数解(图2)。



  2. 时间复杂度(等级考试四级内容)
  在循环的开始和结束,加上计时器,测试发现,指数为3时,在100范围内耗时大约0.28秒,200范围内耗时1.94秒,500范围内耗时36.28秒。而指数为4时,100、200、500范围内分别耗时0.39秒、1.92秒、60.62秒。随着数值的增大,需要的时间也更长(图3)。
  时间复杂度就要根据你输入的范围决定了。比如100,那时间复杂度即为100万。
  如果范围再增大,则时间复杂度也会增大,需要的时间就会更长。

五、测试与改进


  通过测试,在一定范围内,均得到了验证,但数值过大时,用时较长。当然我们要证明一个定理,不可能把所有值都验证,还需要理论上的证明。
  因此费马大定理程序,可以利用pow()函数进行改进,减小时间复杂度(图4)。



  pow(x,y)函数表示的是xy,0<y<1,即是开方运算。开n次方根的值取整与其相等,则说明这个值为整数的n次方。将程序修改为pow(pow(x,n)+pow(y,n),1/n)。运行结果是一样的(图5)。





  历经多年,经过多位数学家的研究和证明,费马大定理得到了一步步的成果。《中国数学会通讯》1987年第2期据国外消息报道,费马猜想近年来取得了惊人的研究成果:格朗维尔和希思·布龙证明了「对几乎所有的指数,费马大定理成立」。即若命N(x)表示在不超过x的整数中使费马猜想不成立的指数个数,则证明中用到了法尔廷斯(Faltings)的结果。另外一个重要结果是:费马猜想若有反例,即存在x>0,y>0,z>0,n>2,使xn+yn=zn,则x>101800000。直到1994年10月英国数学家安德鲁·怀尔斯(Andrew Wiles)终于证明了费马大定理,为这个从1637年至今的数学谜题画上了圆满的句号。
  我们这里只是做个简单的、基本的验证,希望大家能发挥自己的智慧和力量,进一步研究和探讨,找到一个更好的算法,来证明费马大定理!
其他文献
半年前给你们推荐的金老虎膏还记得吗?当时师姐是扭伤后用的,效果好到我马上写了一篇反馈给你们。然后陆陆续续有小可爱来找师姐要优惠券,想着有机会再给大家薅一波福利,所以看着最近优惠券又回归了,师姐马不停蹄来通知大家了!药效渗透,根治酸痛  泰国金老虎膏应该算是小有名气,国内很多武打明星都带过货,而且去泰国旅游也是必带伴手礼之一。因为工作原因肩颈酸痛,师姐用过不止十款止痛膏,泰国金老虎膏算是我用过效果前
期刊
隨着次世代3A大作对GPU性能的需求不断提高,新一代“Ti”级显卡NVIDIA RTX 3080 Ti也应运而生,带来新的4K发烧游戏体验。下面我们就一起看技嘉魔鹰GeForce RTX 3080 Ti GAMING OC 12G(以下简称技嘉魔鹰RTX 3080 Ti)的实测表现吧。7热管风之力3风扇散热系统,RTX 3090同款设计  技嘉魔鹰GeForce RTX 3080 Ti GAMIN
期刊
在Word中编辑文档时,很少有一篇文章从头到尾都使用同一页眉页脚的,那么如何来设置不同的页眉页脚呢,只要使用“分节符”就可以完成这个操作。
期刊
Room Tour、Desk Tour(房间分享、桌面分享)都是视频分享时代非常热门的话题,作为学习、工作的核心场景,即使只有1㎡的桌面,我们也每天在上面做着许许多多的事。桌面空间既承载了许多的日常事务,也是每个人对待工作、学习的不同方式和态度表达。小空间大学问,当然值得分享了,也是大家都喜欢看这类内容的原因了。  今天,就让我们再一次“走近编辑部”,看看总是在创造各种优质内容的编辑们,桌面上都有
期刊
由于功耗更低,AMD笔记本相对更凉爽  Q:牛大叔,我非常赞同你在文章中提到的一些观点,比如“不要痴迷于功率释放,应该多关注体验和感受得到的东西”。我最近想买台轻便一点的机型,夏天了,我的主要需求就是“用起来凉爽”。另外我很纠结选AMD平台还是英特尔平台——英特尔的轻便本处理器虽然核心数量少,但显卡性能要好不少,我要玩《英雄联盟》,对显卡还是有要求的。  A:如果你的主要诉求是“用起来凉爽”,那么
期刊
健身已经成为很多人生活的一部分,運动过后的放松也成为了不可忽视的话题。通过高频冲击来缓解肌肉紧张、放松身体的筋膜枪是近期健身群体中热度最高的产品。菠萝君是国内较早生产筋膜枪的品牌,我们之前已经体验过BOOSTER MINI2、BOOSTER U1等产品,其丰富的功能、舒适的按摩体验获得了不错的评价。今天我们要体验的是来自菠萝君的新品——BOOSTER Q1,这款产品有何卖点,适合哪些用户呢?曲面流
期刊
国家对于护眼灯有明确的标准,国A级是达标,国AA级则是最高标准,两者的区别在于照度不同,国AA级要求在距离灯光核心区域50cm范围内照度应达到300LX,在距离灯光核心区域30cm范围内应至少达到500LX。若是台灯照度不够的话,就会影响使用者的视力,且专注力也会不集中。所以在选购护眼台灯时,一定要认准了国AA级产品。航嘉护眼台灯参考价格:169元  这款产品除了符合国AA级标准之外,在灯头部位还
期刊
为了反击AMD ZEN3架构锐龙5000系列,Intel终于在今年3月30日正式解禁了第11代酷睿台式机处理器产品家族的性能数据,不过从当时首发测试的情况来看,玩家发现了一些比较尴尬的情况,那就是第11代酷睿在某些方面的性能居然退步了。那么,对于追求旗舰级性能的玩家来讲,目前要用8核旗舰U装机的话应该怎么选呢?是AMD銳龙7 5800X还是Intel酷睿i9 11900K?且看我们详细的分析。升级
期刊
所谓音频可视化,也就是让物体随音量的变化而高低起伏,在After Effect等软件里几乎是一个“一键化”的操作,但如果我们想要在3D场景中重现这一效果,就需要动一番脑筋了。本期我就来教大家如何使用Blender几何节点,来实现这个挺酷的效果。第一步:利用空物体的位置信息映射音乐音量  首先,我们新建一个空物体,并给它的位置信息打上一个关键帧,然后切出一个新的窗口,打开“曲线编辑器”,选中空物体时
期刊
站长点评:灯效是个很神奇的配置,喜欢的用户对它趋之若鹜,不喜欢的用户对它嗤之以鼻。站长觉得存在即是合理,大家在装机时按需选择就行。好像很久没给大家推荐“光污染”主机了,本期站长就给大家推荐一款外观好看、性能又给力的“光污染”主机,供大家参考。  没错,站长又推荐锐龙7 5800X了,这确实是目前高端市场上最值得购买的一款8核处理器。产品拥有8核心16线程的规格,3.8GHz~4.7GHz的核心频率
期刊