Sophie Germain素数を検討するtexファイルの生成プログラム

2017.12.18 Ver.0.001

2017.12.18 Ver.0.001 新規作成

Sophie Germain素数を検討するプログラムです。
例えば、2,3,5,7,11,13,17,19を除いた素数候補式 9699690n+Pの素数検討した結果は、
Sophie-Germain_6_1.texと なり、次のようになります。
=================
\documentclass[a4j,11pt]{jsarticle}
\usepackage{amsmath,amssymb}
\begin{document}

\title{ソフィー・ジェルマン素数について\
($2,3,5,7,11,13,17,19$を除いた素数候補式)}
\author{愛犬ベルのために}
\date{最新2017年12月8日}
\maketitle
\section*{更新履歴}
初版2017年12月8日\\
\section*{$2,3,5,7,11,13,17,19$を除いた素数候補式}
$2,3,5,7,11,13,17,19$を除いた素数候補式は、$9699690n+Q$です。


$Q=1$ならば、
\[P=9699690n+1 \]
\[2P+1=2(9699690n+1)+1=19399380n+2+1=19399380n+3 \]
ところで、19399380は2は2個、3,5,7,11,13,17,19は因数として1個もちますから
\[3=3 \times 1 \] ですから
\[2P+1=3(6466460n+1) \]
となりますから、$3$の倍数になり、素数にはなりませんのでソフィー・ジェルマン素数にはなりません。


$Q=23$ならば、
\[P=9699690n+23 \]
\[2P+1=2(9699690n+23)+1=19399380n+46+1=19399380n+47 \]
ところで、19399380は2は2個、3,5,7,11,13,17,19は因数として1個もちますが
\[47=47 \times 1  \] ですから19399380と共通の因数を持ちません。
\[2P+1=9699690m+47 \]
となりますから、ソフィー・ジェルマン素数になる可能性があります。


$Q=29$ならば、
\[P=9699690n+29 \]
\[2P+1=2(9699690n+29)+1=19399380n+58+1=19399380n+59 \]
ところで、19399380は2は2個、3,5,7,11,13,17,19は因数として1個もちますが
\[59=59 \times 1  \] ですから19399380と共通の因数を持ちません。
\[2P+1=9699690m+59 \]
となりますから、ソフィー・ジェルマン素数になる可能性があります。

=================
これをplatexにかけ、dvipdfmxでPDFにするとSophi-Germain_6_1.pdfと なります。

ここでは、環境は日本語texが標準でインストールされているvine linux 6.5 (64bit版)がインストールされているものとします。
これを実行するには、Sophie-Germain-9699690.tar.gzをダウンロードして、
  Sophie-Germain-9699690とディレクトリー(フォルダ)つくりそこにダウンロードフォルダのSophie-Germain-9699690.tar.gzを移します。
端末を起動して、Sophie-Germain-9699690のディレクトリーに移動して
$tar zxvf Sophie-Germain-9699690.tar.gz
と解凍します。次にPの値を列挙したQhyo.csvを作るために、Qhyo_exec.cをコンパイルします。
$gcc Qhyo_exec.c -o Qhyo_exec
次に実行します。
$./Qhyo_exec
すると、Qhyo.csvが生成されます。次に素因数分解するために素数表を生成するために、sosuu-3.cをコンパイルします。
$gcc sosuu-3.c -o sosuu-3
次に実行します。
$./sosuu-3
すると、sosuuhyo.csvが生成されます。Qhyo.csvとsosuuhyo.csvが揃ったら、texファイルを作るtex.cをコンパイル します。
$gcc tex.c -o tex
次に実行します。
$./tex
すると35分くらいで、1620本のtexファイルができます。
これを1本づつ
$platex Sophie-Germain_6_1.tex
$platex Sophie-Germain_6_1.tex
と2回繰り返します。つぎに、pdfを作るために、
$dvipdfmx Sophie-Germain_6_1
とすると、pdfができます。これを1620本やるのですが、バッチファイルがあります。
tex_sh_1.shからtex_sh_1600.shとtex_sh_all.shの18本です。これを実行できるようにするために
$chmod +x tex_sh_1.sh
とすると実行権限が与えられます。同様に、tex_sh_100.shからtex_sh_1600.shとtex_sh_all.shまでの17本をやり ます。
$ls tex_sh_*.sh
とすると緑色のファイル名になっています。なってなければ、そのファイルにも実行権限をつけてください。
以上が終わったら、
$./tex_sh_all.sh
とすると、全部が終わるまでやってくれます。
Sophie-Germain-9699690.tar.gz のダウンロード

