- コラッツ予想がとけたらいいな その2
673 :132人目の素数さん[sage]:2019/04/20(土) 06:08:45.05 ID:qXeTVoFa - 自然数xに対してコラッツ展開に似た数列collatz_array(x)を次のようなrubyプログラムで定義する。
def collatz_array(x) if(x==1) then return [] elsif(x%2==0) return [0]+col(x/2) else return [1]+col((x*3+1)/2) end end collaz_array(x)をビット列とみなして2進数の整数に直したものをcollatz_number(x)とする。 collatz_numberはrubyプログラムで次のように定義される。 def collatz_number(x) res=0; x.each_with_index{|v,i|res+=v*(2**i)} return res end 3の倍数でない、かつx==collatz_number(x)となるような自然数xは存在するか?
|
- コラッツ予想がとけたらいいな その2
674 :132人目の素数さん[sage]:2019/04/20(土) 06:11:30.83 ID:qXeTVoFa - ちょっと言ってることがおかしいかもしれない。
ようするにコラッツ展開に対する不動点みたいなものはあるか?という話をしたいのだが
|
- コラッツ予想がとけたらいいな その2
676 :132人目の素数さん[sage]:2019/04/20(土) 06:24:30.09 ID:qXeTVoFa - 朝の6時にスレチェックかよwすげえw
まあ俺も人のこと言えないけどwお疲れ様です。
|
- コラッツ予想がとけたらいいな その2
677 :132人目の素数さん[sage]:2019/04/20(土) 06:30:30.11 ID:qXeTVoFa - 新たな不動点が見つかったら新たなループが見つかるみたいな方向に持っていけたらベストなんだけど。
まあまだぼんやりしたイメージがあるだけです。
|
- コラッツ予想がとけたらいいな その2
678 :132人目の素数さん[sage]:2019/04/20(土) 07:07:33.52 ID:qXeTVoFa - うーん、collatz_arrayの停止条件がx==1だとあんまり意味のない議論になってしまうかもしれないorz
|
- コラッツ予想がとけたらいいな その2
680 :132人目の素数さん[sage]:2019/04/20(土) 08:52:09.89 ID:qXeTVoFa - >>679
意味ないかどうかはまだわかりませんが、先頭nビットについては>>528のような割とはっきりした規則性があるようなので、 規則性の見えなくなる後ろのほうのビットのふるまいを何とかできないかという思いはあります。
|
- コラッツ予想がとけたらいいな その2
681 :132人目の素数さん[sage]:2019/04/20(土) 08:53:34.80 ID:qXeTVoFa - あ、でもnを増やしていったらなんか出てくるんだろうか?
|
- コラッツ予想がとけたらいいな その2
682 :132人目の素数さん[sage]:2019/04/20(土) 09:20:18.07 ID:qXeTVoFa - ちなみに勢いで書いちゃったけど仮に不動点が見つかったとして、それをどう生かせばいいかまだ全然見えてませんw
|
- コラッツ予想がとけたらいいな その2
683 :132人目の素数さん[sage]:2019/04/20(土) 09:23:37.92 ID:qXeTVoFa - 不動点というキーワードでコラッツ展開をみたときに、
ちょうど3が不動点になっていたのでこれが1,4,2のループを表しているのでは? という思い付きというか期待から書き込んでしまいました。
|
- コラッツ予想がとけたらいいな その2
689 :132人目の素数さん[sage]:2019/04/20(土) 13:21:28.65 ID:qXeTVoFa - とりあえず、2-進整数の厳密な定義ってどこかにあります?
四則演算とかも含めて。
|
- コラッツ予想がとけたらいいな その2
690 :132人目の素数さん[sage]:2019/04/20(土) 13:27:40.12 ID:qXeTVoFa - ハスケルは遅延評価があるんでしたっけ?
ルビーにもあったかな?
|
- コラッツ予想がとけたらいいな その2
692 :132人目の素数さん[sage]:2019/04/20(土) 13:52:34.74 ID:qXeTVoFa - 2-進整数、使えそうなら使いたいですね
でも2-進整数にしちゃうと不動点のアイディアをどう扱えばいいかわからなくなるかなぁ?
|
- コラッツ予想がとけたらいいな その2
694 :132人目の素数さん[sage]:2019/04/20(土) 14:04:10.33 ID:qXeTVoFa - なるほど、わからんw
|
- コラッツ予想がとけたらいいな その2
695 :132人目の素数さん[sage]:2019/04/20(土) 14:08:48.97 ID:qXeTVoFa - 自力実装は相当厳しいかなこりゃ。
|
- コラッツ予想がとけたらいいな その2
696 :132人目の素数さん[sage]:2019/04/20(土) 15:43:16.25 ID:qXeTVoFa - まともにやるとクソ難しそうなのでとりあえずコラッツ展開を分数で表現してみた
def collatz_rational(x) l=x.length res=0r x.reverse.each_with_index{|v,i|res+=v*(1/2r)**(i+1)} res+=((1/2r)**l)*1/3r return res end def collatz_rational_array(x,l) res=[] (0...l).each{|i| if(x>=1/2r) then x-=1/2r res<<1 else res<<0 end x*=2r } return res.reverse end (1..1000).each{|x| a=collatz_array(x) l=a.length r=collatz_rational(a) b=collatz_rational_array(r,l) if(a!=b) then print "#{x} #{r} #{a} #{b}\n" end }
|
- コラッツ予想がとけたらいいな その2
697 :132人目の素数さん[sage]:2019/04/20(土) 15:48:17.01 ID:qXeTVoFa - でも分数にしたところで不動点のアイディアとどう結び付けていいかわからぬw
まあもともと不動点はそれほど目があるアイディアじゃないかもだけど
|
- コラッツ予想がとけたらいいな その2
698 :132人目の素数さん[sage]:2019/04/20(土) 16:03:08.59 ID:qXeTVoFa - ありゃ、バグがあるっぽい
すまん、直す
|
- コラッツ予想がとけたらいいな その2
699 :132人目の素数さん[sage]:2019/04/20(土) 17:07:12.41 ID:qXeTVoFa - https://ideone.com/NutoVQ
うーん、こうかな?
|
- コラッツ予想がとけたらいいな その2
700 :132人目の素数さん[sage]:2019/04/20(土) 17:09:11.57 ID:qXeTVoFa - ちょっと疲れたw
休憩w
|
- コラッツ予想がとけたらいいな その2
701 :132人目の素数さん[sage]:2019/04/20(土) 18:15:52.88 ID:qXeTVoFa - スタートは不動点だったはずだが脱線してしまったなw
うーん、どうしよう
|
- コラッツ予想がとけたらいいな その2
704 :132人目の素数さん[sage]:2019/04/20(土) 21:01:20.91 ID:qXeTVoFa - 不動点ということは繰り返し処理をかけても変わらないということですが、
コラッツ展開に対してさらにそのコラッツ展開を求めることに何の意味があるのかが不明瞭なのが現状痛いですね。 そこに何らかの意味が見いだせればもう少し面白くなるのですが
|