梅森素数检查器
测试给定的指数 p 是否能使 2^p − 1 成为梅森素数。使用带有动画迭代轨迹的卢卡斯-莱默 素性检验、二进制位图可视化、欧几里得-欧拉完全数配对,以及关于 52 个已知梅森素数的历史背景。
检测到广告拦截,导致我们无法展示广告
MiniWebtool 依靠广告收入免费提供服务。如果这个工具帮到了你,欢迎开通 Premium(无广告 + 更快),或将 MiniWebtool.com 加入白名单后刷新页面。
- 或升级 Premium(无广告)
- 允许 MiniWebtool.com 显示广告,然后刷新
梅森素数检查器
欢迎使用 梅森素数检查器。这是一个交互式工具,用于测试高达 5000 的任何指数 \(p\) 的 \(2^p - 1\) 是否为 梅森素数。该工具运行著名的 卢卡斯-莱默素性检验,显示递推关系 \(S_i = S_{i-1}^2 - 2 \pmod{M_p}\) 的动画迭代追踪,可视化二进制位模式(每个梅森数的特征签名),并且当结果为素数时,根据 欧几里得-欧拉定理 显示其对应的偶完全数。
什么是梅森素数?
梅森数是形如 \(M_p = 2^p - 1\) 的数字。当 \(M_p\) 本身也是素数时,它被称为 梅森素数。该名称是为了纪念马兰·梅森 (1588-1648),这位法国修士编纂了早期的案例,并推测了哪些高达 257 的指数能产生素数——尽管他的列表后来被证明有部分错误,但却由此开启了长达三个世纪的研究。
按顺序排列的前几个梅森素数:
- \(M_2 = 3\)
- \(M_3 = 7\)
- \(M_5 = 31\)
- \(M_7 = 127\)
- \(M_{13} = 8{,}191\)
- \(M_{17} = 131{,}071\)
- \(M_{19} = 524{,}287\)
- \(M_{31} = 2{,}147{,}483{,}647\) (由欧拉于 1772 年发现,在随后的 104 年里一直是已知最大的素数)
截至 2024 年,正好有 52 个已知的梅森素数。目前的记录是 \(M_{136{,}279{,}841}\),由 GIMPS 分布式计算项目于 2024 年 10 月发现——这是一个拥有 41,024,320 位十进制数字的巨数。
卢卡斯-莱默检验
梅森素数在素数记录中占据统治地位的原因在于一种由爱德华·卢卡斯(1878年)发现并由德里克·莱默(1930年)简化的专用且极快的素性检验:
对于素数 \(p \geq 3\):\(\;M_p\) 是素数 \(\iff S_{p-2} \equiv 0 \pmod{M_p}\)
该测试仅需要 \(p-2\) 次模平方运算。与对 \(M_p\) 规模的数字(数百万位)进行通用素性检验相比,卢卡斯-莱默捷径使搜索梅森素数成为了可能。
为什么 \(p\) 必须是素数?
如果 \(p = a \cdot b\) 且 \(a, b > 1\),一个经典恒等式显示 \(2^a - 1\) 可以整除 \(2^{ab} - 1\):
因此,如果指数是合数,\(M_p\) 自动就是合数。反之则不然: \(p\) 为素数 并不 保证 \(M_p\) 也是素数。例如,\(p = 11\) 是素数,但 \(M_{11} = 2047 = 23 \times 89\)。
梅森素数与完全数 (欧几里得-欧拉)
欧几里得在公元前 300 年左右观察到,如果 \(2^p - 1\) 是素数,那么 \(2^{p-1}(2^p - 1)\) 就是一个 完全数——即等于其真因数之和的数字。欧拉后来证明了其逆命题:每一个偶完全数都是通过这种方式产生的。
因此,发现一个新的梅森素数就会立即产生一个新的完全数。前四个偶完全数是 6, 28, 496, 和 8128——自古以来就为人所知。是否存在 奇 完全数仍然是一个超过 2300 年未解的难题。
二进制位模式
每一个梅森数都有一个非常整洁的二进制表示:二进制中的 \(2^p\) 是 \(1\) 后面跟着 \(p\) 个零,因此 \(2^p - 1\) 正好是 \(p\) 个连续的 1:
这就是为什么该工具将每个位可视化为单独的平铺块的原因——位模式是梅森数的视觉特征,无论该数字是否为素数。
如何使用此计算器
- 输入指数 \(p\): 1 到 5,000 之间的任何正整数。
- 点击检查: 工具首先检查 \(p\) 是否为素数;如果不是,它会解释为什么 \(M_p\) 必然是合数。
- 对于素数 \(p\): 卢卡斯-莱默递推会在模 \(M_p\) 下运行 \(p - 2\) 次迭代。
- 查看输出: 判定横幅、6 行迭代追踪(对于大指数 \(p\) 会用 “...” 省略中间步骤)、\(M_p\) 的十进制和二进制形式,以及适用的欧几里得-欧拉完全数配对。
前十二个已知的梅森素数
| # | 指数 \(p\) | \(M_p = 2^p - 1\) | 位数 | 发现时间 |
|---|---|---|---|---|
| 1 | 2 | 3 | 1 | 古代 |
| 2 | 3 | 7 | 1 | 古代 |
| 3 | 5 | 31 | 2 | 古代 |
| 4 | 7 | 127 | 3 | 古代 |
| 5 | 13 | 8,191 | 4 | 1456 (佚名) |
| 6 | 17 | 131,071 | 6 | 1588 Cataldi |
| 7 | 19 | 524,287 | 6 | 1588 Cataldi |
| 8 | 31 | 2,147,483,647 | 10 | 1772 Euler |
| 9 | 61 | 2.3 × 10^18 | 19 | 1883 Pervushin |
| 10 | 89 | 6.2 × 10^26 | 27 | 1911 Powers |
| 11 | 107 | 1.6 × 10^32 | 33 | 1914 Powers |
| 12 | 127 | 1.7 × 10^38 | 39 | 1876 Lucas |
GIMPS 项目
互联网梅森素数大搜索 (GIMPS) 由 George Woltman 于 1996 年发起,是一个分布式计算项目,志愿者贡献 CPU 时间对候选指数运行卢卡斯-莱默检验。截至 2024 年,自 M_35 = M_{1398269} (1996) 以来的每一个梅森素数都是由 GIMPS 发现的。在现代前沿(指数接近 \(10^8\))进行一次卢卡斯-莱默检验需要数周的 GPU 计算。
关于梅森素数的趣闻
- \(M_{31} = 2{,}147{,}483{,}647\) 是最大的 32 位有符号整数——C 语言中著名的 \(\texttt{INT\_MAX}\)。这并非巧合:该值源于 \(M_{31}\) 是素数,因此是一个自然的“溢出边界”。
- 相继的梅森素数之间存在未知大小的间隙。目前尚不清楚是否存在 无穷多个 梅森素数——Lenstra-Pomerance-Wagstaff 猜想预测存在无穷多个。
- 2008 年,电子前哨基金会奖励了首个发现千万位素数的人 10 万美元。该奖项由加州大学洛杉矶分校 (UCLA) 的 GIMPS 团队凭借 \(M_{43112609}\) 获得。目前仍有 15 万美元的奖金等待着首个发现亿位素数的人。
- \(M_{31}\) 出现在 1811 年俄国 100 卢布纪念钞票上,以纪念欧拉的发现——这是极少数被印在货币上的素数之一。
- 因为每一个梅森素数都会产生一个完全数,人类目前记录在案的 偶完全数正好有 52 个(与已知的 52 个梅森素数对应)。
常见问题解答
什么是梅森素数?
梅森素数是形如 \(2^p - 1\) 的素数,其中 \(p\) 本身也是素数。前几个是 3, 7, 31, 127, 和 8,191。截至 2024 年,已知的梅森素数共有 52 个;目前已知最大的素数 (\(M_{136{,}279{,}841}\)) 是一个拥有超过 4100 万位数字的梅森素数。
卢卡斯-莱默检验是如何工作的?
对于素指数 \(p \geq 3\),定义 \(S_0 = 4\) 且 \(S_i = S_{i-1}^2 - 2 \pmod{M_p}\)。梅森数 \(M_p = 2^p - 1\) 是素数当且仅当 \(S_{p-2} \equiv 0 \pmod{M_p}\)。该测试运行 \(p - 2\) 次迭代,每次迭代进行一次模平方运算。
为什么 \(p\) 必须是素数?
如果 \(p = ab\) 且两个因子均大于 1,那么 \(2^p - 1\) 就能被 \(2^a - 1\)(以及 \(2^b - 1\))整除,因此 \(M_p\) 是合数。反之则不然:\(p\) 是素数并不意味着 \(M_p\) 必然是素数。例如 \(p = 11\) 是素数,但 \(M_{11} = 2047 = 23 \times 89\) 是合数。
梅森素数与完全数之间有什么联系?
欧几里得-欧拉定理指出,每一个偶完全数都具有 \(2^{p-1}(2^p - 1)\) 的形式,其中 \(2^p - 1\) 是梅森素数。因此,每一个梅森素数都恰好生成一个偶完全数,而每一个偶完全数都源自一个梅森素数。是否存在奇完全数是数学中最古老的未解难题之一。
为什么 \(M_p\) 的二进制形式有 \(p\) 个连续的 1?
二进制中的 \(2^p\) 是 1 后面跟着 \(p\) 个零。减去 1 会将所有 \(p\) 个末尾的 0 变为 1。因此,二进制中的 \(2^p - 1\) 恰好是 \(p\) 个 1——这是每一个梅森数(无论是素数还是合数)定义的视觉特征。
此工具可以测试的最大指数是多少?
此工具可测试高达 5,000 的指数,以便卢卡斯-莱默迭代能在正常的 Web 请求内完成。对于更大的指数(包括指数接近 \(10^8\) 的 GIMPS 前沿),需要使用 Prime95 等专用软件,因为在现代 GPU 上单次测试可能也需要数周的计算时间。
其他资源
引用此内容、页面或工具为:
"梅森素数检查器" 于 https://MiniWebtool.com/zh-cn/梅森素数检查器/,来自 MiniWebtool,https://MiniWebtool.com/
由 miniwebtool 团队开发。更新日期:2026年4月18日
您还可以尝试我们的 AI数学解题器 GPT,通过自然语言问答解决您的数学问题。
基本数学计算:
- 公因子计算器
- 立方和立方根计算器
- 立方根计算器
- 分为两部分
- 可整除测试计算器
- 因子计算器 精选
- 查找最小值和最大值
- e的前n位数
- pi的前n位数
- 最大公因子计算器
- 质数检查器 精选
- 最小公倍数计算器
- 模计算器
- 乘法计算器
- n次方根计算器 高精度
- 位数计算器
- 质数因子计算器
- 质数分解计算器
- 商和余数计算器 精选
- 排序数字
- 平方根计算器 精选
- 总和计算器
- 比率计算器 新
- 长除法计算器 新
- 交叉相乘计算器 新
- 乘法表生成器 新
- 长乘法计算器 新
- 竖式加减法计算器 新
- 运算顺序计算器PEMDAS 新
- 位值图生成器 新
- 数列模式查找器 新
- 奇偶数检查器 新
- 绝对值计算器 新
- 上取整和下取整计算器 新
- 单位费率计算器 新
- 跳数生成器 新
- 估算计算器 新
- 完全数检查器 新