コラッツ木生成ツールの仕様は変遷している

コラッツ木生成ツールは仕様が変遷しているので,どの版をベースとして進めるかを決めておかなくてはならない.2022-03-10という版は「三本桜の復活」という方向に向かう途上と考えられるが,2022/04/05で方向転換して「銀河系の再構築」に切り替えている.この辺りから「コラッツ中核木」という言葉が使われ始めている.

実際,アプリのボタンにもCoreという語が用いられているのだが,この「中核木」というのは,完全木なのか?仮想木(長子木)なのか?⇒中核木=長子木でよい.やはり「長子木」と呼んだ方が直観的で間違いないような気がする.もう一つ分かりづらいのが「完全木」だ.「完全木は1を含む」という記述もあり,「中核木から1を除外した部分木は完全正則木の条件を満たす」という記述も見られる.整理しておこう.

  1. コラッツ一般木:すべての奇数を含むコラッツ木(偶数を除外)
  2. コラッツ仮想木:コラッツ数(長子ノード)のみを含むコラッツ木
  3. コラッツ完全木:3倍数を含まないコラッツ木→ユニバーサルアドレス

仮想木=中核木であり,仮想木から1を除いたものを長子木とする.(長子木は完全正則である)長子ノードとはコラッツ一般木上の兄弟ノードのうちの最右ノードであり,コラッツ仮想木はコラッツ一般木の縮約グラフである.長子ノード(1を含む)はコラッツ数と呼ばれる.ただし,「コラッツ数」を「完全木上のノード」としているところもある.これはSultanのコラッツ数の定義と一致する.2022/03/29「素数pとその倍数を除去したコラッツ完全木」には,以下のような記述がある.

前提:ある任意の素数Pより小さい素数はすべてコラッツ数である
帰結:素数Pより大きい素数で最小のものをP’とするとき,素数P’はコラッツ数である

これは数学的帰納法を証明に適用しようとする試みだが,望みはあるだろうか?※ともかく,コラッツツールの最終版を見て,どこまで進んでいたのかを確認しておこう.この版はV3.0.3となっているが,もう少し新しい版がある.CollatzCoreTree 2022-04-16 というのがとりあえず最新版のようだ.ただし,バージョン番号はV3.0.3で変わりない.

※すべての自然数からなるコラッツ全体木から2の倍数を縮約/除去したものをコラッツ一般木,3の倍数を縮約/除去したものをコラッツ完全木とすれば,コラッツ全体木から素数p以下のすべての素数の倍数を縮約/除去したグラフは連結な無限木を構成すると考えられる.このグラフのノードはすべてkより大きい素数のみからなる整数である.

動かしてみよう.⇒A面では正則木が出力される.デフォルト設定の ルート=1,枝数=4,樹高=5で,Max node count=1365を実行すると,カード数:373の3-正則木が出力された.どうもよくわからない.Max-branches=4で3-正則では数字が合わない.画面に表示されているMax node count=1365が何を意味しているのかもよくわからない.Core treeをオンにすると,342点の4-正則木が出力された.ただし,1の直下には5しかないので,厳密には正則木ではない.

Max node countには無効ノードカウント(void node count)が入っているため大きくなっているのだろう.有効ノードカウント(valid node count)と無効カウントを足すと,Max node countになっている.有効ノードカウントは出力データの有効カード数と一致している.Core tree(中核木)は長子木を指しているのだろう.この図版には3倍数が114点含まれている.(3倍数が長子ノードになる場合がある)

image

このグラフの樹高は実際には6になっているのに,設定が5というのもあまりうれしくない.それを除けば,大体のところは整合しているようだ.Core treeを指定しないときの出力が3-正則になっているというのはどういうことだろう.⇒core treeでないときでも,樹高は5になっているので,ルートは樹高に勘定されていないのだろう.つまり,ルートのみの木は樹高ゼロとみなしているものと思われる.core treeのオン・オフに関わりなくMax node count=1365になっているというのは,次数と樹高を指定したときの正則木のノード数を単純にカウントしてその範囲で計算を行っているものと思われるが,いまいち納得できない…

いずれにしても,この版では「完全木」という概念はまったく放棄されているように思われる.というか,「3倍数を除外する計算」を実装できなかったのではないだろうか?しかし,CollatzCompleteというプロジェクト名が使われていた時期もあるので,まったく試みたことがないというのではないはずだが… ⇒確かに,CollatzComplete 最終版 2022-04-03という版では,一般木,仮想木・完全木の3種が出力されるようになっている.ただし,この版では一般木と仮想木の出力が同じだ.つまり,仮想木出力は実際には実装されていなかったのではないか?⇒データを取り損なっていたかもしれない.仮想木の出力は一般木と同じではない.同じではないのはよいが,でき損なっているようだ.

image

このファイルを「隣接リストのインポート」で開くとエラーが出る.

image

一般木はまともに出力できている.

image

完全木の出力も問題ないようだ.

image

V3.0.0では仮想木の出力に失敗している.V3.0.3には完全木は実装されていないが,仮想木(中核木/長子木)の出力には成功している.この2つの版を組み合わせれば原理的には完全な「コラッツ三本桜」を実現できると考えられる.それをやるしかないのではないだろうか?よく読んでいないので本当のところはわからないが,Sultanは「完全木」の方から攻めているのではないだろうか?

我々の方法はベースに長子木があり,その上に一般木を展開していると考えられる.とは言っても,長子木を構築した上で一般木のノードを追加するという仕掛けにはなっていない.一般木を構築するための代数的基礎は一応確立しているが,長子木に関してはまだ不明のところが少し残っているのではなかったろうか?完全木の方が先に動作しているところから見ると,構成的には完全木の方が易しいのかもしれない.

だとすれば,Sultanがすでに問題を解いている可能性は十分ある.いずれにしても,まず当座の課題は「コラッツ三本桜」を実装することではないだろうか?それができていれば,Sultanの論文を読み進む上でもいろいろ役に立つのではないかと思う.もし,Sultanの論文の結論が正しいとすれば,少なくともそれを「追試」することにはなるだろう.

コメントを残す

メールアドレスが公開されることはありません。 が付いている欄は必須項目です

CAPTCHA