如何证明:对V n为正整数,有n^P-1被P整除,p为素数;

levinjoe 2003-09-30 12:16:18
最初是在素数检测中看到,最近在算一个排列问题中发现这一结果,想了一下没结果,唉高中竞赛时学的数论知识全忘光了,希望有人能提供思路!
...全文
503 10 打赏 收藏 转发到动态 举报
写回复
用AI写文章
10 条回复
切换为时间正序
请发表友善的回复…
发表回复
libi 2003-10-03
  • 打赏
  • 举报
回复
费马小定理在数论中是用欧拉定理证明的,但欧拉定理本身就比较麻烦,不过费马小定理另有个简洁的证明方法。
对于素数p和一个任意n(n不能被p整除),令:
n = c1 mod p
2n = c2 mod p
3n = c3 mod p
...........
in = ci mod p
...........
(p-1)n = c(p-1) mod p
由于n不能被p整除且p为素数,{ci}两两互不相等。因为如果有x,y<p使得cx=cy,将上面对应的式子取出相减得:(x-y)n = 0 mod p。由于x,y<p,(x-y)必然与p互质,所以有p|n,这就与题设矛盾了。所以{ci}两两互不相等命题成立。
再将上面那些式子连乘,得到:(p-1)! * n^(p-1) = Πci mod p
由于ci两两互不相等,它们只是1..(p-1)的一个乱序排列,所以 Πci = (p-1)! 。
用(p-1)! 去除上面那个式子即得:n^(p-1) = 1 mod p
这就是费马小定理,不过要注意的是,上面做连乘时,右边要得到 Πci mod p 还需要利用p为质数证明一下,这并不困难,我懒得写了。
levinjoe 2003-09-30
  • 打赏
  • 举报
回复
那就谈谈费马小定理的证明吧,光说根据费马小定理就毫无意义了!
libi 2003-09-30
  • 打赏
  • 举报
回复
(n^p-n) = (n^(p-1)-1)*n
当p|n,那自然不用说了。
如果p不能整除n,则p、n互质(因为p为素数)。
根据费马小定理(也就是小菜虎提的那个)可知p|(n^(p-1)-1)。
jfguo 2003-09-30
  • 打赏
  • 举报
回复
写错了吧,用的应该是fermat小定理:若p为素数,则对所有整数a有p|(a^p-a)
所以对数p, 如果能找到一个整数a,使p不整除a^p-a,则p一定不是素数
levinjoe 2003-09-30
  • 打赏
  • 举报
回复
sorry,是p|(n^p-n),p为素数,n>=P;
LeeMaRS 2003-09-30
  • 打赏
  • 举报
回复
似乎应该是这样的:

如果n是一个正整数, a^(n-1) MOD n = 1, 则我们说n是一个满足基于a的伪素数.

即对于1..n-1间的任意一个整数a来说, a^(n-1) MOD n <> 1, 则n一定是合数, 若a^(n-1) MOD n = 1, 则几乎可以肯定地确认n是素数, 因为它出错的机会非常少.

以上来自吴文虎 <<实用算法的分析与程序设计>>
frankzch 2003-09-30
  • 打赏
  • 举报
回复
???????
2^3-1=7,7能被3整除???????
levinjoe 2003-09-30
  • 打赏
  • 举报
回复
呵呵,算法是不完全正确的,但定理却是好的,刚到google上搜到一篇如何证明的文章,的确有趣,体现了数学的美。
感谢jfguo(jfguo) 提供的关键字:fermat' little theory

http://sweb.uky.edu/~jrbail01/euler.htm
Leonhard Euler and His Contribution to Number Theory

大家有超星卡的可以看看陈景润的初等数论,也不错的!



ac1998 2003-09-30
  • 打赏
  • 举报
回复


这个解答很简单,可惜文本格式很难表达推导过程。
LeeMaRS 2003-09-30
  • 打赏
  • 举报
回复
这个好像不太好"证明"吧, 因为这个"定理"本身就是不成立的, 它并不是对所有的素数都成立, 会有伪素数的情况.

33,008

社区成员

发帖
与我相关
我的任务
社区描述
数据结构与算法相关内容讨论专区
社区管理员
  • 数据结构与算法社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