求所有质数p 使得{2^(p-1)-1}/p是一个完全平方数.

问题描述:

求所有质数p 使得{2^(p-1)-1}/p是一个完全平方数.

先考虑对哪些正整数n,2^n-1或2^n+1是完全平方数.
(1) 对于前者,n = 1时,2^n-1 = 1是完全平方数.
n ≥ 2时,2^n-1 ≡ 3 (mod 4),因此不可能是完全平方数.
(2) 对于后者,设有正整数x满足x^2 = 2^n+1,则2^n = x^2-1 = (x+1)(x-1).
因为x+1与x-1中至少有一个不被4整除,所以另一个必须被2^(n-1)整除.
由此可得x ≥ 2^(n-1)-1,2^n = x^2-1 ≥ (2^(n-1)-2)·2^(n-1).
化简得2^(n-1) ≤ 4,因此n ≤ 3.
对n = 1,2,3分别验证知,只有n = 3时2^n+1 = 9为完全平方数.
回到原题.
对质数p > 2,可设p = 2k+1,k为正整数.
于是(2^(p-1)-1)/p = (2^(2k)-1)/p = (2^k-1)(2^k+1)/p.
注意有(2^k-1,2^k+1) = (2^k-1,2) = 1,即2^k+1与2^k-1互质.
质数p | (2^k-1)(2^k+1),因此p整除二者之一.
(1) 若p | 2^k-1,即(2^k-1)/p为整数.
一方面,2^k+1与(2^k-1)/p也是互质的,
另一方面,二者的乘积是完全平方数.
这说明二者都是完全平方数.
已证仅当k = 3时,2^k+1是完全平方数.
对应p = 7可验证满足要求.
(2) 若p | 2^k+1,即(2^k+1)/p为整数.
同样由2^k-1与(2^k+1)/p互质,且二者乘积为完全平方数,
可得二者都是完全平方数.
已证仅当k = 1时,2^k-1是完全平方数.
对应p = 3可验证满足要求.
综上,满足要求的质数p仅有3和7.谢谢 为什么x+1和x-1至少有一个不被4整除 另一个就一定被2^(n-1)整除?如果x+1与x-1都不被4整除呢?两个数的乘积一共含有n个质因子2,
如果其中一个含有质因子2的个数不超过1,
那另一个至少含有质因子2个数就不小于n-1.

另外, 这里成立的是(x+1)(x-1) = 2^n,
所以后面那段分析也可以改为:
x+1和x-1都必须是2的方幂.
不被4整除的2的方幂, 只能是1或2.
又x > 1, 只有x = 2或3,
检验得只有x = 3时对应n = 3.