前言:
而今你们对“c语言整数实数怎么表示出来”都比较着重,你们都需要剖析一些“c语言整数实数怎么表示出来”的相关内容。那么小编也在网上搜集了一些关于“c语言整数实数怎么表示出来””的相关知识,希望大家能喜欢,朋友们快快来了解一下吧!本篇文章向大家介绍的内容是:“伯奇和斯温纳顿—戴尔猜想”。它是以“伯奇”和“斯温纳顿—戴尔”这两位数学家的名字来命名的问题。作为七大千年难题之一,许多人只知道它被悬赏百万美元寻求解答,对它的具体内容并不了解。本篇文章将会为大家详细讲解,相信看完后大多数人都能对它有更清晰的认识。
这是一个关于椭圆曲线的问题。椭圆曲线的重要性不用多说,已经证明的费马大定理就是通过确立椭圆曲线与数学的另一分支“模形式”的理论之间的一种联系——而得到的。
虽然这个猜想本身深埋在非常高深的数学丛林中,但我们可以通过一些低等的起点——计算直角三角形的面积公式去向它逼近。
有一个可以追述到古希腊的经典问题:给定一个正整数d,问你是不是存在边长为有理数(整数或分数)而面积恰好是d的直角三角形?
例如,在d=6时,三条边刚好可以表示成,3,4,5。当d=5时,也存在边长为有理数的直角三角形,它们分别为3/2、20/3、41/6。由于数是无穷无尽的,所以这个问题变得棘手起来。为了让这个问题有更多研究方法,数学家们将它与椭圆曲线联系了起来。
首先,他们假设x与y都是有理数且满足方程
y^2=x^3-xd^2(其中d为正整数,y不等于0)。然后令一个直角三角形边长为有理数a、b、c,面积为d。
两式结合,根据直角三角形面积公式,三角形三边长就可以表示为
|(x^2-d^2)/y|、|2xd/y|、|(x^2+d^2)/y。
同理x=1/2a(a-c),y=1/2a^2(c-a)
虽然结果看起来有些复杂,但都是简单的代数运算,你不需要花太多时间去验算这个结论,只需要理解这种命题的等价转换方式即可。
根据椭圆曲线的判别式Δ=-16(4a^3+27b^2),我们得出上式Δ=-16【4(-d^2)^3】=64d^6,它不等于零。所以这个方程的图像是一条椭圆曲线(在判别式中令a=-d^2和b=0)。
于是求出哪些整数d可以成为边长为有理数的直角三角形的面积的问题,就等价于在某种椭圆曲线上寻找有理点(即坐标是有理数的点)的问题,这就是这道千年难题需要研究的问题。
对于这个难题,这两位数学家处理的思路是对某种椭圆曲线上的有理点的个数进行计数。
因为这些有理点很可能是无穷的,所以对这些无穷集进行计数较有效的方法是,进行一系列的次级计数。而要理解这种记数方法,我们需要去了解一下有限算术。
用时钟计数:有限算术
我们知道时间是无穷无尽的(我们保持乐观态度,假设不存在最后一分钟),它将永远延续下去。但时钟发明者对分钟的计数却只用了60位数。他们的做法是,当时间到达59分钟时,重新从零开始计数。在数学上的表达就是以60为模对分钟进行计数。同样,他们以24为模对小时计数。
所以对于任意正整数M,我们可以进行以M为模的计数。进行这个计数所使用的数是0,1,2…M-1。在M-1之后,我们重新从零开始。
随便取一个正整数,以8为例。我们把这个范围内的所有正整数两两相加,只要得出的结果大于等于8,我们就减去8,直至结果小于8就是我们要的答案。
例如,在以8为模的算术中,
2+5=7,3+5=0,7+7=6
数学上的表达就是
2+5≡7(mod 8),3+5≡0(mod 8),7+7≡6(mod 8)
数学家们把这样的表达式称为同余式。上面式子中第一个读作“2+5以模同余7”。
除了加法,你同样可以对它做减法和乘法。例如它的乘法
2*3≡6(mod 8),5*7≡3(mod 8)
就是一般乘法运算结果减去8的倍数最后小于8即可。
减法,7-3≡4(mod 8)3-6≡5(mod 8)
它在做除法时,凡是模为素数,除法皆可行。对于合数模一个数除以另一个数在有限算术中并不总是可行的。(当然,原因是普通算术中,很多整数也并不能被另一个整数整除。)
虽然,很多人称模运算只是算术的一种有限性版本,但它仍然在许多情况中很有用。其中之一就是它为本文的这道千年难题对椭圆曲线上的有理点进行计数提供了一种方法。简单了解了有限算术,我们回到刚才提出的问题。
如何对无穷集进行计数
为了对椭圆曲线上的有理点进行计数,伯奇和斯温纳顿—戴尔对许多不同的素数p进行以p为模的类似计数。
也就是说,他们取不同的素数p,对满足同余方程
y^2≡x^3+ax+b(mod p)的整数对(x,y)的个数进行计数。
对任意给定的素数p,这种计数当然都是有限的,所以可以实际操作。
我们设Mp是以p为模的解的个数,即Mp是满足上式同余方程的以p为模的整数对(x,y)的个数。
例如,我们取椭圆曲线y^2=x^3-x和素数5。然后将其中所有整数对代入同余方程
y^2≡x^3-x(mod 5)
因为取的素数为5,所以x与y都是0到4的整数(参照前面讲的方法)。将x与y代入方程,我们容易得到这个方程的解一共7个。因此对这个同余方程,M5=7。(注意这里不是指M与5的乘积)
换言之,如果(u,v)是方程
y^2=x^3+ax+b的一个整数解,那么(u mod
p,v mod p)就是同余方程y^2≡x^3+ax+b(mod p)的一个解(其中u mod p 是用u来除以p的余数),是不是很好理解?
于是,如果在椭圆曲线上有一个有理点,那么每一个以素数p为模的同余方程就有一个解。
所以伯奇和斯温纳顿—戴尔认为:如果对于大量的素数,同余方程有着大量的解,那么它的原方程也有无穷多个有理数解。
接下来的问题是,你怎么样证明是不是有大量的这种同余式有着大量的解?
为了判定许多以p为模的同余方程是否有着大量的解,这两位数学家对一系列不断增大的L值计算了“密度函数” p/Mp的无穷乘积(其中p是素数且小于等于L,Mp是指以p为模的同余方程的解的个数,前面也讲过)。
他们观察了得到的数据——主要是上式密度函数的值在L增大时如何变化的图像。
这两位数学家认为:如果原来的椭圆曲线有无穷多个有理点,那么对于所有以素数p为模的同余方程有大量的解。也就是说,对于无穷多个素数,p/Mp的值远远小于1,因此这个无穷乘积算出来应该是0。他们认为这个论述倒过来也成立:计算p/Mp的无穷乘积,若发现它是0,那么这条椭圆曲线上就有无穷多个有理点。也就是说,这条椭圆曲线上有无穷多个有理点的充要条件是p/Mp的无穷乘积=0。
但是如何计算这个无穷乘积呢?在我另一篇文章中有详细讲解——如何将无穷乘积转化为无穷和,所以这里我们就直接跳过,来到结论。
对于任意实数s大于1,1/(1-1/p^s)的无穷乘积等同于1/n^s无穷和(其中p是素数,n是正整数),然后他们也开始尝试将前面式子的无穷乘积转化为无穷和。
结语:如果你看到这里依然感觉良好,欢迎关注我。若有什么疑问,可以尽情提出,因为篇幅原因且后面较难理解,所以余下部分将在下一章为大家讲解,谢谢支持!
标签: #c语言整数实数怎么表示出来