研究2025-01-08: 3/2倍配列
研究2025-01-08: 3/2倍配列
2025年あけましておめでとうございます
は、もうやりましたね。
少し遡り、年越し前、なんか研究か開発したいと思いながら「インタースパージョン」のことをふと思い出して研究を進めたら、新しい発見がありました。
インタースパージョンのワンライナー
以前の研究からの勘で、Graph (離散グラフ) を使って定義できそうだとは思っていたのですが、具体的な関数が見つからなかったので困っていました。
ChatGPTに聞いたら ConnectedComponents
という関数がドンピシャだったので悲願の成果としてワンライナーでインタースパージョンを構成できました。
Grid[PadRight[SortBy[ConnectedComponents[Graph[Table[{i, 2 i}, {i, 9999}]]], First], {8, 8}]]
これで
のような表(理想的には無限に続く表)が得られます。
これが「物智の倍音配列」と名付けた数表です。
厄介なところとしては 9999 のようにあらかじめ大きい上限値を入れないと表の右下部分が欠けてしまうのですが、現状そこは目視でカバーします( FixedPoint
とか NestWhile
とかを使えばうまくいきそう)。
そして
Grid[PadRight[SortBy[ConnectedComponents[Graph[Table[{n, Floor[GoldenRatio (n + 1)] - 1}, {n, 9999}]]], First], {8, 8}]]
こうすればワイソフ配列 (Wythoff array) が得られます。
3/2倍配列
今回、インタースパージョンが簡単に表現できるようになったので、なにか面白い例がないかと考えました。
そこで「意外と有理数は研究されてないんじゃないか」と思い、1以上2以下の最もシンプルな分数 に着目しました ( とか とかもよさそう) 。
Grid[PadRight[SortBy[ConnectedComponents[Graph[Table[{n, Ceiling[3 n /2]}, {n, 9999}]]], First], {8, 8}]]
Grid[PadRight[SortBy[ConnectedComponents[Graph[Table[{n, Floor[(3 n + 1)/2]}, {n, 9999}]]], First], {8, 8}]]
の四捨五入、が基本的な写像となりますが、 の切り上げまたは の切り捨てのどちらでも同じ結果になります。
結果は以下です。
1列目には 型の自然数が現れます。言い換えれば、自然数 に対して を行う写像では 型の自然数は現れないということを意味しています。
2列目は「閏年」に関する配列としてOEISに登録されていますが、3列目は見つかりませんでした。
これってなにかの役に立つの?
コラッツ予想
コラッツの問題は3n+1問題とも呼ばれる問題です。3n+1といえば、定義で同じような式が出ましたよね。コラッツの遷移では、3n+1をしたら次に必ずn/2をするので、結果的に奇数に対しては2回の遷移で となります。ということは、この数表において奇数が右に隣り合って連続する場所についてはコラッツの遷移をしていると言えます。
だからといって、それでなんなの、ということではあるのですが。うーむ。(要研究)
ピタゴラス音律
ピタゴラス音律は五度圏という概念と関わりがあり、現代の音律の基礎となります。
具体的な式で表すと、
と、「ドとソの関係で音を上げていったら、12回で7オクターブ上がる」という計算になります。
ということは、
となってくれているとすごいことになりそうなのですが、実際は
となり(1行目の続き)、 は に比べると飛びすぎ、と、うまい近似にはなりませんでした。うーむ。(要研究)
まあ、いきなり研究が片付くわけもないので、とりあえずわかりやすい定義ができてそれが割とシンプルだったことを喜びます。
なお、この話は本日の「数学デー」で遊んでくださった「3/2進数」に繋がります。3/2進数についてもなにか面白い結果が得られたら記事を書きたいです。
今年最初の #オンライン数学デー は、3/2進数を作ってみました。1と0のみを使って自然数を1から順に表そうとしたところ、十進法の2は3/2進法で0.111…に、3は1.111…になりました。そして4を表そうとして、迷宮入りしました。これを厳密に表すには、どうしたらよいでしょう? #数学デー pic.twitter.com/51qgAHEGqg
— 「数学デー」公式 (@sugaku_day) January 8, 2025