欧拉函数为什么是积性函数

以下全文转载自 http://www.cnblogs.com/372465774y/archive/2012/10/16/2726282.html

Update:本人根据评论进行了一些小修改。

函数的积性即:若m,n互质,则φ(mn)=φ(m)φ(n)。

//  下面是百度上找的错误证明
由“m,n互质”可知m,n无公因数,所以φ(m)φ(n)=m(1-1/p1)(1-1/p2)(1-1/p3)…(1-1/pn)·n(1-1/p1')(1-1/p2')(1-1/p3')…(1-1/pn'),//这里已经用了计算公式,而计算公式是需要先有积性前提才推导的

其中p1,p2,p3...pn为m的质因数,p1',p2',p3'...pn'为n的质因数,而m,n无公因数,
所以p1,p2,p3...pn,p1',p2',p3'...pn'互不相同,
所以p1,p2,p3...pn,p1',p2',p3'...pn'均为mn的质因数且为mn质因数的全集,
所以φ(mn)=mn(1-1/p1)(1-1/p2)(1-1/p3)…(1-1/pn)(1-1/p1')(1-1/p2')(1-1/p3')…(1-1/pn'),
所以φ(mn)=φ(m)φ(n)。

查了很多资料会证明了: 
// 证明:
  在证明前先了解下以下知识:
  (a,b)代表最大公约数,[a,b]代表最小公倍数
  m|(a-b) <=> a≡b (mod m)
  a=pm+r  (0<=r<m)
  b=qm+r  (0<=r<m)
  由此可以推出:
  性质1:a≡a(mod m),(反身性) 
   这个性质很显然.因为a-a=0=m·0。 
  性质2:若a≡b(mod m),那么b≡a(mod m),(对称性)。
  性质3:若a≡b(mod m),b≡c(mod m),那么a≡c(mod m),(传递性)。
  性质4:若a≡b(mod m),c≡d(mod m),那么a±c≡b±d(mod m),(可加减性)。
  性质5:若a≡b(mod m),c≡d(mod m),那么ac≡bd(mod m)(可乘性)。
   证明 :m|(a-b) , m|(c-d) 设 a-b=km c-d=lm (ac-bd)=klm^2+(b+d)m =>m|(ac-bd)  
  性质6:若a≡b(mod m),那么an≡bn(mod m),(其中n为自然数)。
   证明 : m|(a-b) => m|n*(a-b) 
  性质7:若ac≡bc(mod m),(c,m)=1,那么a≡b(mod m),(记号(c,m)表示c与m的最大公约数)。
   证明 : m|c(a-b) d=(m,c)=>m/d|(a-b) => a≡b(mod m/d)=>当 d=1时 即(c,m)=1上面结论成立
  性质8:若a≡b(mod m),那么a的n次方和b的n次方也对于m同余   
   证明 :a^n-b^k=(a-b)(a^(n-1)+a^(n-2)b.....b^(n-1)) +m|(a-b) ==>m|(a^n-b^n)
  性质9:若 a≡b(mod m1) a≡b(mod m2).... a≡b(mod mi) 则 a≡b(mod [m1,m2,..mi])
   证明:m1 |(a-b) m2|(a-b) ..mi|(a-b)  =>[m1,m2...mi]|(a-b) (因为 a-b里面含了 m集合的所有因子和每个因子的最大个数)
  推论 m1,m2..mi两两互质 则 a≡b(mod m1m2..mi);
 
  定义 : X 代表 M 简化剩余系  个数φ(M)  (简化剩余系的含义,请另查资料)
         Y 代表 N 简化剩余系   个数φ(N)
         xi 代表X的元素 yj代表Y的元素 

  下面证明: φ(MN)=φ(M)φ(N) 其中(M,N)=1
  我们需要证明 
  A: (xiN+yjM,MN)=1, 且当i,j取遍所有值时,xiN+yjM 均不在 MN 的同一剩余类中
    这可以说明 xiN+yjM 能表示 MN 的 φ(M)φ(N) 个不同的剩余类
  B: xiN+yjM 确实可以代表 MN 的简化剩余系的每个元素
    这可以说明 MN 的简化剩余系大小就是 φ(M)φ(N)

A 的证明:
Step 1,
(xi,M)=1; => (xiN,M)=1; => (xiN+yiM,M)=1; ....1 
(yi,N)=1; => (yiM,N)=1; => (yiM+xiN,N)=1; ....2 
由 1,2 => (xiN+yiM,MN)=1; 

