📚

【数学】コラッツ予想を解きたい!08

2022/09/10に公開

前回のまとめ

簡易的なツリーに対して、ループする巡回列をちょうど1つずつ持つということを見ました。

Thm:簡易ツリーのループ完全性と正規性

A \subset \mathbb{Q}

A = \{ \frac{m}{n} \ |\ m \in \mathbb{Z},\ n は奇数 \ \}

によって定義する。
任意の p \in A について、

p = \frac{m}{n} \qquad ( m,\ n は互いに素な整数で n>0)

と表した時、

m は偶数 \ \Leftrightarrow \ p \in E

によって、E \subset A を定める。(ただし p が整数のときは、n=1 とする)
また、A 上でツリー T=\mathrm{Tree}(t) を次のように定義する:

t(x) := \left\{ \begin{align*} x/2 \quad & (x \in E) \\ \frac{x+1}{2} \quad & (x \in A \setminus E) \end{align*} \right.

このとき、ツリー T はループする巡回列をちょうど1つずつ持ち、ループしない巡回列は持たない。

コラッツ予想のツリーについて

今回は、ゴールとなる次のようなツリーについて考えてみます。

t(x) := \left\{ \begin{align*} x/2 \quad & (x \in E) \\ \frac{3x+1}{2} \quad & (x \in \mathbb{Q} \setminus E) \end{align*} \right.

とりあえず、前回と同様な議論を行っていきます。

a がループしている要素だとすれば、

a=\frac{3^m a+k}{2^n}

と書ける。一方、

\begin{align*} a \in \mathbb{Q} \setminus E \ \Rightarrow & \quad k は奇数 \\ a \in E \ \Rightarrow & \quad k は偶数 \\ \end{align*}

となるから、これは整合性が取れている。
別途、0,\ 0,\ 0,\ ... という巡回列も持つから、すべての今ループしている巡回列を持つ。

次に、逆順を辿ることを考える。

\left\{ \begin{align*} t_e^{-1}(x) &= 2x \\ t_o^{-1}(x) &= \frac{2x-1}{3} \end{align*} \right.

だから、

a=\frac{偶数}{奇数} \Rightarrow \left\{ \begin{array}{ll} t_e^{-1}(a) = 偶 / 奇 \\ t_o^{-1}(a) = 奇 / 奇 \end{array} \right. \\
a=\frac{奇数}{奇数} \Rightarrow \left\{ \begin{array}{ll} t_e^{-1}(a) = 偶 / 奇 \\ t_o^{-1}(a) = 奇 / 奇 \end{array} \right.

となって、すべてのループする巡回列が存在することを示すことができる。
またこの議論は、全体集合 A

A = \{ \frac{m}{n} \ |\ m \in \mathbb{Z},\ n は奇数 \ \}

としても成立する。

次に考えたいことは、

・ループする巡回列をちょうど1つずつ持つか?
・ループしない巡回列は存在しないか?

というところでしょうか。
1つ目の話題はそこまで難しくないようです。

ループする巡回列に対する正規性

Thm:ループ巡回列に対する正規性

A \subset \mathbb{Q}

A = \{ \frac{m}{n} \ |\ m \in \mathbb{Z},\ n は奇数 \ \}

によって定義する。
任意の p \in A について、

p = \frac{m}{n} \qquad ( m,\ n は互いに素な整数で n>0)

と表した時、

m は偶数 \ \Leftrightarrow \ p \in E

によって、E \subset A を定める。(ただし p が整数のときは、n=1 とする)
また、A 上でツリー T=\mathrm{Tree}(t) を次のように定義する:

t(x) := \left\{ \begin{align*} x/2 \quad & (x \in E) \\ \frac{3x+1}{2} \quad & (x \in A \setminus E) \end{align*} \right.

このとき、ツリー T はループする巡回列をちょうど1つずつ持つ。

proof.)

ループする巡回列をすべて持つことは既に示したので、ちょうど1つずつだということを示す。
a,\ b \in A を同じ巡回列を持ち、その巡回列は今ループしている巡回列とする。ループ長さを L とし、a,\ b は次の式を満たすと仮定する:

a = t^L(a) \\ b \neq t^L(b)

このとき、矛盾が発生することを示せばよい。
1 ループに含まれる t_o の数を j とすれば、

\begin{align*} t^L(a) &= \frac{3^j \cdot a+s}{2^L} \\ t^L(b) &= \frac{3^j \cdot b+s}{2^L} \end{align*}

となる。(s は整数)
両辺の差を取れば

a-t^L(b)=\frac{3^j}{2^L} (a-b)

となり、これを拡張すれば、

a-t^{kL}(b)=\frac{3^{kj}}{2^{kL}} (a-b)

が成立する。
ここで、A 上の任意の要素は 整 / 奇 で表されるから、

\begin{align*} a-t^{kL}(b) & は、整 / 奇 の形 \\ a-b & は、整 / 奇 の形 \end{align*}

しかし、一方で右辺

\frac{3^{kj}}{2^{kL}} (a-b)

k が十分に大きいならば、 奇 / 偶 という形になってしまう。これは矛盾である。よって背理法より、今ループしている巡回列は一つずつしかない。これにより、ループする巡回列全体はちょうど1つずつとなる。

こんな感じで、ループしている巡回列に対して、それが1つずつであることは言うことができました。

ループしない巡回列は存在するか?

前回の議論の流れで言うと、ループしない巡回列は存在しないという答えが期待されます。

ただ、前回使ったような手法は、3倍があるせいで使えないのでどうするか、というところです。

無理数拡張

1つ、思いつくのは、ちょうど今の議論で使った方法みたいなことができないかというところです。とあるループしない巡回列を指定したときに、1つでもその巡回列となるような要素 a があれば、a と 有理数 b (同じ巡回列となるもの)の差を取れば、b が存在しないことを示せるのではないか、というものです。

そのために、無理数に拡張できるかが焦点になります。

有理数的展開

他に考えられるのは、なんとなくイメージ的に、ループしない巡回列があったらおかしくない? っていう感覚を言葉にするという方法です。

\begin{array}{ll} b & \overset{t}{\to} & t(b) & \overset{t}{\to} & t^2(b) & \overset{t}{\to} & ... \\ \downarrow & & \downarrow & & \downarrow & & \\ 0,\ 1 & & 0,\ 1 & & 0,\ 1 & & \end{array}

b は有理数。t も有理数を用いた関数。0,\ 1 に変換する部分だって、有理数っぽいやり方。ならば、結果として出力される巡回列は有理数的、つまりループしていないとおかしいという感覚です。

ただし、何でもかんでもよいわけではなく、

\frac{1}{1^2}+\frac{1}{2^2}+\frac{1}{3^2}+...=\frac{\pi^2}{6}

とか、

(1+\frac{1}{n})^n \underset{n \to \infty}{\longrightarrow} e

とかあるので、有理数的な展開というのがどこまでなのか、という問題があります。

この感覚的な概念を形作るために、1つ具体例として次のようなものを考えてみましょう。

問:(3/2)^n はループするか

分割 E \subset \mathbb{R} を、

E = \sum_{i \in \mathbb{Z}}\ (2i-1,\ 2i \rbrack

とし、\mathbb{R} 上でツリー T=\mathrm{Tree}(t) を次のように定義する:

t(x) := \frac{3}{2} x

このとき、1 を起点とした巡回列

\chi_E(1),\ \chi_E(3/2),\ \chi_E(9/4),\ \chi_E(27/8),\ ...

はループするか?

これは意外と難問ですか。
いや、そもそも...

コンピューターの力を借りて計算してみます。すると...

0,\ 1,\ 0,\ 1,\ 1,\ 1,\ 1,\ 1,\ 1,\ 0,\ 1,\ 0,\ 1,\ 0,\ 1,\ 1,\ 0,\ 1,\ 1,\ 0,\ 1,\ 1,\ 1,\ 0,\ 0,\ 1,\ 0,\ 1,\ 0,\ 0,\ 1,\ 0,\ 1,\ 1,\ 1,\ 1,\ 0,\ 0,\ 1,\ 0,\ 0,\ 0,\ 1,\ 0,\ 0,\ 1,\ 1,\ 0,\ 1,\ 0,\ 0,\ ...

というような巡回列になります。
あまり規則性は感じられません。これはおそらくループしないでしょう。

ソースコード
python
two_n = 1
two_n2 = 2
three_n = 1
for n in range(1, 51):
    two_n = two_n2
    two_n2 *= 2
    three_n *= 3
    if(three_n%two_n2 < two_n):
        print(0, end=' ')
    else:
        print(1, end=' ')

有理数的な展開という発想自体が間違っていたのでしょうか。
どちらかというと、ツリーを構成する関数 t と分割 E がうまく噛み合わなかったという感じのような気もします。

方針の決定

現状は、「ループする巡回列をちょうど1つずつ持ち、ループしない巡回列は持たない」ということを示したいところですが、後半の部分の証明ができないという状況です。
その方法として、上の2つが考えられますが、どちらも非常に難しそうです...
ただ、感覚的な話ですが、無理数拡張という話は避けては通れないような気もします。(こっちの方が議論展開としては自然ですし、「すべての巡回列をちょうど1つずつ持つ」という状態が一番綺麗だと思うので)

簡易ツリーについての無理数拡張

t(x) := \left\{ \begin{align*} x/2 \quad & (x \in E) \\ \frac{x+1}{2} \quad & (x \in A \setminus E) \end{align*} \right.

この簡易ツリーに立ち返って、無理数拡張を考えていきたいです。つまり A \subset \mathbb{R} としてみます。

ただいきなり無理数拡張しようと思っても、なかなか難しいようです。。。僕もいろいろ考えてみましたが、うまくいきませんでした。

ではどうするか。
さらに、何かしらの基本に立ち返っていくべきでしょう。

そもそも整数から有理数に拡張した方法論は、何だったのでしょう? 僕は、なんとなくでやってしまっていたので、そこを突き詰めてみます。

整数から有理数への拡張

x \in \mathbb{Z} に対し、

t(x) := \left\{ \begin{align*} x/2 \quad & (x : 偶数) \\ \frac{x+1}{2} \quad & (x : 奇数) \end{align*} \right.

というものが一番の基礎だったわけです。

p=\frac{n}{奇数}

の偶奇を、整数 n の偶奇とする

という方法で、有理数に拡張したわけですが、この議論は細かくするとどうなるでしょうか。

奇数 m に対して、

t_m(x) := \left\{ \begin{align*} x/2 \quad & (x : 偶数) \\ \frac{x+m}{2} \quad & (x : 奇数) \end{align*} \right.

とするツリーがあったとして、これを

x \mapsto \frac{x}{m}

に対応させることで有理数に拡張した、とみるべきでしょう。

もっと細かく考えて、
可算個のツリー ..., \mathrm{Tree}(t_{-3}), \mathrm{Tree}(t_{-1}), \mathrm{Tree}(t_1), \mathrm{Tree}(t_3), ...E 構造を比較します。つまり、すべてのノードを偶数か奇数かによって二元化してみます。
このとき、すべてのツリーは \mathrm{Tree}(t_{1}) を含む。特に t_m に対し m の倍数が \mathrm{Tree}(t_{1}) に対応する。また、 \mathrm{Tree}(t_{-m})\mathrm{Tree}(t_m)E 構造は一致するから、

x \mapsto \frac{x}{m}

とすると良い感じになりそうって感じがします。
ただ、わざわざこうやって一つの数値というか、同じ世界に合流させる必要はあるのでしょうか。あったとしても、最後にやればいいんじゃないかという気もします。

そもそも割る必要あるのか

割り算をして有理数に拡張するという操作は必要なのでしょうか? これを見るために、\{ \mathrm{Tree}(t_m) \}_mがすべてのループする巡回列を持つかどうかの証明を割り算という発想をなしに、やってみたいと思います。

例えば、

欲しいループする巡回列:

は、t_m 上において、x=o_1 とすると、

x = \frac{x+(2^1+1)m}{2^3}=\frac{x+3m}{8}

だから、

x = \frac{3m}{7}

つまり、m7 の倍数のとき、\mathrm{Tree}(t_m)o-o-e 型のループを持つということが言えます。
この議論は一般に拡張できるので、すべての今ループしている巡回列を持つことは言えそうです。

となると、わざわざ有理数という発想を持ち出したという前提自体が、実はあんまり自然ではなかったという可能性が出てきました。

分割 E が持つべき性質

さらに、基本に立ち返ると、まだ考えてなかったことがありました。

偶奇性の拡張ということで、

奇数 + 奇数 = 偶数 \\ 奇数 + 偶数 = 奇数

このような性質が成り立つべきです。
EO = A \setminus E を用いて書くと、任意の e \in E, o_1, o_2 \in O に対して、

o_1 + o_2 \in E \\ o_1 + e \in O

が成り立つ。(またこの2式より、e_1 + e_2 \in E も成り立つ)
ここで、例えば、a \in O とすると、

\begin{align*} (\mathrm{i})& \qquad a/2 \in E \ \Rightarrow \ a = a/2 + a/2 \in E \\ (\mathrm{ii})& \qquad a/2 \in O \ \Rightarrow \ a = a/2 + a/2 \in E \end{align*}

となるので、a/2A の要素になりえない。
a \in E とすると、

\begin{align*} (\mathrm{i})& \qquad \frac{a+1}{2} \in E \ \Rightarrow \ a+1 = \frac{a+1}{2} + \frac{a+1}{2} \in E \\ (\mathrm{ii})& \qquad \frac{a+1}{2} \in O \ \Rightarrow \ a+1 = \frac{a+1}{2} + \frac{a+1}{2} \in E \end{align*}

となるので、\frac{a+1}{2}A の要素になりえない。
このような状況から、あまり割り算という発想は違うんじゃないかという気持ちは強まります。実際、有理数全域には拡張できなくて、整数 / 奇数 しかサポートされないのは少し変ですよね。

今回までの流れと次回以降について

とりあえず、今回はここら辺で。
次回以降どうやっていくのかは、まだ全然わかりませんが、今までの流れをまとめておきます。

ツリーについての議論をする

偶奇性も入れた方がいいんじゃね

巡回列って概念入れるべきだ

巡回列中心に考えてみよう

仮説 & 検証

すべての巡回列をちょうど1つずつ持つような拡張が欲しい!

こんな感じ。
そして、やっと、ようやく、という感じですが、超難解な部分に少し触れそうな感じになってきました。コラッツ予想を未解決問題にしている何かしらの超難解な部分があるはずですが、その部分に切り込んでいく角度が少し見えてきた、という感じがします。

てな感じで、今回は終わりです。ではでは。

Discussion