猫のチャーと坊さんの座布団 コンテンツ

(ナレ)ここは、田舎の研究所。

動物好きの女性所長と、頼りになる研究員で宇宙の研究をしている。

そんな中、ある日

保護猫のチャーがあらわれる。びしょ濡れで研究所に顔をだした。

それから、ずっと研究所に居ついた。そして、チュールがお気に入り。

というか、チュールしか食べない。

チャーは、研究所に来る前は、

猫軍団といっしょにあそんでいた。

チャーが研究所に来てから、1年程たった夏の日、

研究所がある町に、
猫嫌いなおじさんが居て、

猫狩りを始めた。


それで、

猫軍団は、あわてて、研究所に逃げてきたのだ。

今や猫軍団は、研究所に住み着いている。

研究所は、

宇宙の研究をしているが、

あまり良い成果があがらない。

論文も駄作続出。

さてさて、研究員は、

スクラップ アンド ビルト だ!!

と意気込んでいる。

はたして、何かいいアイデアや理論が生まれるのか!

(エンディ)まあ、ここで私は一言言いたい!

「もっと宇宙の構造は簡単ではないかと。」

「宇宙の動きは、簡単な数学で動いているに違いない。」

でなければ、宇宙自体が、

超スーパーコンピューターみたいな頭脳を持っていなければ、

この宇宙を保つのはむずかしいです。

(研究員)3体問題すら解けない宇宙って変じゃないですかね!!

3つの天体の動きが、計算できないって。

そりゃ根本の考え方が違っているんじゃないかと思うんですよ。

宇宙は、3体問題は発生しないということでです。(言い切った!)

2つの場合は明確にわかるんだから、

すべては2体問題で解決できるんじゃないかと思うんですよ。

(エンディ)

太陽、地球、月といった関係は、

太陽と地球、地球と月って感じの2体問題なら

宇宙全体が全体がスッキリ!します。

(研究員)太陽が月に関与してくると3対問題になって、動きがややこしくなるんだよな。

でも、ニュートンは万有引力っていってるし、
2対問題だけで、すべて説明するのは難しいんじゃないか。

(エンディ)まあそうだけどね

(研究員)太陽は動いているのに、
太陽が止まっているとみなしても

地球は太陽の周りをうまく回ります。

月は、地球の周りを回っていますが、

太陽の周りも地球といっしょに回っています。

しかし。月から見た地球は、止まっているとみなしても、

うまく説明がつきます。問題ありません。

(エンディ)そうだね、慣性の法則ににています。

太陽のトラックの荷台に、惑星が乗っていて、

惑星のトラックの荷台に、衛星が乗っている、

ようなイメージです。

(研究員)うちのカメたちも同じです。

ニュートンの「重力理論」は、

全ての天体は、関連しあって動いている。

つまり、ネットワーク構造です。

ネットワーク構造の場合、宇宙は複雑な動きをするはずです。

しかし、

太陽系の惑星、衛星の動きは、

宇宙は秩序を持って動いています。

言い過ぎかもしれませんが。そのように見えます。

それでは、そのあたりから研究をはじめてみますか。

そうしましょう

コラッツ予想

コラッツ予想とは、以下のような操作を繰り返したときに、どんな自然数でも必ず1に到達するという予想です。

  1. 自然数nを選ぶ。
  2. nが偶数の場合、nを2で割る。
  3. nが奇数の場合、nを3倍して1を加える。
  4. 2または3のいずれかを行った結果得られた数に戻る。

例えば、n=6から始めた場合、以下のような数列が得られます。

6, 3, 10, 5, 16, 8, 4, 2, 1

この数列は最終的に1に到達するため、コラッツ予想は正しいとされています。しかし、現在までこの予想を証明することはできておらず、未解決問題の一つとして知られています。

という、予想です。

証明には、1億円の賞金がかけられています。

とりあえず、pythonでプログラムを作ってみました。

プログラム

import numpy as np

#

#CLASS numCK 数字チェック

#

class numCk:
def ck_num(self,a):

    if (self.even_odd(a)==0):
        x=a/2
        return x,self.even_odd(x)
    else:
        x=(3*a+1)/2
        return x,self.even_odd(x)

def even_odd(self,a):
    if (a % 2==0):
        return 0
    else:
        return 1

#

#Main Routine

#

n=numCk()
i=1
xin=int(input())
(x,m)=n.ck_num(xin)
print (“%d %d x=%d “%(m,i,x))

codd=0
ceven=0
cMax=0

while x !=1:
(x,m)=n.ck_num(x)
i=i+1
if m==0:
ceven=ceven+1
else:
codd=codd+1
if cMax< x:cMax=x
print (“%d %d x=%d “%(m,i,x))

