初等数论/數論函數

来自testwiki
跳转到导航 跳转到搜索

数论函数

数论函数是指定义域为正整数的函数。比如阶乘n!,约数个数d(n)

约数个数函数

约数个数的计算公式1:

d(n)=d|n1

这种方式是求出约数个数最朴素的方式,也是最繁琐的方式,因为这就是约数个数的定义。我们一般用下面说的公式2来计算约数个数:

n=i=1kpiαi,则d(n)=i=1k(αi+1)。其中pi是素数,αi均为正整数。

这个公式很好推导,只是运用了一些简单的乘法原理。对于任意一个n的素因子pi,我们可以选择pi0,pi1,,piαiαi+1种情况种的一个来作为一个n一个约数的约数。由乘法原理,就可以推导出公式2。这个公式在计算约数个数时应该是最常用、最方便、最快速的。尽管它仍然很繁琐。

约数和函数

约数和的计算公式1:

σ(n)=d|nd

没错,这就是约数和的定义。计算约数个数一般也用下面的公式2:

n=i=1kpiαi,则σ(n)=i=1k(j=0αipij)

这里我们给出详细的推导过程。

首先我们考虑当n只有两个素因子时的情况。设这两个素因子为p1,p2,且次数分别为α1,α2。如果我们选择p1ap2b作为n的标准分解形式,那我们先定死p2b不动,那么标准分解形式种含有p2b的约数的和应该为i=0α1p1p2b

同样地,对其它p2k做其它相同的事,再将i=0α1p1作为公因式提取出来,就可以得到:

σ(n)=i=0α1p1i=0α2p2

现在,我们使用上面这种简化版的问题的结论,将其推广,就可以得到公式2。

欧拉函数

欧拉函数定义(公式1): φ(n)=gcd(d,n)=11

从上面的式子可以看出,欧拉函数计算的是在小于n的正整数中与n互质的数的个数。公式2如下:

n的标准分解形式是n=i=1kpiαi,则φ(n)=ni=1kpi1pi

由这个数论函数可以推导出费马-欧拉定理,再推出著名的费马小定理。先看欧拉定理。我们定义一种数组叫做模n的简化剩余系(以下简称缩系),其中含有φ(n)个元素。在这些元素中任意取两个数都不模n同余,且每个数都与n互质。

假设有一个模n的缩系A={a1,a2,,aφ(n)},则对于一个正整数a满足gcd(a,n)=1gcd(aai,n)=1,i{1,2,,φ(n)}。故B={aa1,aa2,,aaφ(n)}也是一个模n的缩系。所以i=1φ(n)aaiaφ(n)i=1φ(n)aii=1φ(n)ai(modn)。因为缩系里的每一个元素都与n互质,所以它们的乘积也与n互质。所以我们可以得到aφ(n)1(modn)

这就是费马-欧拉定理。不难发现n=p时,φ(p)=p1,即费马小定理。