0901-证明欧拉函数phi的积性

【写在前面】

一个数若既与 m 互质又与 n 互质,那么他便和 m*n 互质

完全剩余系:一个整数的集合,对 m 取模后,余数遍历了 0; 1; 2; 3; ……m 

欧拉函数:phi(n)-->不超过n且与n互质的整数的个数

特别的:phi(1)=1

现在我们需要证明phi(m*n ) = phi (m )*phi(n) 【m,n互质】

这个矩阵里列举了从1到m*n的所有数,很容易发现第一行里有phi(m)个与 m 互质的数,而一个数 r 若与 m 互质,则 k * m + r也与m互质,这是显而易见的

然后看任意一列,可以得出结论任意一列都是 n 的完全剩余系,(也就是说没有两个数他们对 n 取模后相等),那么任意一列都有phi(n)个与n互质的数,那么phi(n)*phi(m)便等于 phi(n*m)

所以为什么 任意一列都是 n 的完全剩余系呢?

首先我们假设有两个数对n取余后相等:k1*m+b = k2*m+b (mod n),那么我们可以改写为k1*m+b = t1*n+r ; k2*m+b= t2*n+r,两两相减则: (k1-k2)m = (t1-t2)n,又因为m和n互质,所以m不能提供n的因数,那么(k1-k2)就必然是n的倍数了,然后又因为k1和k2都是在0~n-1这个范围里的,所以任意两个相减都不会产生n的倍数,那么假设不成立,没有两个数对n取余后相等,证毕

 

一个关于欧拉定理的证明

### 欧拉函数的定义 欧拉函数 \( \phi(n) \) 定义为小于等于正整数 \( n \) 的所有与 \( n \) 互质的正整数的数量。形式化表示如下: \[ \phi(n) = |\{k : 1 \leq k \leq n, \gcd(k, n) = 1\}| \] 其中,\( \gcd(a, b) \) 表示两个整数 \( a \) 和 \( b \) 的最大公约数。 --- ### 欧拉函数的计算公式及其证明 #### 计算公式 对于任意正整数 \( n \),其素因数分解可以写成 \( n = p_1^{e_1} p_2^{e_2} \cdots p_k^{e_k} \),则欧拉函数可以通过以下公式计算: \[ \phi(n) = n \prod_{i=1}^k \left(1 - \frac{1}{p_i}\right) \tag{1} \] #### 公式推导 为了理解上述公式的由来,可以从集合的角度分析。假设我们有一个大小为 \( n \) 的集合 \( S = \{1, 2, \dots, n\} \),我们需要从中筛选出那些与 \( n \) 不互质的元素并排除掉。 1. **第一步:考虑单个素因子的影响** 假设 \( n \) 被某个素数 \( p \) 整除,则所有形如 \( kp \) (即 \( k \in \{1, 2, \dots, \lfloor n/p \rfloor\} \))的数都与 \( n \) 不互质。因此,在集合 \( S \) 中不与 \( n \) 互质的数的比例为 \( 1/p \)[^3]。 2. **第二步:多个素因子的情况** 如果 \( n \) 同时被多个不同的素数 \( p_1, p_2, \dots, p_k \) 整除,则需要利用容斥原理来精确计数哪些数与 \( n \) 不互质。最终得到的结果正是公式 (1) 所描述的形式[^4]。 通过以上两步推理可得欧拉函数的具体表达式。 --- ### 特殊情况下的简化公式 - 当 \( n = p \) 是一个质数时, \[ \phi(p) = p - 1 \] 这是因为除了 \( p \) 自身外的所有较小自然数均与其互质[^1]。 - 若 \( n = p^k \)(这里 \( p \) 仍是一个质数),那么 \[ \phi(p^k) = p^k - p^{k-1} \] 即从总数 \( p^k \) 减去能被 \( p \) 整除的部分数量 \( p^{k-1} \)。 --- ### 总结代码实现 以下是基于上述理论的一个 Python 实现例子用于求解给定数值对应的欧拉函数值: ```python def euler_phi(n): result = n p = 2 while p * p <= n: if n % p == 0: while n % p == 0: n //= p result -= result // p p += 1 if n > 1: result -= result // n return result print(euler_phi(10)) # 输出应为4 ```
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值