基于质因子分解过滤与线性筛法递推,直观求取互质个数 φ(n)
欧拉函数 (Euler's Totient Function),记作 $\phi(n)$,表示在 $[1, n]$ 中与 $n$ 互质($\gcd(i, n) = 1$)的正整数个数。它是数论的核心工具之一,广泛应用于 RSA 加密及同余幂降幂操作。
根据唯一分解定理,任何大于 1 的整数 $n$ 可表示为 $n = p_1^{c_1} p_2^{c_2} \cdots p_k^{c_k}$。其欧拉函数的通式为:
当 $p$ 为质数时,$\phi(p) = p - 1$。由于欧拉函数是积性函数,若 $\gcd(a, b) = 1$,则 $\phi(a \cdot b) = \phi(a) \cdot \phi(b)$。
欧拉定理 (Euler's Theorem):若正整数 $a$ 和 $n$ 互质(即 $\gcd(a, n) = 1$),则:
当 $n$ 为质数 $p$ 时,$\phi(p) = p - 1$,定理退化为费马小定理 $a^{p-1} \equiv 1 \pmod p$。