print (“RESULT > in=%d even=%d odd=%d cMax=%d”%(xin,ceven,codd,cMax))

使い方

pythonで上のプログラムを軌道すると、
数字を入力するプロンプトがでてくるので、
そこで、調べたい数字を入力すると、(例えば6を入力した場合)

6
1 1 x=3 
1 2 x=5 
0 3 x=8 
0 4 x=4 
0 5 x=2 
1 6 x=1 
RESULT > in=6 even=3 odd=2 cMax=8

となります。

奇数の3n + 1の部分は偶数になるので、2で割った結果を載せています。

最初の0と1は。0:偶数、1:奇数を表しています。

証明には、かなりの時間が必要かもしれませんなあ

素数の判定

素数判定グラフ
素数判定式

いきなりですが、私なりの素数判定式を作ってみました。
素数は、整数のサイン波の重なりあいでできたうなりの波形ということに気が付き、
上のような式でうなりの波形を作ってみました。

コンピューターで計算すると、フーリエ変換の精度で必ずしも「0」にはならないのですが、
グラフのソフトを使用して、表示すると、上のようなグラフとなります。
上のグラフは、p=7 で計算しました。

結果は、7〜49(=72)までの素数が判定されます。もちろん72は素数ではありませんが。

グラフにする時には、ズームしないと、y=0のラインに張り付いてしまって、目視では、判定が難しいので、
見えるくらいのズーム用定数を掛けた方がいいです。
ちなみに、上のグラフは、ズーム用定数10をかけてあります。

また、n=2,3,4,5,6,7,…でもいいのですが、素数がわかっていればn=2,3,5,7…のように素数を代入した方が効率が良いです。

この方式で計算すれば、たとえば、p=1000にすれば、1000〜1000000までの素数がわかります。

素数は、サイン波のうなりというところが、重要です!

エキセントリックな月軌道についての原因は、軌道のうなりで説明しています。
素数のような整数的なうなりではありませんが、
かなり似たものを感じます。


ポアンカレ予想と宇宙

単連結な3次元閉多様体は3次元球面に同相である。

簡単に言うと、「有限だけれども果てがなく(単連結)、穴のない3次元多様体は、必ず3次元球面(=4次元球の表面)になります。」ってことですが、ちっとも簡単じゃないなあ

これは、すでに証明されているのですが、
宇宙の構造に直結していると言うことなので、面白そうです。

実際には無理ですが、とてつも長いロープをつけたロケットを地球から宇宙に飛ばし、ロケットが戻ってきたら、そのロープを手繰り寄せ、どこにも引っ掛からなかったら、宇宙は球の構造をしているってことです。
そもそも、ロケットにロープをつけるって前提が不可能ですが、イメージということで!

ドーナッツみたいな構造だと、穴で引っかかってロープが手繰り寄せられないので。

そりゃそうですが、宇宙って有限か?
ってところがちょっと引っかかります。

無限だったら、ロケット戻ってこないし!?

おそらく、今の人間の思考では「無限」を正確に理解できないでしょうね。
わたしも、果てがないってわかりません。

今日は、つぶやきでした。

素数は宇宙の秘密かな

素数について

そもそも、
素数って何かは、小学校の頃に習っているので、わかっていると思いますが、
1と自分自身の数字でしか割り切れない正の自然数です。
1は素数ではありません。までは定義なので、
そうかと思わざるを得ないのですが。
具体的には、
2、3、5、7、11、13、17、19、23…と続きます。

また、素数の分布について、「リーマン予想」という有名な予想がありまして、
リーマンゼータ関数零点が、負の偶数と、実部が 1/2 の複素数に限られる」という予想です。
このリーマン予想が証明されれば、
この気まぐれな素数の並び方に何らかの大切な意味が隠かくされていることが明らかになる。
と言われています。
(どうしてかは、私にはわかりませんが)

それどころか、素数は大宇宙が従う自然法則に関わる創造主の暗号ではないか。
と考える人さえいます。

ということで、
素数は宇宙に関係あるのではないかということで、
少し取り上げてみます
。ζ関数(ゼータ関数)やリーマン予想については、専門書を読んでいただかないと、
私の拙い知識では、説明できませんので。

素数について、もう少し語ると、
最近は暗号化技術の中で使用されています。
それは大きな数の素因数分解は難しいというところから、
鍵として使われています。
簡単に言うと、Aさんが鍵3を持っていて Bさんが鍵5を持っているとします。
Aさんが暗号化キー15を送ったすると、Bさんは鍵5で割ってAさんの鍵が3てわかります。
実際は桁数がすごい多い数を使うのですが。
2018年12月現在で知られている最大の素数は、
2018年12月に発見された、
それまでに分かっている中で51番目のメルセンヌ素数 282589933 − 1 で、
十進法で表記したときの桁数は2486万2048桁になります。
気が遠くなりますが。

