コラッツ予想がとけたらいいな
■ このスレッドは過去ログ倉庫に格納されています
525 名前:132人目の素数さん[sage] 投稿日:2012/09/03(月) 18:24:27.22 http://d.hatena.ne.jp/righ1113/ コラッツ予想について、証明を考えてみました。 ご指摘ご意見ご感想など、ぜひよろしくお願いします。 ご指摘のとおり、3x-1問題との違いについて考えてみました。 3x-1では、奇数間増大がピークアウトした直後の奇数がまた別の奇数間増大の始まりとなっている これが 5→7→5 でも 17が55でピークアウトした直後の41が 91でピークアウトする 奇数間増大の開始にあたっていて、奇数間増大、ピークアウト、一回減少、別の奇数間増大 を繰り返しこの5→7→5または 17→91→17へ入ってくるのです。これは単純計算で求まります。 3x-1では奇数間増大は{(4a+1)×3-1}÷2=6a+1 です 4(4a)+1 は更に増大します。これは 8b+1→12b+1でピークアウトする のですが、12b+1=4(3b)+1でまた増大の始まりとなります。 41→61→91(ピーク)→17(55までの増大開始)→55(ピーク)→41(増大開始) となっています。5(増大開始)→7(ピーク)→5(増大開始) この問題は心底、戦慄を覚える、ほんとうに恐ろしい問題です。 しかし拙論も途轍もなく恐ろしいものを含んでいますよ。ぜひご一読を。 結果は 1、予想どおり1に収束する 2、無限大に発散する 3、ある数でループする、あるいは、ある複数の数たちでループする ほかにはどんな場合が…? 3x+1も3x-1も本質的に同じだというのはご指摘の通りだと思います。 その証拠に3x+1も1→1でループするのは同じです。 ただ、奇数間増大のピークを奇数間増大のピーク以外を解決済みに しておいてから、奇数間増大のピークを小さい方から調べていけば自分より 小さいピークは解決済みとできるのが3x+1問題なのであって、すべて1→1 のループに至るというのが結論です。3x-1問題では1から逆に辿っていくと、 5も7も17も到達できないことが解り、アレッ?と思うでしょう。(もっとも全数をチェックできるわけは ないが) もっとも全数をチェックできるわけは ないが→コラッツ予想とその類題は 1から逆に辿ることによって増加分は或る範囲に限定されるので積み重ねに よって無限に至るまでチェックできます。 323>> 拙論に出てくるg(h(a,q),c)は具体的に書くと、初項が4a+3または8a+1 、漸化式がX(n+1)=X(n)×4+1 の奇数列で、さらに具体的に書くと 4a+3,16a+13,64a+53,256a+213.... および8a+1,32a+5,128a+21,512a+85... となるので、貴論でいうbit pattern of left edge は拙論の 2^n・aの部分が それですね。 3x+1問題では 2a+1→.....2c+1 が存在すれば 2^n・b+2a+1 →.....2・3^m・b+2c+1 が必ず存在します(nは 2a+1→.....2b+1 の間で2で割り切れた回数の通算、mは3倍して1を足した回数) (逆も真)。しかしながら 2^n・b+2a+1=2・3^m・b+2c+1としても2^2n・b+2a+1≠2・3^2m・b+2c+1だからループできないので b=0しかループできない。しかも2a+1≠2c+1でもあるからこれもループできない。 それでは一体b=0で表せる範囲とは一体何なんだ。ここを追及していくと拙論のような ものになるのです。畏れ多くもフェルマー大先生の無限降下法の逆で無限上昇方とでもいうべき 考え方を含んでいます。 b=0でしか表せない範囲というのはコラッツ予想の題意のとおりの演算 によってどんどん狭まっていきます。コラッツ予想の題意の反対の演算 によってどんどん拡大していきます。この範囲というのが単純な大小関係では 表せないだけで抽象的な大小関係を想定すればいくら拡大しても無限上昇法 でループが存在しないことが言える。2^n・b+2a+1>2a+1が単純な大小関係では なくこの抽象的な大小関係も表すようにこの抽象的大小関係というものを規定して やることが必要です。 V2,V3,……Vn-1,Vnを奇数とした時 V1→V2→V3……→Vn-1 とループせずに来れば、Vn-1の次に来るVnが V2,V3,……Vn-1の何れでもあり得ないことは簡単に言えます。 (これらはいずれもVn-1の次ではないから) ただ問題はVn=V1 ではないかという疑いだけです。拙論では V1=∞という状況を作り出した上でそれでもVnは今まで出てきた奇数では あり得ないということを論旨の中心に据えました 空舟さんへのお返事です。 > DD++さんへのお返事です。 > 以下省略 http://koubeichizoku.doujin.so/collatz/collatz3.htm 大幅改定いたしました。 i(a,q)がどのL(a',q')に含まれるかという事を考えるのはやめました。かわりに 相異なるCola(a,q)を実行することは、相異なるG(h(a,q))をi(a,q)を含むL(a',q')に、下から 積み重ねていく、まるで南部俵積唄みたいな作業なんだと考えることとしました。 これでも任意のL(a,q)は相異なるG(h(a',q'))の直和集合であり、全正奇数の真部分集合である。 任意のL(a,q)は重複元を持たない。 また任意のL(a,q)とL(a',q')は互いに素である。以上が成立することに変りはありません。 http://koubeichizoku.doujin.so/collatz/collatz3.htm g(h(a,0),1)=4a+3, g(h(a,0),2)=16a+13, g(h(a,0),3)=64a+53 g(h(a,0),4)=256a+213 .... g(h(a,1),1)=8a+1, g(h(a,1),2)=32a+5, g(h(a,1),3)=128a+21 g(h(a,1),4)=512a+85 .... で、 g(x,n+1)=4・g(x,n)+1 i(a,1)=6a+1 i(a,0)=6a+5 j(g(h(a,q),c)→i(a,q) は全射であるが、単射ではない、 G(h(a,q)):={g(h(a,q),c|c=1,2,3,...∞} j(v∈G(h(a,q)))=i(a,q) j-1[i(a,q)]=G(h(a,q)) i(a,q)→G(h(a,q))全単射 添字集合G(h(a,q))を1個の数のように扱ってしまえばこれら剰余類の間のせめぎ合いも かなり抽象化されて量子化のカオスのような状態から抜け出せるような気がしてなりません。 個々の特性は一切無視して、とにかく任意のG(h(a,q))は全正奇数の真部分集合であり、 i(a,q)を媒介として直和された相異なるG(h(a,q))の直和集合もまた全正奇数の真部分集合で、 互いに素であると言うところだを強烈にガン見するわけです。 今日こたつを出しました。 って去年も書いた気がするな。 反証を見つけた方が早そうだ。 反証が見つかると思うんだけどなぁ。無限に大きくなるようなものは見つからないだろうけど ループする奴はどこかにあるような? 例えば1,2,4のループ以外でループがあるとして、 そのループはこれこれの条件を満たさなければいけない みたいな結果はどれくらいあるの? 1,2,4のループ以外では、ループする場合の最小の奇数は、 4m+3型の奇数であることは言える。 >>346 http://deweger.xs4all.nl/papers/%5B35%5DSidW-3n+1-ActaArith%5B2005%5D.pdf 結果だけ言うと 整数で、3倍して1足したすぐ後に2回以上2で割れる操作が68回以下のものはない って論文で、 2回以上2で割れると元の数よりは小さくなので、割って減少する回数は少なくとも69回以上あるってことだ しかも、この論文古いからもっと回数は増えてるかもな いまさらこたつとかおそいよもっと早くしまえ。 それからコラッツのほうは進展あったのか? http://taibuturi.fuma-kotaro.com/ の一番した test12.pdf がコラッツ予想の の半分の証明です 上のほうは リーマン予想の証明だったりする 自分では考えまくった と思います 間違っている可能性もあります >>350 僕のほうは>>323 でコラッツ予想の証明を完成しています。 他に、別の方が、>>352 で、コラッツ予想がLoopしない証明を載せています。 >>353 英語8ページか…意外と短い 余力があれば日本語版もオナシャス 例えば、>>323 の証明をCoqで検証するとかいうのはやってみる気ない? 素人の俺には証明に穴がないか検証するのは難しいが、 Coqで証明が検証されたとなれば信頼度がだいぶ変わってくる。 Coq https://ja.wikipedia.org/wiki/Coq すごいことになってる。 しばらく考えさせて下さい。 いえ、Coqで検証なんて、 思い付きもしなかったもんで。 Coqはめちゃくちゃ難しいぞ まあ数板にスレがあるから行ってみれ 寂れてるけど スレ違いですが 奇数の完全数がないことまで 同様の手法で示せました http://taibuturi.fuma-kotaro.com/ 手始めにコラッツ数列を計算する関数。 Require Import Coq.Program.Wf. Require Import Omega. Program Fixpoint collatz03 (x y : nat) {measure y} : list nat := match y with | 0 => 0::nil | _ => match x with | 0 => 0::nil | 1 => 1::nil | _ => if Nat.odd x then (3*x+1) :: collatz03 (3*x+1) (y-1) else (x/2) :: collatz03 (x/2) (y-1) end end. Next Obligation. omega. Qed. Next Obligation. omega. Qed. ここまでで3日かかりました。www クエリで Eval compute in collatz03 9 20 → Result for command Eval compute in collatz03 9 20 . : = (28 :: 14 :: 7 :: 22 :: 11 :: 34 :: 17 :: 52 :: 26 :: 13 :: 40 :: 20 :: 10 :: 5 :: 16 :: 8 :: 4 :: 2 :: 1 :: 1 :: nil)%list : list nat 頑張れ〜 もしCoqで証明が成功したらマジですごい。 Coqスレの1である片山博文MZも仲間に引き入れられれば 色々教えてもらえるかもね。 >>360 ところどころ何が言いたいかよくわからんが、とりあえず明確な間違いが一つ。 mod p^2 で 1 + p = n(l + kp) より nl = 1(mod p), nk = 1(mod p) というところ。 nl = 1(mod p) は言えるが nk = 1(mod p) とは限らない。 例えば nl = p+1 の場合とか。 流れぶったぎってすまんが ・ある自然数が100以下の素因数を持っていれば全て削る ・持ってなければ3n+1の操作を施す みたいな問題から考えてくアプローチを思いついたんだけどこれって既出? ¥ >性犯罪者の増田哲也(50歳・東京都足立区千住寿町)が >8月4日にJR牟岐線の列車内で、午後4時20分ごろから約50分にわたり、 >徳島県内の女性(21歳・専門学校生)の胸や太ももなどを触った疑いで、 >8月5日未明、県迷惑行為防止条例違反(痴漢行為)容疑で徳島県警阿南署に >逮捕されました。 > >性犯罪者 増田哲也の供述 >「夏休み期間に、講演活動を兼ねて旅行していた。好みの女性だったのでムラムラした」 > >>377 多分初めてだとおもうが、なにか成果が出そうなのか? >>376 ありがとう 気づかなかった 間違いですね ¥ >性犯罪者の増田哲也(50歳・東京都足立区千住寿町)が >8月4日にJR牟岐線の列車内で、午後4時20分ごろから約50分にわたり、 >徳島県内の女性(21歳・専門学校生)の胸や太ももなどを触った疑いで、 >8月5日未明、県迷惑行為防止条例違反(痴漢行為)容疑で徳島県警阿南署に >逮捕されました。 > >性犯罪者 増田哲也の供述 >「夏休み期間に、講演活動を兼ねて旅行していた。好みの女性だったのでムラムラした」 > >>379 や、まだ全然。多分簡単な問題から始めたら解決の糸口見つかるかなーと思ったけど コラッツ問題の闇の深さを垣間見ることになっただけだった… もし興味ある人いたら考えてみてくれ ¥ >性犯罪者の増田哲也(50歳・東京都足立区千住寿町)が >8月4日にJR牟岐線の列車内で、午後4時20分ごろから約50分にわたり、 >徳島県内の女性(21歳・専門学校生)の胸や太ももなどを触った疑いで、 >8月5日未明、県迷惑行為防止条例違反(痴漢行為)容疑で徳島県警阿南署に >逮捕されました。 > >性犯罪者 増田哲也の供述 >「夏休み期間に、講演活動を兼ねて旅行していた。好みの女性だったのでムラムラした」 > ¥ >性犯罪者の増田哲也(50歳・東京都足立区千住寿町)が >8月4日にJR牟岐線の列車内で、午後4時20分ごろから約50分にわたり、 >徳島県内の女性(21歳・専門学校生)の胸や太ももなどを触った疑いで、 >8月5日未明、県迷惑行為防止条例違反(痴漢行為)容疑で徳島県警阿南署に >逮捕されました。 > >性犯罪者 増田哲也の供述 >「夏休み期間に、講演活動を兼ねて旅行していた。好みの女性だったのでムラムラした」 > ¥ >性犯罪者の増田哲也(50歳・東京都足立区千住寿町)が >8月4日にJR牟岐線の列車内で、午後4時20分ごろから約50分にわたり、 >徳島県内の女性(21歳・専門学校生)の胸や太ももなどを触った疑いで、 >8月5日未明、県迷惑行為防止条例違反(痴漢行為)容疑で徳島県警阿南署に >逮捕されました。 > >性犯罪者 増田哲也の供述 >「夏休み期間に、講演活動を兼ねて旅行していた。好みの女性だったのでムラムラした」 > ¥ >性犯罪者の増田哲也(50歳・東京都足立区千住寿町)が >8月4日にJR牟岐線の列車内で、午後4時20分ごろから約50分にわたり、 >徳島県内の女性(21歳・専門学校生)の胸や太ももなどを触った疑いで、 >8月5日未明、県迷惑行為防止条例違反(痴漢行為)容疑で徳島県警阿南署に >逮捕されました。 > >性犯罪者 増田哲也の供述 >「夏休み期間に、講演活動を兼ねて旅行していた。好みの女性だったのでムラムラした」 > ¥ >性犯罪者の増田哲也(50歳・東京都足立区千住寿町)が >8月4日にJR牟岐線の列車内で、午後4時20分ごろから約50分にわたり、 >徳島県内の女性(21歳・専門学校生)の胸や太ももなどを触った疑いで、 >8月5日未明、県迷惑行為防止条例違反(痴漢行為)容疑で徳島県警阿南署に >逮捕されました。 > >性犯罪者 増田哲也の供述 >「夏休み期間に、講演活動を兼ねて旅行していた。好みの女性だったのでムラムラした」 > ¥ >性犯罪者の増田哲也(50歳・東京都足立区千住寿町)が >8月4日にJR牟岐線の列車内で、午後4時20分ごろから約50分にわたり、 >徳島県内の女性(21歳・専門学校生)の胸や太ももなどを触った疑いで、 >8月5日未明、県迷惑行為防止条例違反(痴漢行為)容疑で徳島県警阿南署に >逮捕されました。 > >性犯罪者 増田哲也の供述 >「夏休み期間に、講演活動を兼ねて旅行していた。好みの女性だったのでムラムラした」 > ¥ >性犯罪者の増田哲也(50歳・東京都足立区千住寿町)が >8月4日にJR牟岐線の列車内で、午後4時20分ごろから約50分にわたり、 >徳島県内の女性(21歳・専門学校生)の胸や太ももなどを触った疑いで、 >8月5日未明、県迷惑行為防止条例違反(痴漢行為)容疑で徳島県警阿南署に >逮捕されました。 > >性犯罪者 増田哲也の供述 >「夏休み期間に、講演活動を兼ねて旅行していた。好みの女性だったのでムラムラした」 > ¥ >性犯罪者の増田哲也(50歳・東京都足立区千住寿町)が >8月4日にJR牟岐線の列車内で、午後4時20分ごろから約50分にわたり、 >徳島県内の女性(21歳・専門学校生)の胸や太ももなどを触った疑いで、 >8月5日未明、県迷惑行為防止条例違反(痴漢行為)容疑で徳島県警阿南署に >逮捕されました。 > >性犯罪者 増田哲也の供述 >「夏休み期間に、講演活動を兼ねて旅行していた。好みの女性だったのでムラムラした」 > 一応直しておきました まだ途中ですので まちがっているかもしれません ¥ >性犯罪者の増田哲也(50歳・東京都足立区千住寿町)が >8月4日にJR牟岐線の列車内で、午後4時20分ごろから約50分にわたり、 >徳島県内の女性(21歳・専門学校生)の胸や太ももなどを触った疑いで、 >8月5日未明、県迷惑行為防止条例違反(痴漢行為)容疑で徳島県警阿南署に >逮捕されました。 > >性犯罪者 増田哲也の供述 >「夏休み期間に、講演活動を兼ねて旅行していた。好みの女性だったのでムラムラした」 > ¥ >性犯罪者の増田哲也(50歳・東京都足立区千住寿町)が >8月4日にJR牟岐線の列車内で、午後4時20分ごろから約50分にわたり、 >徳島県内の女性(21歳・専門学校生)の胸や太ももなどを触った疑いで、 >8月5日未明、県迷惑行為防止条例違反(痴漢行為)容疑で徳島県警阿南署に >逮捕されました。 > >性犯罪者 増田哲也の供述 >「夏休み期間に、講演活動を兼ねて旅行していた。好みの女性だったのでムラムラした」 > ¥ >性犯罪者の増田哲也(50歳・東京都足立区千住寿町)が >8月4日にJR牟岐線の列車内で、午後4時20分ごろから約50分にわたり、 >徳島県内の女性(21歳・専門学校生)の胸や太ももなどを触った疑いで、 >8月5日未明、県迷惑行為防止条例違反(痴漢行為)容疑で徳島県警阿南署に >逮捕されました。 > >性犯罪者 増田哲也の供述 >「夏休み期間に、講演活動を兼ねて旅行していた。好みの女性だったのでムラムラした」 > まだCoq練習フェーズです。 Theorem m11_isnot_prime01: forall (P Q R :Prop), (P->Q) -> (Q->R) -> (~R->~Q). (* proof. *) intros. cbv. intro. cbv in H1. apply H0 in H2. apply H1 in H2. apply H2. Qed. Theorem m11_isnot_prime01': forall (P Q R :Prop), (P->Q) -> (Q->R) -> (~R->~Q). (* proof. *) intro. intro. intro. intro. auto. Qed. Theorem m11_isnot_prime02: forall (Q R :Prop), (Q->R) -> (~R->~Q). (* proof. *) auto. Qed. Theorem m11_isnot_prime03: forall (P Q R :Prop), (P=Q) -> (P->R) -> (Q->R). (* proof. *) intros. rewrite H in H0. apply H0 in H1. apply H1. Qed. やったーカリーのパラドックスが解けたよー Lemma l1: forall (X Y Z:Prop), (X->X->Y) -> X=(X->Y) -> X. Proof. intros. rewrite H0. intro. apply H in H1. apply H1. apply H1. Qed. Theorem curry's_paradox: forall (X Y:Prop), X=(X->Y) -> Y. Proof. intros. assert(X->X). auto. pattern X at 2 in H0. rewrite H in H0. apply (l1 X Y) in H0. pose H0. rewrite H in x. apply x in H0. apply H0. apply X. apply H. Qed. Zいらないっすね。 Lemma l1: forall (X Y:Prop), (X->X->Y) -> X=(X->Y) -> X. Proof. intros. rewrite H0. intro. apply H in H1. apply H1. apply H1. Qed. Theorem curry's_paradox: forall (X Y:Prop), X=(X->Y) -> Y. Proof. intros. assert(X->X). auto. pattern X at 2 in H0. rewrite H in H0. apply (l1 X Y) in H0. pose H0. rewrite H in x. apply x in H0. apply H0. apply H. Qed. なかなか頑張ってますな。 正直すぐ投げ出すんじゃないかと侮っていたよ。 証明で詰まると苦しいけど、 Coqで証明できると楽しいです。 のんびりと、Coqでのコラッツ予想検証に取り掛かりたいと思います。 >>323 の僕の証明の流れは、次のようになっています。 1.イントロダクション 2.コラッツパターンXsの定義 3.左端を伸ばすパターンYsの定義 4-1.コラッツパターンと左端を伸ばすパターンのずれを定義する 4-2.シミュレーションA−xsAを定義する 4-3.シミュレーションB−ysBを定義する 4-4.[log Xs] - [log Ys] <= [log(xsA * 2^pxs)] - [log(ysB * 2^pys)] を証明する (この式の右辺が有限値なら、コラッツパターンと左端を伸ばすパターンのずれも有限値となる。) 5.ずれが有限という仮定で、コラッツ予想で4-2-1以外のLoopがない事を証明する 6.ずれが有限という仮定で、コラッツ予想で無限大に発散する数がない事を証明する 7. 4-4の右辺が有限値であることを、Haskellで証明する 「繰り上がりがあったりなかったりするから」とか、図から補題を証明していたりするので、 全てをCoqで検証・証明するのは難しいと考えています。 まずは4-4からやっていこうと思います。 4-4その1 前提として、コラッツパターンXsよりシミュレーションAが大きい、というのがあります。 理由は、コラッツパターンの下位からの繰り上がりがあったりなかったりするのに対して、 シミュレーションAは、常に下位からの繰り上がりがあるからです。 なので、pxs=log Xs - bit + aが成り立つのですが、前述の理由によりa>=0です。 (これは>>323 には書いてないです。Coqで証明するために変えました。) という訳でCoqでの証明です。 Require Import Omega. Theorem Xs_ge_xsA: forall (Xs a bit pxs xsA: nat), 0<xsA -> 0<=pxs -> Nat.log2 Xs +1 <= Nat.log2 Xs +1 +a -> pxs = Nat.log2 Xs +1 -bit +a -> bit = Nat.log2 xsA +1 -> Nat.log2 Xs +1 <= Nat.log2 (xsA*(2^pxs)) +1. Proof. intros. rewrite (Nat.log2_mul_pow2 xsA pxs). all: cycle 1. apply H. apply H0. rewrite H2. rewrite H3. omega. Qed. これで、コラッツパターンよりシミュレーションAが大きいという事実のもとで、 [log Xs] <= [log xsA*(2^pxs)]が示せました。 4-4その2 前提として、シミュレーションBより左端を伸ばすパターンが大きい、というのがあります。 理由は、左端を伸ばすパターンの下位からの繰り上がりがあったりなかったりするのに対して、 シミュレーションBは、常に下位からの繰り上がりがないからです。 なので、pys=log Ys - bit - aが成り立つのですが、前述の理由によりa>=0です。 (これは>>323 には書いてないです。Coqで証明するために変えました。) という訳でCoqでの証明です。こちらはZ_scopeで証明しています。 Require Import Omega. Open Scope Z_scope. Theorem ysB_ge_Ys: forall (Ys a bit pys ysB:Z), 0<ysB -> 0<=pys -> Z.log2 Ys +1 -a <= Z.log2 Ys +1 -> pys = Z.log2 Ys +1 -bit -a -> bit = Z.log2 ysB +1 -> Z.log2 (ysB*(2^pys)) +1 <= Z.log2 Ys +1. Proof. intros. rewrite (Z.log2_mul_pow2 ysB pys). all: cycle 1. apply H. apply H0. rewrite H2. rewrite H3. omega. Qed. Open Scope nat_scope. これで、シミュレーションBより左端を伸ばすパターンが大きいという事実のもとで、 [log ysB*(2^pys)] <= [log Ys]が示せました。 Ys<=Xsは自明なので、 よって[log Xs] - [log Ys] <= [log(xsA * 2^pxs)] - [log(ysB * 2^pys)]となります。 4-4は以上になります。 次に7.をやろうと思います。>>232-241 あたりです。 ビット数はbit=10です。 xsAの0ステップ目を1111111111、ysBの0ステップ目を0000000001として (ずれが0で一番差が開いている数)ステップを重ねると、 xsAは115ステップ目が3ステップ目と一致して以後繰り返しになります。 xsBは93ステップ目が3ステップ目と一致して以後繰り返しになります。 その区間の最上位繰り上がりの可否を、大きい繰り返しになるまで調べます。 Haskellでやった時は、ずれの最大値は2でした。 Coqはこれからやります。 微妙にステップ数が違ってました。 xsAの0ステップ目を1111111111、ysBの0ステップ目を0000000001として (ずれが0で一番差が開いている数)ステップを重ねると、 xsAは113ステップ目が2ステップ目と一致して以後繰り返しになります。 xsBは91ステップ目が2ステップ目と一致して以後繰り返しになります。 colPattAの第二要素でHaskellとCoqでdiffを取ったので大丈夫だと思います。 Coqですが、関数定義は省略します。Haskellのとそんなに変わらないです。 Theorem colPattA_2_eq_113: last (iterate 2 colPattA ((1::1::1::1::1::1::1::1::1::1::nil),0)) = last (iterate 113 colPattA ((1::1::1::1::1::1::1::1::1::1::nil),0)). Proof. compute. reflexivity. Qed. Theorem colPattB_2_eq_91: last (iterate 2 colPattB ((0::0::0::0::0::0::0::0::0::1::nil),0)) = last (iterate 91 colPattB ((0::0::0::0::0::0::0::0::0::1::nil),0)). Proof. compute. reflexivity. Qed. これで小さい繰り返しはクリアできました。 なんかうまくいきません。 ずれが際限なく増えていきます。 なんとかできました。 colPattAは繰り返しの項数が111、colPattBは繰り返しの項数が89です。 colPattA*89=9879項、colPattB*111=9879項にして大きい繰り返しにします。 倍の19758項も用意しておきます。 これを初期ずれx=1、x+colPattA-colPattB < 定数 かを9879項、19758項調べるのですが、 途中colPattBが勝ってxが負になる可能性があるので、初期ずれx=2とします。 Definition colPattA2nd_1 : list nat := cycle 89 nil (tail (tail (tail (map snd (iterate 113 colPattA ((1::1::1::1::1::1::1::1::1::1::nil),0)))))). Definition colPattA2nd_2 : list nat := cycle (89*2) nil (tail (tail (tail (map snd (iterate 113 colPattA ((1::1::1::1::1::1::1::1::1::1::nil),0)))))). Definition colPattB2nd_1 : list nat := cycle 111 nil (tail (tail (tail (map snd (iterate 91 colPattB ((0::0::0::0::0::0::0::0::0::1::nil),0)))))). Definition colPattB2nd_2 : list nat := cycle (111*2) nil (tail (tail (tail (map snd (iterate 91 colPattB ((0::0::0::0::0::0::0::0::0::1::nil),0)))))). 逆に証明を突き詰めていったら反例がみつかったなんてこともあるかもね。 それならそれで面白いが。 >>232-241 の通り、手計算ではうまくいくんです。 それをCoqに落とし込むのに手間取っています。 >>411 は無しでお願いします。 >>237-238 を見て、colPattA*5=555項、colPattB*6=534項にして大きい繰り返しにします。 この区間のずれの最大値が2、末項が1になったので、大きい繰り返しを何度繰り返しても、ずれは2以下です。 Definition colPattA2nd : list nat := cycle 5 nil (tail (tail (tail (map snd (iterate 113 colPattA ((1::1::1::1::1::1::1::1::1::1::nil),0)))))). Definition colPattB2nd_1 : list nat := cycle 1 nil (tail (tail (tail (map snd (iterate 91 colPattB ((0::0::0::0::0::0::0::0::0::1::nil),0)))))). Definition colPattB2nd_2 : list nat := cycle 6 nil (tail (tail (tail (map snd (iterate 91 colPattB ((0::0::0::0::0::0::0::0::0::1::nil),0)))))). Theorem p_misalignment_first: misalignment_max_last 1 1 colPattA2nd colPattB2nd_1 = (2, 1). Proof. compute. reflexivity. Qed. Theorem p_misalignment_second: misalignment_max_last 1 1 colPattA2nd colPattB2nd_2 = (2, 1). Proof. compute. reflexivity. Qed. 7.もできました。 やっぱりうまくいってないみたいです。 >>237-238 の手計算も間違っていました。 ビット数を増やすという切り札があるので、それをやってみます。 Coqはウソつかないんですねー 俺は>>1 が>>1 証明のほころびからコラッツ予想の反例を見つけるというストーリーを期待しているw ブールピタゴラス問題も真っ青の反例ループのサイズが200TB超えとかを希望w ビット数を増やしても、ずれが際限なく増えていく〜〜 ずれの計算では上手く行くわけがないって、ずっと前に指摘されてたじゃん。 何をいまさら。こんなやり方でコラッツの予想が解けるわけがない。 仮にずれの計算でうまくいかなかったとしても>>1 は修正してくるだろう。 Coqがあれば間違った証明は通らないだろうしいくらでも頑張れる環境がある。 コラッツの予想が解けるのは時間の問題だな。 まだ思いつきのレベルなんであれですが…… 5bitで考えて、さらに命題を一つ考えます。 (★)「下位からの繰り上がりは、2ステップ連続では起こらない」 これでcollatzPatternA2とBを計算すると、Loopが両方とも7項で4繰り上がりになって、 いくら繰り返してもずれは増大しません。 *CollatzPatt> collatzPatternA2 繰り上がりなし、あり、なし、あり、…… [([1,1,1,1,1],0,0),([1,1,1,0,1],1,1),([1,0,0,0,1],1,0),([1,0,0,1,1],0,1),([1,1,0,0,1],1,0),([0,0,1,1,1],0,1),([1,0,1,0,1],1,0),([1,1,1,1,1],0,1)] *CollatzPatt> map snd3 collatzPatternA2 [0,#1,1,0,1,0,1,0] *CollatzPatt> collatzPatternB [([0,0,0,0,1],0),([0,0,0,1,1],0),([0,1,0,0,1],1),([1,1,0,1,1],0),([0,0,1,0,1],1),([0,1,1,1,1],0),([0,1,1,0,1],1),([0,0,0,0,1],1)] *CollatzPatt> map snd collatzPatternB [0,#0,1,0,1,0,1,1] まだHaskellなのはご容赦を。 CoqよりHaskellのほうが書きやすいのか。 どっちも難しそうだが。 ■ このスレッドは過去ログ倉庫に格納されています
read.cgi ver 07.5.1 2024/04/28 Walang Kapalit ★ | Donguri System Team 5ちゃんねる