2025 に関係する計算をしてみます。
2025は平方数
$2025 = 45 \times 45$ で平方数です。この前の平方数は、$1936 = 44 \times 44$、後ろの平方数は、$2116 = 46 \times 46$ となります。
西暦が平方数となる年(square year)を2回経験する人は少ないのではないでしょうか。
Prime Curios! から
素数に関する興味深い事実を多数掲載している Prime Curios! で2025を調べたところ、以下の情報が見つかりました。サイトは英語ですが、日本語に訳しました。
https://t5k.org/curios/page.php?short=2025
- 2025年までに、10^9 桁の素数が発見されると予測されています(3次式の回帰曲線で予想)。
- 2002年に生まれた人は、平方数である2025年に素数の年齢(23歳)を迎えて、さらに2年後の素数の年(2027年)に平方数の年齢(25歳)を迎えます。
最大の素数
引用したサイトでは、知られている最大の素数についてまとめられています。2024年10月21日に GIMP(Great Internet Mersenne Prime search)が最大の素数の記録を更新しました。この素数は、$2^{136279841} – 1$ で、$41,024,320$ 桁です。
2025年までに現行の $4 \times 10^7$ 桁から、$10^9$ 桁に記録を更新すると回帰して予想しています。ネットワークで繋がるコンピュータが増えているため、この予想がどうなるか楽しみにしたいと思います。
素数の年齢と平方数の年齢
2番目に記載されていることは、どの程度の頻度で発生するのでしょうか。
1万年まで考えても、西暦が平方数になるのは100回しかありません。一方、1万までの素数は、1229個あります。人間の寿命を大きく見積もって150歳と仮定すると、年齢が平方数となるのは12回です。150までの素数は、35個あります。
2025から素数を引き、その結果に平方数を加えて、その年が素数になるケースがあるか計算しました。
2025年の検証プログラム
素数と平方数を配列に格納し、条件を満たすかどうかを計算しました。
#include <iostream>
#include <vector>
#include <cstdio>
using namespace std;
#define N 10000
bool is_prime_table[N + 1];
vector<int> primes;
vector<int> squares;
void generate_primes(int n)
{
is_prime_table[0] = false;
is_prime_table[1] = false;
for (int i = 2; i <= n; ++i) {
is_prime_table[i] = true;
}
for (int i = 2; i * i <= n; ++i) {
if (is_prime_table[i]) {
for (int j = i + i; j <= n; j += i) {
is_prime_table[j] = false;
}
}
}
for (int i = 2; i <= n; ++i) {
if (is_prime_table[i]) {
primes.push_back(i);
}
}
return;
}
int main()
{
generate_primes(N);
for (int i = 1; i <= 100; ++i) {
squares.push_back(i * i);
}
for (int i = 0; primes[i] <= 150; ++i) {
int year = 2025 - primes[i];
for (int j = 0; squares[j] <= 150; ++j) {
if (is_prime_table[year + squares[j]]) {
printf("Those born in %4d will turn ", year);
printf("%d(prime age) in %4d(square year), and ", primes[i], 2025);
printf("%d(square age) in %4d(prime year).\n", squares[j], year + squares[j]);
}
}
}
return 0;
}
59個の組み合わせが検出されました。サイトに記載されている事象は、それほど珍しくないようです。
以下は、出力結果のテキストです。
Those born in 2023 will turn 2(prime age) in 2025(square year), and 4(square age) in 2027(prime year).
Those born in 2023 will turn 2(prime age) in 2025(square year), and 16(square age) in 2039(prime year).
Those born in 2023 will turn 2(prime age) in 2025(square year), and 64(square age) in 2087(prime year).
Those born in 2022 will turn 3(prime age) in 2025(square year), and 121(square age) in 2143(prime year).
Those born in 2020 will turn 5(prime age) in 2025(square year), and 9(square age) in 2029(prime year).
Those born in 2020 will turn 5(prime age) in 2025(square year), and 49(square age) in 2069(prime year).
Those born in 2020 will turn 5(prime age) in 2025(square year), and 121(square age) in 2141(prime year).
Those born in 2018 will turn 7(prime age) in 2025(square year), and 9(square age) in 2027(prime year).
Those born in 2018 will turn 7(prime age) in 2025(square year), and 81(square age) in 2099(prime year).
Those born in 2014 will turn 11(prime age) in 2025(square year), and 25(square age) in 2039(prime year).
Those born in 2014 will turn 11(prime age) in 2025(square year), and 49(square age) in 2063(prime year).
Those born in 2008 will turn 17(prime age) in 2025(square year), and 9(square age) in 2017(prime year).
Those born in 2008 will turn 17(prime age) in 2025(square year), and 81(square age) in 2089(prime year).
Those born in 2008 will turn 17(prime age) in 2025(square year), and 121(square age) in 2129(prime year).
Those born in 2006 will turn 19(prime age) in 2025(square year), and 81(square age) in 2087(prime year).
Those born in 2002 will turn 23(prime age) in 2025(square year), and 1(square age) in 2003(prime year).
Those born in 2002 will turn 23(prime age) in 2025(square year), and 9(square age) in 2011(prime year).
Those born in 2002 will turn 23(prime age) in 2025(square year), and 25(square age) in 2027(prime year).
Those born in 2002 will turn 23(prime age) in 2025(square year), and 81(square age) in 2083(prime year).
Those born in 1996 will turn 29(prime age) in 2025(square year), and 1(square age) in 1997(prime year).
Those born in 1994 will turn 31(prime age) in 2025(square year), and 9(square age) in 2003(prime year).
Those born in 1988 will turn 37(prime age) in 2025(square year), and 9(square age) in 1997(prime year).
Those born in 1988 will turn 37(prime age) in 2025(square year), and 81(square age) in 2069(prime year).
Those born in 1984 will turn 41(prime age) in 2025(square year), and 9(square age) in 1993(prime year).
Those born in 1982 will turn 43(prime age) in 2025(square year), and 81(square age) in 2063(prime year).
Those born in 1978 will turn 47(prime age) in 2025(square year), and 1(square age) in 1979(prime year).
Those born in 1978 will turn 47(prime age) in 2025(square year), and 9(square age) in 1987(prime year).
Those born in 1978 will turn 47(prime age) in 2025(square year), and 25(square age) in 2003(prime year).
Those born in 1978 will turn 47(prime age) in 2025(square year), and 49(square age) in 2027(prime year).
Those born in 1978 will turn 47(prime age) in 2025(square year), and 121(square age) in 2099(prime year).
Those born in 1972 will turn 53(prime age) in 2025(square year), and 1(square age) in 1973(prime year).
Those born in 1972 will turn 53(prime age) in 2025(square year), and 25(square age) in 1997(prime year).
Those born in 1972 will turn 53(prime age) in 2025(square year), and 81(square age) in 2053(prime year).
Those born in 1966 will turn 59(prime age) in 2025(square year), and 121(square age) in 2087(prime year).
Those born in 1964 will turn 61(prime age) in 2025(square year), and 9(square age) in 1973(prime year).
Those born in 1958 will turn 67(prime age) in 2025(square year), and 81(square age) in 2039(prime year).
Those born in 1954 will turn 71(prime age) in 2025(square year), and 25(square age) in 1979(prime year).
Those born in 1954 will turn 71(prime age) in 2025(square year), and 49(square age) in 2003(prime year).
Those born in 1946 will turn 79(prime age) in 2025(square year), and 81(square age) in 2027(prime year).
Those born in 1942 will turn 83(prime age) in 2025(square year), and 9(square age) in 1951(prime year).
Those born in 1942 will turn 83(prime age) in 2025(square year), and 121(square age) in 2063(prime year).
Those born in 1936 will turn 89(prime age) in 2025(square year), and 81(square age) in 2017(prime year).
Those born in 1924 will turn 101(prime age) in 2025(square year), and 9(square age) in 1933(prime year).
Those born in 1924 will turn 101(prime age) in 2025(square year), and 25(square age) in 1949(prime year).
Those born in 1924 will turn 101(prime age) in 2025(square year), and 49(square age) in 1973(prime year).
Those born in 1922 will turn 103(prime age) in 2025(square year), and 9(square age) in 1931(prime year).
Those born in 1922 will turn 103(prime age) in 2025(square year), and 81(square age) in 2003(prime year).
Those born in 1918 will turn 107(prime age) in 2025(square year), and 81(square age) in 1999(prime year).
Those born in 1918 will turn 107(prime age) in 2025(square year), and 121(square age) in 2039(prime year).
Those born in 1916 will turn 109(prime age) in 2025(square year), and 81(square age) in 1997(prime year).
Those born in 1912 will turn 113(prime age) in 2025(square year), and 1(square age) in 1913(prime year).
Those born in 1912 will turn 113(prime age) in 2025(square year), and 81(square age) in 1993(prime year).
Those born in 1898 will turn 127(prime age) in 2025(square year), and 9(square age) in 1907(prime year).
Those born in 1898 will turn 127(prime age) in 2025(square year), and 81(square age) in 1979(prime year).
Those born in 1888 will turn 137(prime age) in 2025(square year), and 1(square age) in 1889(prime year).
Those born in 1888 will turn 137(prime age) in 2025(square year), and 25(square age) in 1913(prime year).
Those born in 1876 will turn 149(prime age) in 2025(square year), and 1(square age) in 1877(prime year).
Those born in 1876 will turn 149(prime age) in 2025(square year), and 25(square age) in 1901(prime year).
Those born in 1876 will turn 149(prime age) in 2025(square year), and 121(square age) in 1997(prime year).
最後に
素数の記録は、多くのコンピュータの協力によって計算しているようです。
今年も、いろいろプログラムを書いて、計算を楽しもうと思います。