素数の判定法

与えられた自然数 n が素数であるか合成数であるかを判定するためのアルゴリズムが多数考案されています。
最も素朴な方法は、2 から √n 以下の素数まで順番に割っていく、
試し割りと呼ばれる方法です。
n が √n 以下の全ての素数で割り切れなければ n は素数である。
試し割りは、n が大きくなるに従って、急速に速度が低下するため、
実用的ではありませんが。
任意の数に適用できる試し割りよりも高速なアルゴリズムが考案されています。

また、特殊な形をした数に対してはより高速なアルゴリズムも存在します。
素数判定は、与えられた数が素数であるか否かだけを判定するものですが、
素因数分解とはより強く、
与えられた数の全ての素因数を列挙することでもあります。

ほぼほぼ同じ要領のエラトステネスの篩(ふるい)があります。また、他の判定法としては、

ウィルソンの定理 ― p が素数ならば (p − 1)! ≡ −1 (mod p) が成り立つ。
逆に、整数 p > 1 に対し、(p − 1)! ≡ −1 (mod p) ならば、p は素数である

最大公約数 ー 2つ以上の整数  の最大公約数が1 であるとき、 は互いに素であるという。
公約数は最大公約数の約数である。

ミラー–ラビン素数判定法、AKS素数判定法 などあります。が、よくわかりません。汗

そこで、自分なりの判定法を考えてみました。

ENDY素数判定法

Pn(素数)までの全ての素数がわかっている時、
どこまでの素数が判定できるかという事を考えてみます。

ゾーン1:2からPnの素数は判定済です。

ゾーン2:Pn+1からPn+1^2(非素数) までの数は「判定可能」です。

ゾーン3:Pn+1^2+1 より大きい数は「判定不可能」です。

というゾーンに分かれます。

ゾーン2の判定方法は嗣のように定義します。

f(Pn)=Πsin(πPn/n) n=2,3…Pn+1 → f(Pn)≠0…素数 、f(Pn)=0…非素数

Pn=5をグラフ化すると

となります。グラフの5より大きいゼロでない数(7、11、13、17、19、23…)が素数になります。確実に判定できるのは7の二乗の49(非素数)までです。
その範囲を判定可能領域と呼びます。
この方法は、素数の可視化が簡単ですが、
欠点は、サインを使用しているため、
コンピューターで計算するとフーリエ展開の誤差でうまくゼロにならないところです。
また桁数が大きくなると、グラフが限りなくゼロに近づいていくので、
拡大する定数を掛けないとならないところです。
しかし、理論的には、一つの公式で素数が判別でき、
判定可能領域の素数の数が把握できます。ということは、判定可能領域ごとの素数分布を捉えることが可能ということです。素数の分布を調べてみたので、したのグラフに表す。右側の数字は、その近辺の素数分布率(素数/実際の数字の数)です。

10の場合、Pn=3、次の素数5の二乗25なので 9から25が判定可能範囲なので、その範囲の素数の5個を数えてます。(9から25) 母数に9は含みません。5÷ 16 =31.25

100の場合、Pn=7、次の素数11の二乗の判定可能範囲49から121

1000の場合、Pn=31、次の素数37の二乗の判定可能範囲961から1369

10000の場合、Pn=97、次の素数101の二乗の判定可能範囲9409から10201)

1000000の場合、Pn=997、次の素数1009 の二乗の判定可能範囲994009から1018081

10000000の場合、Pn=3137、次の素数3163 の二乗の判定可能範囲9840769から10004569

でサンプリングしました。

例えば、1,000,000の場合、
1,000の一番近くの素数997の二乗と1009の二乗の間にあります。
Pn=997が決まれば、1,000,000近くの素数の数が分かります。
グラフを見る限り数が大きくなればなるほど、判定可能範囲の数は減っていきます。

さらに大きな数になれば、判定可能範囲は広くなりますが、素数は減ってくるはずです。

ところが、素数は無限にあることは証明されているので、
0%にはならず、有限なところで収束するはずです。

どこか漸近線があるのではないかと推測できます。
限りなくゼロに近づくのでしょうか。

宇宙の構造と素数の因果関係は、
まだ分かりませんが、なんとなく静的エネルギーの減少(Sa=EA/a)に似ている気がします。
何の証明もしていませんが。
遠ざかるほど小さくなるところが。
本質的なところでは、まだ分かりません。

上の素数分布のPythonのプログラムを参考に載せておきます。