以下実行例
[Sophie-Germain-9699690]$ ls
Sophie-Germain-9699690.tar.gz
[ Sophie-Germain-9699690]$ tar zxvf Sophie-Germain-9699690.tar.gz
Qhyo_exec.c
sosuu-3.c
tex.c
tex_sh_1.sh
tex_sh_100.sh
tex_sh_1000.sh
tex_sh_1100.sh
tex_sh_1200.sh
tex_sh_1300.sh
tex_sh_1400.sh
tex_sh_1500.sh
tex_sh_1600.sh
tex_sh_200.sh
tex_sh_300.sh
tex_sh_400.sh
tex_sh_500.sh
tex_sh_600.sh
tex_sh_700.sh
tex_sh_800.sh
tex_sh_900.sh
tex_sh_all.sh
[ Sophie-Germain-9699690]$ ls
Qhyo_exec.c                    tex_sh_1000.sh  tex_sh_1600.sh  tex_sh_700.sh
Sophie-Germain-9699690.tar.gz  tex_sh_1100.sh  tex_sh_200.sh   tex_sh_800.sh
sosuu-3.c                      tex_sh_1200.sh  tex_sh_300.sh   tex_sh_900.sh
tex.c                          tex_sh_1300.sh  tex_sh_400.sh   tex_sh_all.sh
tex_sh_1.sh                    tex_sh_1400.sh  tex_sh_500.sh
tex_sh_100.sh                  tex_sh_1500.sh  tex_sh_600.sh
[Sophie-Germain-9699690]$ gcc Qhyo_exec.c -o Qhyo_exec
[Sophie-Germain-9699690]$ ./Qhyo_exec
now saving  disk file!Q個数=1658880
[ Sophie-Germain-9699690]$ gcc sosuu-3.c -o sosuu-3
[ Sophie-Germain-9699690]$ ./sosuu-3
篩=6037 経過時間= 0 分 1 秒
now saving  disk file!
素数個数=2225822
[ Sophie-Germain-9699690]$ gcc tex.c -o tex
[ Sophie-Germain-9699690]$ ./tex
Qhyo read!  1658880 個
sosuuhyo read!  2225822 個
[ Sophie-Germain-9699690]$ chmod +x tex_sh_1.sh
[ Sophie-Germain-9699690]$ chmod +x tex_sh_100.sh
[ Sophie-Germain-9699690]$ chmod +x tex_sh_200.sh
[ Sophie-Germain-9699690]$ chmod +x tex_sh_300.sh
[ Sophie-Germain-9699690]$ chmod +x tex_sh_400.sh
[ Sophie-Germain-9699690]$ chmod +x tex_sh_500.sh
[ Sophie-Germain-9699690]$ chmod +x tex_sh_600.sh
[ Sophie-Germain-9699690]$ chmod +x tex_sh_700.sh
[ Sophie-Germain-9699690]$ chmod +x tex_sh_800.sh
[ Sophie-Germain-9699690]$ chmod +x tex_sh_900.sh
[ Sophie-Germain-9699690]$ chmod +x tex_sh_1000.sh
[ Sophie-Germain-9699690]$ chmod +x tex_sh_1100.sh
[ Sophie-Germain-9699690]$ chmod +x tex_sh_1200.sh
[ Sophie-Germain-9699690]$ chmod +x tex_sh_1300.sh
[ Sophie-Germain-9699690]$ chmod +x tex_sh_1400.sh
[ Sophie-Germain-9699690]$ chmod +x tex_sh_1500.sh
[ Sophie-Germain-9699690]$ chmod +x tex_sh_1600.sh
[ Sophie-Germain-9699690]$ chmod +x tex_sh_all.sh
[ Sophie-Germain-9699690]$ ./tex_sh_all.sh

メインページに戻る