码迷,mamicode.com
首页 > 其他好文 > 详细

费马小定理,欧拉函数

时间:2015-04-05 06:37:03      阅读:155      评论:0      收藏:0      [点我收藏+]

标签:

在证明这些定理之前先证明一个有意思的定理。

            对于0 mod m,n mod m , 2n mod m, 3n mod m, 4n mod m... (m-1)n mod m

对应解集序列 一定有 m/d份 0 d 2d 3d..m-d. (不一定按照顺序) 这样的解。 其中d = gcd(n,m)

具体点:n=8,m=12.  d = gcd(n,m)=4

对于 0 mod 12,8 mod 12,16 mod 12,24 mod 12,32 mod 12,40 mod 12...88 mod 12.

对应解  0           8             4              0            8          4  ..... 4

可见结论应该是对的。

证明:

 

费马小定理:

  n^p-1 ≡ 1 (mod p)    ->    n^p-1 mod p = 1.  其中n和p互素。

证明:

我们可以构造 p-1个  n mod p,2n mod p,3n mod p ...(p-1)n mod p

根据同余运算(把余数转成同余式子):

那么就有      (p-1)! n^(p-1) ≡ (p-1)! (mod p)

    其中 (p-1)!不能整除p 所以式子变成 n^(p-1) ≡ (mod p),得证。

   又可以在两边均乘n.   n^p ≡ n (mod p)

 

这里有一个思维小插曲:

考虑下面这个证明:

由于n和p互素.所以有n ≡ 1(mod p).根据同余定理 n^(p-1) ≡ 1^(p-1) (mod p) -> n^(p-1) ≡ (mod p),得证。

简单明了。可这是错的。因为前提就错了。由于n和p互素.不一定有n ≡ 1(mod p)

只能说 由于n和p互素,存在kn ≡ 1(mod p) (k|1,2,3..p-1) (根据上述定理)

举例 n=2 p=5 .有3n mod p = 1.而 n mod p = 2.

 

 

欧拉函数:

作用:输入n,你想知道1~n中有多少个数和n是互素的吗?

   这就是欧拉函数的一个作用。而且还能让扩展费马小定理。算质因子之和

 

欧拉函数记为φ函数也就是说φ(1) = 1,φ(2)=1,φ(3)=2...

对于φ(n).

  如果n为素数,即φ(n) = n-1.

  如果n为合数,即φ(n) < n-1.

 

显然这对于应用还是不够的。我们当然想要能够输入n就可能获得具体结果,而不单只是范围.

对于这个问题:我们可以接下来的证明中解决该问题并且发现新的东西。

 

如果说m是一个素数幂p^k (比如2^3).φ(p^k)还是可以计算的。

对于1~p^k -1中有多少个和p^k互素呢?

那我们可以先找什么数中没有p因子.

那么可以找有p因子的数。然后总个数减去和p^k非互素的数。

 

费马小定理,欧拉函数

标签:

原文地址:http://www.cnblogs.com/Milkor/p/4393489.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!