Step 2,
使用反证法,我们假设:
存在两个有序二元组 (i,j) ≠ (k,l),使得 xiN+yjM 和 xkN+ylM 落在 MN 的同一剩余类中,即 xiN+yjM≡xkN+ylM (mod MN) 。
由 xiN+yjM≡xkN+ylM (mod MN)
=> xiN+yjM≡xkN+ylM (mod M) 
=> xiN≡xkN (mod M) 
由性质 7 => xi≡xk (mod M)
因为在 M 的简化剩余系中,不存在两个对 M 同余的数,所以 i=k 。同理,j=l。
即(i,j) = (k,l),与假设矛盾,所以,当i,j取遍所有值时,xiN+yjM 均不在 MN 的同一剩余类中 

B 的证明: 
设 Z 是 MN 的简化剩余系的集合的任意某个元素 
由 (N,M)=1 => 存在 x0,y0,使得 Mx0+Ny0=1 => Mx0Z+Ny0Z=Z 
=> 存在 p,q,使得 Mp+Nq=Z 
由 (Z,MN)=1; => (Mp+Nq,M)=1; => (Nq,M)=1; => (q,M)=1 
=> 存在i,使得 xi≡q (mod M) => xiN=Nq (mod MN)   ....1
同理可得 (p,N)=1 => 存在j,使得 yj≡p (mod N) => yjM=Mp (mod MN)   ....2
两式相加可得,Mp+Nq≡xiN+yjM (mod MN) => Z≡xiN+yjM (mod MN) 
所以 MN 的简化剩余系每个元素都可以用 xiN+yjM 表示。

综上, φ(MN)=φ(M)φ(N) 成立。
http://www.cppblog.com/RyanWang/archive/2009/07/19/90512.aspx?opt=admin

E(x)表示比x小的且与x互质的正整数的个数。
*若p是素数,E(p)=p-1*E(p^k)=p^k-p^(k-1)=(p-1)*P^(k-1)
证:令n=p^k,小于n的正整数数共有n-1即(p^k-1)个,其中与p不质的数共[p^(k-1)-1]个(分别为1*p,2*p,3*p...p(p^(k-1)-1))。
所以E(p^k)=(p^k-1)-(p^(k-1)-1)=p^k-p^(k-1).得证。
*若ab互质,则E(a*b)=E(a)*E(b),欧拉函数是积性函数.
*对任意数n都可以唯一分解成n=p1^a1*p2^a2*p3^a3*...*pn^an(pi为素数).
则E(n)=E(p1^a1)*E(p2^a2)*E(p3^a3)*...*E(pn^an)     
      =(p1-1)*p1^(a1-1)*(p2-1)*p2^(a2-1)*...*(pn-1)*pn^(an-1)
      =(p1^a1*p2^a2*p3^a3*...*pn^an)*[(p1-1)*(p2-1)*(p3-1)*...*(pn-1)]/(p1*p2*p3*...*pn)
      =n*(1-1/p1)*(1-1/p2)*...*(1-1/pn)
* E(p^k)    =(p-1)*p^(k-1)=(p-1)*p^(k-2)*p
  E(p^(k-1))=(p-1)*p^(k-2)
->当k>1时,E(p^k)=E(p*p^(k-1))=E(p^(k-1))*p.
  (当k=1时,E(p)=p-1.)
  由上式: 设P是素数,
  若p是x的约数,则E(x*p)=E(x)*p.
  若p不是x的约数,则E(x*p)=E(x)*E(p)=E(x)*(p-1). 
小记:

d=gcd(a,b);  a'd=a b'd=b (a',b')=1
要 d=gcd (b,a-qb) 要成立  则(b',a'-qb')=1
证明 (b',a'-qb')=1;
假设 b',a'-qb' 不互质 则 设 b'=kd' a'-qb'=ld' d'>1
则 a'-q(kd')=ld' a'=(qk+l)d' 与 (a',b')矛盾 

问题描述:
给出一个N,求1..N中与N互质的数的和

if gcd(n,i)=1 then gcd(n,n-i)=1 (1<=i<=n)

反证法:
如果存在K!=1使gcd(n,n-i)=k,那么(n-i)%k==0
而n%k=0
那么必须保证i%k=0
k是n的因子,如果i%k=0那么gcd(n,i)=k,矛盾出现;
于是问题变的非常简单
ANS=N*phi(N)/2
i,n-i总是成对出现,并且和是n
于是可能就有人问了,如果存在n-i=i那不是重复计算?
答案是不会
因为:
n=2*i->i=n/2
1.如果n是奇数,那么n!=2*i,自然也不存在n-i=i和重复计算之说
2.如果n是偶数,n=2*i成立,gcd(n,n/2)必然为n的一个因子,这个因子为1当且仅当n==2
于是对于n>2的偶数,绝对不存在gcd(n,n/2)=1所以更别说什么重复计算了
对于n==2
ans=2*1/2=1
正好也满足

评论 9
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值