伯努利数是18世纪瑞士数学家
雅各布·伯努利引入的一个数。在数学上,伯努利数是一个
有理数数列,在许多领域都有很大的应用。一般地,n>=1时,有B(2n+1)=0;n>=2时,有公式B(n)=∑[C(k,n)*B(k)](k:0->n)可用来逐一计算伯努利数。伯努利数在数论中很有用。伯努利数还可用于费马大定理的论证中。
定义
在数学上,伯努利数是一个有理数数列,在许多领域都有很大的应用。其定义方式也是多种多样,最常见的有以下两种定义方式。
生成函数定义
设伯努利数为 ,他用很多种定义方式,其中利用
生成函数定义为:
这里 。,利用生成函数定义,我们可以计算前9项伯努利数。列举如下:
注意到,当 为奇数的时候,除了 以外,其余都是0。
(其中 在某些书本上采用 ,只需将生成函数改为 )
递归定义
利用递归定义伯努利数:
其中 表示当 时,取1,其余取0。 。
解释
一般地,n≥1时,有 ;n≥2时,有公式 可用来逐一计算伯努利数。伯努利数在数论中很有用。例如,对于佩尔方程-=-4(≡1(mod4)是素数),N.C.安克尼和E.阿廷曾猜想它的最小解满足,1960年,L.J.莫德尔证明了在≡5(mod8)时,S.乔拉证明了在≡1(mod8)时,上述猜想等价于伯努利数B((p-1)/2)的分子不被整除。伯努利数还可用于费马大定理的论证中。设n>3,如果伯努利数B,B,…,B(
重要应用
求前n项和
在求前n项和的方法上,利用Bernoulli生成函数的定义,我们可以得出一般的p次方前n项和公式,自然,在证明过程中伯努利数有重大的作用。
要求下式的前n项和:
如:
下面我们来推导一般公式:
对照系数即得:
证毕。
判别素数
德国数学家E.E.库默尔证明了:当为正规
素数时,费马大定理成立。不难计算当3<<100时,除开37,59,67以外,其余的素数都是正规素数。因此,在费马大定理的研究中,库默尔的结果是一项突破性的工作(见不定方程)。尽管有许多判别正规素数的法则,但是,是否有无穷多个正规素数,尚未解决。而非正规素数有无穷多个,早在1915年就被人们所证明。
根据等幂和与判别素数的充要条件,获得了伯努利数与判别素数的充要条件,并利用所得结果对居加猜想进行了讨论,证明了:若(P-1)≡-1(modp)成立,则P是素数或者P=P1、P2…PS是绝对伪素数,并且P||的分母,P|(P||+1)的分子;≡1(mod);1/-1/P是整数;在2≤2m≤(p/5-1)内必存在偶数2m,使得对每个均有-1|2m,P|的分母,P|(P+1)的分子。
c++代码
double Bernoulli(int x)//伯努利数
{
int k=x;
double B=0;
if(x==0)
{
return 1;
}
else
{
if(x>1&&x%2==1)
{
return 0;
}
else
{
while(k)
{
k--;
B += -1.0 * ( Factorial(x) * Bernoulli(k) )/( Factorial(x-k) * Factorial(k) * (x-k+1) ) ;
}
return B;
}
}
}
double Factorial(int x)//阶乘
{
if(x==1||x==0)
return 1;
else
return 1.0*x*Factorial(x-1);
}