![应用密码学:原理、分析与Python实现](https://wfqqreader-1252317822.image.myqcloud.com/cover/378/52717378/b_52717378.jpg)
上QQ阅读APP看书,第一时间看更新
2.6 默比乌斯函数
默比乌斯函数由德国数学家默比乌斯(August Ferdinand Möbius)提出。在数论中,经常出现像欧拉函数这种定义在正整数集上的实值或负值函数,这类函数称为数论函数。当,且
和
互素时,有
。具有这种性质的数论函数称为积性函数(Multiplicative Function)。下面将介绍另外一个重要的积性函数,即默比乌斯函数。
定义2.6.1 默比乌斯函数(Möbius Function)
默比乌斯函数[9]:
![pg38a](https://epubservercos.yuewen.com/3B24BD/31309821707952606/epubprivate/OEBPS/Images/pg38a.jpg?sign=1739117771-gJ1JI7NHpwsWyjwZacEvANTBA3XRlJ11-0-2a8b99ee6e9f2f9fca1872b456464769)
根据默比乌斯函数计算可得前15个值,如表2-5所示。
表2-5 前15个默比乌斯函数值
![图片表格](https://epubservercos.yuewen.com/3B24BD/31309821707952606/epubprivate/OEBPS/Images/table_033e12c0-c5ec-4110-a9bc-bc024efab21d.png?sign=1739117771-8rFGLxAElC7Z8Q8Duh49K0pksUgJEbZ9-0-02a1f93b5cc6bad7bd855289a51a4a21)
例2.6.1 通过例子来解释一下默比乌斯函数是如何运算的。,由相同的素数所得,所以
。
也包含相同素数,所以
。而
,由不同素数所得,所以是
。
1 def isPrime(n) : 2 if (n < 2) : 3 return False 4 for i in range(2, n + 1) : 5 if (i * i <= n and n % i == 0) : 6 return False 7 return True 8 9 def mobius(N) : 10 if (N == 1) :return 1 11 p = 0 12 for i in range(1, N + 1) : 13 if (N % i == 0 and isPrime(i)) : 14 if (N % (i * i) == 0) : return 0 15 else : p = p + 1 16 if(p % 2 != 0) : return -1 17 else : return 1
定理2.6.1 默比乌斯函数的积性性质
假设和
没有公因数。进一步假设
是
个不同素数的乘积,
是
个不同素数的乘积。那么
就是
个不同素数的乘积,即:
![](https://epubservercos.yuewen.com/3B24BD/31309821707952606/epubprivate/OEBPS/Images/tx02590.jpg?sign=1739117771-1T5pN50fyENAnwkT30OMS6Ujq82ulTOP-0-a983841ff7ed56ba3f2baa494b2cab3f)
由定理2.6.1可知,;
,由于满足素数的平方能整除360 ,因此
。
那么欧拉函数与
有什么关系呢?它们之间的关系可以表示为:
![](https://epubservercos.yuewen.com/3B24BD/31309821707952606/epubprivate/OEBPS/Images/tx02604.jpg?sign=1739117771-puewkScdEyyl5Bxl44Vzw0m3veXJ4rvW-0-a23e5094cd061d1896db99cc17e94353)
其中为默比乌斯函数的和函数,且
,记作:
![pg39a](https://epubservercos.yuewen.com/3B24BD/31309821707952606/epubprivate/OEBPS/Images/pg39a.jpg?sign=1739117771-wXRwJ3RvvnsE1kZy8ljGqKO1rB2OCGcA-0-564229ca337fdf5724f7a0716bf17dc6)
例2.6.2 假设整数,则
,
,
,那么:
●
●
●
●
![](https://epubservercos.yuewen.com/3B24BD/31309821707952606/epubprivate/OEBPS/Images/tx02628.jpg?sign=1739117771-U0Jz2cDLCRBX1WLZuL3slyA7TLJ6UBr4-0-1c37ad38243fd6592f6286dabec40a93)
例如,,根据式(2-44),很容易可以算出:
![](https://epubservercos.yuewen.com/3B24BD/31309821707952606/epubprivate/OEBPS/Images/tx02639.jpg?sign=1739117771-oEo6AemBjQici5O2aglOTOVjYyfwNdRK-0-f11165b2db40cbe6634022779707d518)