alt alt

本来是遍历到根号n,后来想改进到再去除2的倍数 alt

验证 6因子 1,6 2,3

那么12因子 (1,12 2,6) (2,6 4,3) 这样因子和是3倍

但是12因子 1,12 2,6 3,4 那么2,6重复了

结论错误

为什么? 猜测可能是因为6是2的倍数所以会再翻倍时导致因子有重复

a不是2的倍数

a因子 1,a x1,y1 x2,y2

2a因子 (1,2a 2,a) (x1,2y1 and 2x1,y1)...

2a因子和是a的3倍,但是没什么用因为得不到4a因子和是2a三倍

顺着欧拉思路是不是需要a为质数 alt

所以对素数p 2np=(p+1)(2n+11)2^n*p 的因子和= (p+1)(2^{n+1}-1)

2np2^n*p是完全数=> 2np=(p+1)(2n+11)2np2^n*p= (p+1)(2^{n+1}-1)-2^n*p

(2n+1)p=(p+1)(2n+11)(2^{n+1})*p= (p+1)(2^{n+1}-1)

a/b a整除b (a,b)=1 a,b最大公约数为1,ab互质

p+1/(2n+1)p,(p,p+1)=1p+1/(2^{n+1})*p,且 (p,p+1)=1 =>

p+1/2n+1p+1/2^{n+1} *****

p=2kt(t<2k1)2n+1=>2kt+1=>t=1=>p=2k1设 p= 2^k-t(t<2^{k-1})显然2^{n+1}没有奇因子=>2^k-t+1 没有奇因子=>t=1=>p= 2^k-1

=> (2n+1)(2k1)=(2k)(2n+11)(2^{n+1})*(2^k-1)=(2^k)(2^{n+1}-1)

=>n=k-1结合2np2^n*p 是完全数

k2k1=p2np有存在k 当2^k-1=p 为质数时 2^n*p为完全数

(2k1)(2k1)也即 (2^k-1)*(2^{k-1})为完全数

对比欧拉结论

p2p1,2p1)2(p1)便如果p是质数,且2^p-1也是质数,(2^p-1)*2^{(p-1)}便是一个完全数。

2p1,p下证若要2^p-1也是质数,p需为质数

alt