理解 Sigma 函数:因子、乘法性与公式推导
一文看懂 Sigma 函数:因子分解的终极威力!
σ(n) 完全解析:为什么求和函数能“自动”变成乘积?
数学之美:Sigma 函数的推导、公式与 Python 实现
从几何级数到质因数:Sigma 函数的魔法公式大揭秘
搞懂 σ(n) 的那一天,我看到了数学的秩序
为什么 σ(n) = 乘积?带你走进数论的核心思想
Divisor 终极指南:Sigma 函数推导 + 代码 一篇搞定
Sigma 函数,记作
,表示一个整数所有正因子的和。
例如 12 的因子有 1、2、3、4、6、12,因此
。
本文解释什么是 Sigma 函数、为什么它满足乘法性、如何从质因数分解推导出通用公式,并给出高效的 Python 实现。
可除性符号
在数论中,符号 “|” 表示“整除”。

因此表达式
的意思是“对所有能整除 n 的 d 求和”。
质因数分解与因子的结构
任意正整数
都可以唯一写成:

它的一个因子必须从每个质数的指数中“选择”一个:

所有因子结构的规律都来自这个事实。
关键性质:Sigma 函数是乘法性的
当两个整数互质时,Sigma 函数满足:

原因是:若
和
的质因数互不相同,
那么
的每个因子都能唯一写成:

因此对所有因子求和可以写成二重求和:

接下来把二重求和“拆开”。固定某个
,则:

再对所有
求和:

这就证明了 Sigma 的乘法性。
质数幂的 Sigma 公式
利用乘法性,只需计算
。
其因子为:

这是一个几何级数:

把所有质因数幂的贡献相乘,就得到通用公式:

这就是任意正整数的因子和公式。
示例:计算 σ(12)
质因数分解:

分别计算:


相乘:

Python 实现:高效的 Sigma 函数
以下是基于质因数分解与乘法性的高效Python实现,时间复杂度约为
。
def sigma(n: int) -> int:
"""高效计算因子和函数 σ(n)。"""
total = 1
x = n
# 处理质因数 2
count = 0
while x % 2 == 0:
x //= 2
count += 1
if count > 0:
total *= (2 ** (count + 1) - 1) // (2 - 1)
# 处理奇质数
p = 3
while p * p <= x:
if x % p == 0:
count = 0
while x % p == 0:
x //= p
count += 1
total *= (p ** (count + 1) - 1) // (p - 1)
p += 2
# 若剩下的是质数
if x > 1:
total *= (x**2 - 1) // (x - 1)
return total
结语
Sigma 函数展示了因子结构的优雅与质因数分解的力量。通过理解乘法性与几何级数求和,我们得到一个漂亮的闭式公式,并能编写高效的计算程序。有了理论与代码,你就能深入探索更多数论中的算术函数了。
数学
- 数学之美: Sigma 函数的推导公式与 Python 实现
- 教孩子编程: 证明根号2是个无理数的两种方法(反正法/几何无限下降法)
- 机器学习(最优化)根本数学公式: arg_max_{x∈X} F(x)
- ChatGPT (3.5和4) 解2023年高考数学题
- [答案] 数学 × 程式编写比赛 (第八回) - 4位数的电子显示器
- 数学证明 0.9 ... 无限循环等于1
英文:Understanding the Sigma Function: Divisors, Multiplicativity, and the Formula
本文一共 631 个汉字, 你数一下对不对.上一篇: 在罗马的最后一晚吃了顿中餐, 好便宜
下一篇: 剑桥科技园有微软(研究院)、AMD和树莓派