兄弟素数(いとこ素数,セクシー素数)を求める

兄弟素数(いとこ素数,セクシー素数)

差が2だと双子素数なら差が4とか6とかだとどうなんだろう、という事で調べてみました。兄弟素数というのは私の造語です。一般になんと呼ばれているのかは分かりません。なお、今回のプログラムでは隣接する素数同士の距離しか測っていません。例えば距離4の素数の組として3と7のように間に別の素数をはさむ物は除外しています。

(2012/5/9追記)

差が4のものを「いとこ素数」、差が6のものを「セクシー素数」と呼ぶそうです。なんで差が6でセクシーなのかというとラテン語で6が「sex」だからだそうです。

#include <stdio.h>
#include <stdlib.h>

int main( int ac, char *av[] )
{
    int n, p, d;
    char buf[1024];

    /*  コマンドラインから差を決定する    */
    if( ac < 2 ) {
        printf( "usage : brotherprime d\n" );
        return( 1 );
    }
    d = strtol( av[1], NULL, 10 );

    p = -1;
    while( fgets( buf, 1024, stdin ) ) {
        n = strtol( buf, NULL, 10 );
        if( p != -1 && n - d == p )
            printf( "%d %d\n", p, n );
        p = n;
    }

    return( 0 );
}

1億以下の素数一覧データに対して距離を4から20まで変えて調べてみたところ、兄弟素数(いとこ素数,セクシー素数)は以下の組だけ存在しました。

兄弟素数(いとこ素数,セクシー素数) 1億以下
距離 組の数
4(いとこ素数) 440,257組
6(セクシー素数) 768,752組
8 334,180組
10 430,016組
12 538,382組
14 293,201組
16 215,804組
18 384,738組
20 202,922組

距離が離れれば組の数も減っていくと予想したのですが、意外とそうでもありませんでした。ちなみに隣接する素数同士の距離は無限に大きいものが存在しますので、どんなに距離の離れた兄弟素数も存在する事になりますが、ある距離の兄弟素数の数が無限に存在するかどうかはわかりません。距離2の場合は無限に存在するわけなんですが。

(2005/4/18追記)

双子素数で書きました通り、双子素数が無限に存在するというのは未だに証明されていないようです。ですので、距離2の兄弟素数が無限に存在するというこちらの記述も取り消します。

(2012/2/15追記)

素数一覧を10億まで求めたので、こちらも10億以下にデータを更新しました。

(2014/11/3追記)

1兆以下までデータを更新しました。

(2020/1/1追記)

10兆以下までデータを更新しました。

(2020/4/25追記)

ソースコードを少し整理しました。

兄弟素数(いとこ素数,セクシー素数)の組の数

1万以下

兄弟素数(いとこ素数,セクシー素数)の組の数 1万以下
距離 組の数
4(いとこ素数) 202組
6(セクシー素数) 299組
8 101組
10 119組
12 105組
14 54組
16 33組
18 40組
20 15組

10万以下

兄弟素数(いとこ素数,セクシー素数)の組の数 10万以下
距離 組の数
4(いとこ素数) 1215組
6(セクシー素数) 1940組
8 773組
10 916組
12 964組
14 484組
16 339組
18 514組
20 238組

100万以下

兄弟素数(いとこ素数,セクシー素数)の組の数 100万以下
距離 組の数
4(いとこ素数) 8,143組
6(セクシー素数) 13,549組
8 5,569組
10 7,079組
12 8,005組
14 4,233組
16 2,881組
18 4,909組
20 2,401組

1000万以下

兄弟素数(いとこ素数,セクシー素数)の組の数 1000万以下
距離 組の数
4(いとこ素数) 58,621組
6(セクシー素数) 99,987組
8 42,352組
10 54,431組
12 65,513組
14 35,394組
16 25,099組
18 43,851組
20 22,084組

1億以下

兄弟素数(いとこ素数,セクシー素数)の組の数 1億以下
距離 組の数
4(いとこ素数) 440,257組
6(セクシー素数) 768,752組
8 334,180組
10 430,016組
12 538,382組
14 293,201組
16 215,804組
18 384,738組
20 202,922組

10億以下

兄弟素数(いとこ素数,セクシー素数)の組の数 10億以下
距離 組の数
4(いとこ素数) 3,424,679組
6(セクシー素数) 6,089,791組
8 2,695,109組
10 3,484,767組
12 4,468,957組
14 2,464,565組
16 1,846,097組
18 3,351,032組
20 1,824,043組

100億以下

兄弟素数(いとこ素数,セクシー素数)の組の数 100億以下
距離 組の数
4(いとこ素数) 27,409,998組
6(セクシー素数) 49,392,723組
8 22,160,841組
10 28,764,495組
12 37,588,207組
14 20,943,953組
16 15,888,305組
18 29,189,691組
20 16,296,072組

1000億以下

兄弟素数(いとこ素数,セクシー素数)の組の数 1000億以下
距離 組の数
4(いとこ素数) 224,373,160組
6(セクシー素数) 408,550,278組
8 185,402,143組
10 241,298,621組
12 319,972,455組
14 179,718,000組
16 137,715,130組
18 255,371,697組
20 145,357,801組

1兆以下

兄弟素数(いとこ素数,セクシー素数)の組の数 1兆以下
距離 組の数
4(いとこ素数) 1,870,585,458組
6(セクシー素数) 3,435,528,229組
8 1,573,331,564組
10 2,052,293,026組
12 2,753,597,777組
14 1,556,469,349組
16 1,202,533,145組
18 2,246,576,317組
20 1,298,682,892組

10兆以下

兄弟素数(いとこ素数,セクシー素数)の組の数 10兆以下
距離 組の数
4(いとこ素数) 15,834,656,002組
6(セクシー素数) 29,289,695,650組
8 13,515,180,171組
10 17,663,498,098組
12 23,931,289,984組
14 13,597,962,107組
16 10,576,414,202組
18 19,878,698,732組
20 11,638,466,683組